mirror of
https://github.com/friendica/friendica
synced 2024-12-23 00:40:15 +00:00
working on readonly contact attribute
This commit is contained in:
parent
2e5fb9c37e
commit
fa154248dc
8 changed files with 58 additions and 25 deletions
|
@ -62,6 +62,7 @@ CREATE TABLE IF NOT EXISTS `contact` (
|
||||||
`last-update` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
`last-update` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||||
`priority` tinyint(3) NOT NULL,
|
`priority` tinyint(3) NOT NULL,
|
||||||
`blocked` tinyint(1) NOT NULL DEFAULT '1',
|
`blocked` tinyint(1) NOT NULL DEFAULT '1',
|
||||||
|
`readonly` tinyint(1) NOT NULL DEFAULT '0',
|
||||||
`pending` tinyint(1) NOT NULL DEFAULT '1',
|
`pending` tinyint(1) NOT NULL DEFAULT '1',
|
||||||
`rating` tinyint(1) NOT NULL DEFAULT '0' COMMENT '0-5 reputation, 0 unknown, 1 call police, 5 inscrutable',
|
`rating` tinyint(1) NOT NULL DEFAULT '0' COMMENT '0-5 reputation, 0 unknown, 1 call police, 5 inscrutable',
|
||||||
`reason` text NOT NULL COMMENT 'why a rating was given - will help friends decide to make friends or not',
|
`reason` text NOT NULL COMMENT 'why a rating was given - will help friends decide to make friends or not',
|
||||||
|
|
BIN
images/no.gif
Normal file
BIN
images/no.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 631 B |
|
@ -15,7 +15,7 @@ require_once("datetime.php");
|
||||||
|
|
||||||
if($argc < 3)
|
if($argc < 3)
|
||||||
exit;
|
exit;
|
||||||
//dbg(3);
|
dbg(3);
|
||||||
$baseurl = $argv[1];
|
$baseurl = $argv[1];
|
||||||
$a->set_baseurl($argv[1]);
|
$a->set_baseurl($argv[1]);
|
||||||
|
|
||||||
|
@ -215,12 +215,14 @@ if($argc < 3)
|
||||||
// delivery loop
|
// delivery loop
|
||||||
|
|
||||||
foreach($r as $rr) {
|
foreach($r as $rr) {
|
||||||
|
|
||||||
if($rr['self'])
|
if($rr['self'])
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if(! strlen($rr['dfrn-id']))
|
if(! strlen($rr['dfrn-id']))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$url = $rr['notify'] . '?dfrn_id=' . $rr['dfrn-id'];
|
$url = $rr['notify'] . '?dfrn_id=' . $rr['dfrn-id'];
|
||||||
|
|
||||||
$xml = fetch_url($url);
|
$xml = fetch_url($url);
|
||||||
|
@ -240,7 +242,7 @@ echo $xml;
|
||||||
|
|
||||||
openssl_public_decrypt($challenge,$postvars['challenge'],$rr['pubkey']);
|
openssl_public_decrypt($challenge,$postvars['challenge'],$rr['pubkey']);
|
||||||
|
|
||||||
if(strlen($rr['dfrn-id']) && (! $rr['blocked']))
|
if(strlen($rr['dfrn-id']) && (! ($rr['blocked']) || ($rr['readonly'])))
|
||||||
$postvars['data'] = $atom;
|
$postvars['data'] = $atom;
|
||||||
else
|
else
|
||||||
$postvars['data'] = $atom_nowrite;
|
$postvars['data'] = $atom_nowrite;
|
||||||
|
|
|
@ -95,7 +95,7 @@ echo "Length:" . strlen($xml) . "\r\n";
|
||||||
if(count($r)) {
|
if(count($r)) {
|
||||||
if($r[0]['uri'] == $r[0]['parent-uri']) {
|
if($r[0]['uri'] == $r[0]['parent-uri']) {
|
||||||
$r = q("UPDATE `item` SET `deleted` = 1, `edited` = '%s'
|
$r = q("UPDATE `item` SET `deleted` = 1, `edited` = '%s'
|
||||||
WHERE `parent-uri` = '%s'"
|
WHERE `parent-uri` = '%s'",
|
||||||
dbesc($when),
|
dbesc($when),
|
||||||
dbesc($r[0]['uri'])
|
dbesc($r[0]['uri'])
|
||||||
);
|
);
|
||||||
|
|
|
@ -36,7 +36,7 @@ function contacts_post(&$a) {
|
||||||
intval($_SESSION['uid'])
|
intval($_SESSION['uid'])
|
||||||
);
|
);
|
||||||
if(! count($r)) {
|
if(! count($r)) {
|
||||||
notice("Cannot locate selected profile." . EOL);
|
notice( t('Could not locate selected profile.') . EOL);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -55,9 +55,9 @@ function contacts_post(&$a) {
|
||||||
intval($_SESSION['uid'])
|
intval($_SESSION['uid'])
|
||||||
);
|
);
|
||||||
if($r)
|
if($r)
|
||||||
notice("Contact updated." . EOL);
|
notice( t('Contact updated.') . EOL);
|
||||||
else
|
else
|
||||||
notice("Failed to update contact record." . EOL);
|
notice( t('Failed to update contact record.') . EOL);
|
||||||
return;
|
return;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -67,7 +67,7 @@ function contacts_post(&$a) {
|
||||||
function contacts_content(&$a) {
|
function contacts_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
$_SESSION['sysmsg'] .= "Permission denied." . EOL;
|
notice( t('Permission denied.') . EOL);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -85,7 +85,7 @@ function contacts_content(&$a) {
|
||||||
);
|
);
|
||||||
|
|
||||||
if(! count($orig_record)) {
|
if(! count($orig_record)) {
|
||||||
notice("Could not access contact record." . EOL);
|
notice( t('Could not access contact record.') . EOL);
|
||||||
goaway($a->get_baseurl() . '/contacts');
|
goaway($a->get_baseurl() . '/contacts');
|
||||||
return; // NOTREACHED
|
return; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
@ -105,7 +105,22 @@ function contacts_content(&$a) {
|
||||||
intval($_SESSION['uid'])
|
intval($_SESSION['uid'])
|
||||||
);
|
);
|
||||||
if($r) {
|
if($r) {
|
||||||
$msg = "Contact has been " . (($blocked) ? '' : 'un') . "blocked." . EOL ;
|
$msg = t('Contact has been ') . (($blocked) ? t('blocked') : t('unblocked')) . EOL ;
|
||||||
|
notice($msg);
|
||||||
|
}
|
||||||
|
goaway($a->get_baseurl() ."/contacts/$contact_id");
|
||||||
|
return; // NOTREACHED
|
||||||
|
}
|
||||||
|
|
||||||
|
if($cmd == 'ignore') {
|
||||||
|
$readonly = (($orig_record[0]['readonly']) ? 0 : 1);
|
||||||
|
$r = q("UPDATE `contact` SET `readonly` = %d WHERE `id` = %d AND `uid` = %d LIMIT 1",
|
||||||
|
intval($readonly),
|
||||||
|
intval($contact_id),
|
||||||
|
intval($_SESSION['uid'])
|
||||||
|
);
|
||||||
|
if($r) {
|
||||||
|
$msg = t('Contact has been ') . (($readonly) ? t('ignored') : t('unignored')) . EOL ;
|
||||||
notice($msg);
|
notice($msg);
|
||||||
}
|
}
|
||||||
goaway($a->get_baseurl() ."/contacts/$contact_id");
|
goaway($a->get_baseurl() ."/contacts/$contact_id");
|
||||||
|
@ -143,7 +158,7 @@ function contacts_content(&$a) {
|
||||||
intval($contact_id)
|
intval($contact_id)
|
||||||
);
|
);
|
||||||
if(! count($r)) {
|
if(! count($r)) {
|
||||||
notice("Contact not found.");
|
notice( t('Contact not found.') . EOL);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -156,25 +171,26 @@ function contacts_content(&$a) {
|
||||||
if(strlen($r[0]['dfrn-id'])) {
|
if(strlen($r[0]['dfrn-id'])) {
|
||||||
$direction = DIRECTION_BOTH;
|
$direction = DIRECTION_BOTH;
|
||||||
$dir_icon = 'images/lrarrow.gif';
|
$dir_icon = 'images/lrarrow.gif';
|
||||||
$alt_text = 'Mutual Friendship';
|
$alt_text = t('Mutual Friendship');
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$direction = DIRECTION_IN;
|
$direction = DIRECTION_IN;
|
||||||
$dir_icon = 'images/larrow.gif';
|
$dir_icon = 'images/larrow.gif';
|
||||||
$alt_text = 'is a fan of yours';
|
$alt_text = t('is a fan of yours');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$direction = DIRECTION_OUT;
|
$direction = DIRECTION_OUT;
|
||||||
$dir_icon = 'images/rarrow.gif';
|
$dir_icon = 'images/rarrow.gif';
|
||||||
$alt_text = 'you are a fan of';
|
$alt_text = t('you are a fan of');
|
||||||
}
|
}
|
||||||
|
|
||||||
$o .= replace_macros($tpl,array(
|
$o .= replace_macros($tpl,array(
|
||||||
'$profile_select' => contact_profile_assign($r[0]['profile-id']),
|
'$profile_select' => contact_profile_assign($r[0]['profile-id']),
|
||||||
'$contact_id' => $r[0]['id'],
|
'$contact_id' => $r[0]['id'],
|
||||||
'$block_text' => (($r[0]['blocked']) ? 'Unblock this contact' : 'Block this contact' ),
|
'$block_text' => (($r[0]['blocked']) ? t('Unblock this contact') : t('Block this contact') ),
|
||||||
'$blocked' => (($r[0]['blocked']) ? '<div id="block-message">Currently blocked</div>' : ''),
|
'$ignore_text' => (($r[0]['readonly']) ? t('Unignore this contact') : t('Ignore this contact') ),
|
||||||
|
'$blocked' => (($r[0]['blocked']) ? '<div id="block-message">' . t('Currently blocked') . '</div>' : ''),
|
||||||
'$rating' => contact_reputation($r[0]['rating']),
|
'$rating' => contact_reputation($r[0]['rating']),
|
||||||
'$reason' => $r[0]['reason'],
|
'$reason' => $r[0]['reason'],
|
||||||
'$groups' => '', // group_selector(),
|
'$groups' => '', // group_selector(),
|
||||||
|
@ -198,7 +214,7 @@ function contacts_content(&$a) {
|
||||||
$tpl = file_get_contents("view/contacts-top.tpl");
|
$tpl = file_get_contents("view/contacts-top.tpl");
|
||||||
$o .= replace_macros($tpl,array(
|
$o .= replace_macros($tpl,array(
|
||||||
'$hide_url' => ((strlen($sql_extra)) ? 'contacts/all' : 'contacts' ),
|
'$hide_url' => ((strlen($sql_extra)) ? 'contacts/all' : 'contacts' ),
|
||||||
'$hide_text' => ((strlen($sql_extra)) ? 'Show Blocked Connections' : 'Hide Blocked Connections')
|
'$hide_text' => ((strlen($sql_extra)) ? t('Show Blocked Connections') : t('Hide Blocked Connections'))
|
||||||
));
|
));
|
||||||
|
|
||||||
switch($sort_type) {
|
switch($sort_type) {
|
||||||
|
@ -232,18 +248,18 @@ function contacts_content(&$a) {
|
||||||
if(strlen($rr['dfrn-id'])) {
|
if(strlen($rr['dfrn-id'])) {
|
||||||
$direction = DIRECTION_BOTH;
|
$direction = DIRECTION_BOTH;
|
||||||
$dir_icon = 'images/lrarrow.gif';
|
$dir_icon = 'images/lrarrow.gif';
|
||||||
$alt_text = 'Mutual Friendship';
|
$alt_text = t('Mutual Friendship');
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$direction = DIRECTION_IN;
|
$direction = DIRECTION_IN;
|
||||||
$dir_icon = 'images/larrow.gif';
|
$dir_icon = 'images/larrow.gif';
|
||||||
$alt_text = 'is a fan of yours';
|
$alt_text = t('is a fan of yours');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$direction = DIRECTION_OUT;
|
$direction = DIRECTION_OUT;
|
||||||
$dir_icon = 'images/rarrow.gif';
|
$dir_icon = 'images/rarrow.gif';
|
||||||
$alt_text = 'you are a fan of';
|
$alt_text = t('you are a fan of');
|
||||||
}
|
}
|
||||||
|
|
||||||
$o .= replace_macros($tpl, array(
|
$o .= replace_macros($tpl, array(
|
||||||
|
|
|
@ -5,7 +5,7 @@ require_once('include/items.php');
|
||||||
|
|
||||||
|
|
||||||
function dfrn_notify_post(&$a) {
|
function dfrn_notify_post(&$a) {
|
||||||
|
dbg(3);
|
||||||
$dfrn_id = notags(trim($_POST['dfrn_id']));
|
$dfrn_id = notags(trim($_POST['dfrn_id']));
|
||||||
$challenge = notags(trim($_POST['challenge']));
|
$challenge = notags(trim($_POST['challenge']));
|
||||||
$data = $_POST['data'];
|
$data = $_POST['data'];
|
||||||
|
@ -26,10 +26,19 @@ function dfrn_notify_post(&$a) {
|
||||||
$r = q("SELECT `id`, `uid` FROM `contact` WHERE `issued-id` = '%s' LIMIT 1",
|
$r = q("SELECT `id`, `uid` FROM `contact` WHERE `issued-id` = '%s' LIMIT 1",
|
||||||
dbesc($dfrn_id)
|
dbesc($dfrn_id)
|
||||||
);
|
);
|
||||||
if(! count($r))
|
if(! count($r)) {
|
||||||
xml_status(3);
|
xml_status(3);
|
||||||
|
return; //NOTREACHED
|
||||||
|
}
|
||||||
|
|
||||||
|
// We aren't really interested in anything this person has to say. But be polite and make them
|
||||||
|
// think we're listening intently by acknowledging receipt of their communications - which we quietly ignore.
|
||||||
|
|
||||||
|
if($r[0]['readonly']) {
|
||||||
|
xml_status(0);
|
||||||
|
return; //NOTREACHED
|
||||||
|
}
|
||||||
|
|
||||||
$importer = $r[0];
|
$importer = $r[0];
|
||||||
|
|
||||||
$feed = new SimplePie();
|
$feed = new SimplePie();
|
||||||
|
@ -60,7 +69,7 @@ function dfrn_notify_post(&$a) {
|
||||||
if(count($r)) {
|
if(count($r)) {
|
||||||
if($r[0]['uri'] == $r[0]['parent-uri']) {
|
if($r[0]['uri'] == $r[0]['parent-uri']) {
|
||||||
$r = q("UPDATE `item` SET `deleted` = 1, `edited` = '%s'
|
$r = q("UPDATE `item` SET `deleted` = 1, `edited` = '%s'
|
||||||
WHERE `parent-uri` = '%s'"
|
WHERE `parent-uri` = '%s'",
|
||||||
dbesc($when),
|
dbesc($when),
|
||||||
dbesc($r[0]['uri'])
|
dbesc($r[0]['uri'])
|
||||||
);
|
);
|
||||||
|
|
|
@ -96,8 +96,12 @@ function item_post(&$a) {
|
||||||
$post_type == notags(trim($_POST['type']));
|
$post_type == notags(trim($_POST['type']));
|
||||||
|
|
||||||
if($post_type == 'net-comment') {
|
if($post_type == 'net-comment') {
|
||||||
if($parent_item !== null && $parent_item['type'] != 'remote')
|
if($parent_item !== null) {
|
||||||
$post_type = 'wall-comment';
|
if($parent_item['type'] == 'remote')
|
||||||
|
$post_type = 'remote-comment';
|
||||||
|
else
|
||||||
|
$post_type = 'wall-comment';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$notify_type = (($parent) ? 'comment-new' : 'wall-new' );
|
$notify_type = (($parent) ? 'comment-new' : 'wall-new' );
|
||||||
|
|
|
@ -17,6 +17,7 @@
|
||||||
|
|
||||||
<div id="contact-edit-links" >
|
<div id="contact-edit-links" >
|
||||||
<a href="contacts/$contact_id/block" id="contact-edit-block-link" ><img src="images/b_block.gif" alt="Block/Unblock contact" title="$block_text"/></a>
|
<a href="contacts/$contact_id/block" id="contact-edit-block-link" ><img src="images/b_block.gif" alt="Block/Unblock contact" title="$block_text"/></a>
|
||||||
|
<a href="contacts/$contact_id/ignore" id="contact-edit-ignore-link" ><img src="images/no.gif" alt="Ignore contact" title="$ignore_text"/></a>
|
||||||
<a href="contacts/$contact_id/drop" id="contact-edit-drop-link" onclick="return confirmDelete();" ><img src="images/b_drophide.gif" alt="Delete contact" title="Delete contact" onmouseover="imgbright(this);" onmouseout="imgdull(this);" /></a>
|
<a href="contacts/$contact_id/drop" id="contact-edit-drop-link" onclick="return confirmDelete();" ><img src="images/b_drophide.gif" alt="Delete contact" title="Delete contact" onmouseover="imgbright(this);" onmouseout="imgdull(this);" /></a>
|
||||||
</div>
|
</div>
|
||||||
<div id="contact-edit-nav-end"></div>
|
<div id="contact-edit-nav-end"></div>
|
||||||
|
|
Loading…
Reference in a new issue