X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fcontacts.php;h=7baeb3e14e3ca7dbf1daa6141dd219d3843edda6;hb=99a903ed66f8f977eddf0b488c96829a29ae3f8c;hp=38b49475ac890ce7dbe297cfd7f7cc42984a908e;hpb=a42c9616f97125b059f395b9b023fe1516a52d75;p=friendica.git diff --git a/mod/contacts.php b/mod/contacts.php index 38b49475ac..7baeb3e14e 100644 --- a/mod/contacts.php +++ b/mod/contacts.php @@ -1,6 +1,11 @@ page['aside'] .= group_side(); + + if($a->config['register_policy'] != REGISTER_CLOSED) + $a->page['aside'] .= ''; } function contacts_post(&$a) { @@ -12,8 +17,7 @@ function contacts_post(&$a) { $contact_id = intval($a->argv[1]); if(! $contact_id) return; -dbg(2); -print_r($_POST); + $orig_record = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($contact_id), intval($_SESSION['uid']) @@ -32,51 +36,46 @@ print_r($_POST); intval($_SESSION['uid']) ); if(! count($r)) { - notice("Cannot locate selected profile." . EOL); + notice( t('Could not locate selected profile.') . EOL); return; } } + $priority = intval($_POST['priority']); + if($priority > 5 || $priority < 0) + $priority = 0; + $rating = intval($_POST['reputation']); if($rating > 5 || $rating < 0) $rating = 0; $reason = notags(trim($_POST['reason'])); - $r = q("UPDATE `contact` SET `profile-id` = %d, `rating` = %d, `reason` = '%s' + $r = q("UPDATE `contact` SET `profile-id` = %d, `priority` = %d , `rating` = %d, `reason` = '%s' WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($profile_id), + intval($priority), intval($rating), dbesc($reason), intval($contact_id), intval($_SESSION['uid']) ); if($r) - notice("Contact updated." . EOL); + notice( t('Contact updated.') . EOL); else - notice("Failed to update contact record." . EOL); + notice( t('Failed to update contact record.') . EOL); return; } - - - - - - - - function contacts_content(&$a) { if(! local_user()) { - $_SESSION['sysmsg'] .= "Permission denied." . EOL; + notice( t('Permission denied.') . EOL); return; } - - if($a->argc == 3) { $contact_id = intval($a->argv[1]); @@ -91,18 +90,12 @@ function contacts_content(&$a) { ); if(! count($orig_record)) { - notice("Could not access contact record." . EOL); + notice( t('Could not access contact record.') . EOL); goaway($a->get_baseurl() . '/contacts'); return; // NOTREACHED } - $photo = str_replace('-4.jpg', '' , $r[0]['photo']); - $photos = q("SELECT `id` FROM `photo` WHERE `resource-id` = '%s' AND `uid` = %d", - dbesc($photo), - intval($_SESSION['uid']) - ); - if($cmd == 'block') { $blocked = (($orig_record[0]['blocked']) ? 0 : 1); $r = q("UPDATE `contact` SET `blocked` = %d WHERE `id` = %d AND `uid` = %d LIMIT 1", @@ -111,7 +104,22 @@ function contacts_content(&$a) { intval($_SESSION['uid']) ); 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); } goaway($a->get_baseurl() ."/contacts/$contact_id"); @@ -121,19 +129,20 @@ function contacts_content(&$a) { if($cmd == 'drop') { $r = q("DELETE FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($contact_id), - intval($_SESSION['uid'])); - if(count($photos)) { - foreach($photos as $p) { - q("DELETE FROM `photos` WHERE `id` = %d LIMIT 1", - $p['id']); - } - } - if($intval($contact_id)) - q("DELETE FROM `item` WHERE `contact-id` = %d LIMIT 1", - intval($contact_id) - ); + intval($_SESSION['uid']) + ); + + q("DELETE FROM `item` WHERE `contact-id` = %d AND `uid` = %d ", + intval($contact_id), + intval($_SESSION['uid']) + ); + q("DELETE FROM `photo` WHERE `contact-id` = %d AND `uid` = %d ", + + intval($contact_id), + intval($_SESSION['uid']) + ); - notice("Contact has been removed." . EOL ); + notice( t('Contact has been removed.') . EOL ); goaway($a->get_baseurl() . '/contacts'); return; // NOTREACHED } @@ -147,7 +156,7 @@ function contacts_content(&$a) { intval($contact_id) ); if(! count($r)) { - notice("Contact not found."); + notice( t('Contact not found.') . EOL); return; } @@ -160,32 +169,39 @@ function contacts_content(&$a) { if(strlen($r[0]['dfrn-id'])) { $direction = DIRECTION_BOTH; $dir_icon = 'images/lrarrow.gif'; - $alt_text = 'Mutual Friendship'; + $alt_text = t('Mutual Friendship'); } else { $direction = DIRECTION_IN; $dir_icon = 'images/larrow.gif'; - $alt_text = 'is a fan of yours'; + $alt_text = t('is a fan of yours'); } } else { $direction = DIRECTION_OUT; $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( + '$poll_interval' => contact_poll_interval($r[0]['priority']), + '$last_update' => (($r[0]['last-update'] == '0000-00-00 00:00:00') + ? t('Never') + : datetime_convert('UTC',date_default_timezone_get(),$r[0]['last-update'],'D, j M Y, g:i A')), '$profile_select' => contact_profile_assign($r[0]['profile-id']), '$contact_id' => $r[0]['id'], - '$block_text' => (($r[0]['blocked']) ? 'Unblock this contact' : 'Block this contact' ), - '$blocked' => (($r[0]['blocked']) ? '
Currently blocked
' : ''), + '$block_text' => (($r[0]['blocked']) ? t('Unblock this contact') : t('Block this contact') ), + '$ignore_text' => (($r[0]['readonly']) ? t('Unignore this contact') : t('Ignore this contact') ), + '$blocked' => (($r[0]['blocked']) ? '
' . t('Currently blocked') . '
' : ''), + '$ignored' => (($r[0]['readonly']) ? '
' . t('Currently ignored') . '
' : ''), '$rating' => contact_reputation($r[0]['rating']), '$reason' => $r[0]['reason'], '$groups' => '', // group_selector(), '$photo' => $r[0]['photo'], '$name' => $r[0]['name'], '$dir_icon' => $dir_icon, - '$alt_text' => $alt_text + '$alt_text' => $alt_text, + '$url' => (($direction != DIRECTION_OUT) ? "redir/{$r[0]['id']}" : $r[0]['url'] ) )); @@ -193,35 +209,58 @@ function contacts_content(&$a) { } + if(($a->argc == 2) && ($a->argv[1] == 'all')) $sql_extra = ''; else $sql_extra = " AND `blocked` = 0 "; + $search = ((x($_GET,'search')) ? notags(trim($_GET['search'])) : ''); + $tpl = file_get_contents("view/contacts-top.tpl"); $o .= replace_macros($tpl,array( '$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')), + '$search' => $search, + '$finding' => (strlen($search) ? '

' . t('Finding: ') . "'" . $search . "'" . '

' : ""), + '$submit' => t('Find'), + '$cmd' => $a->cmd + + )); + if($search) + $search = dbesc($search.'*'); + $sql_extra .= ((strlen($search)) ? " AND MATCH `name` AGAINST ('$search' IN BOOLEAN MODE) " : ""); + + switch($sort_type) { case DIRECTION_BOTH : - $sql_extra = " AND `dfrn-id` != '' AND `issued-id` != '' "; + $sql_extra2 = " AND `dfrn-id` != '' AND `issued-id` != '' "; break; case DIRECTION_IN : - $sql_extra = " AND `dfrn-id` = '' AND `issued-id` != '' "; + $sql_extra2 = " AND `dfrn-id` = '' AND `issued-id` != '' "; break; case DIRECTION_OUT : - $sql_extra = " AND `dfrn-id` != '' AND `issued-id` = '' "; + $sql_extra2 = " AND `dfrn-id` != '' AND `issued-id` = '' "; break; - case DIRECTION_ANY : + case DIRECTION_NONE : default: - $sql_extra = ''; + $sql_extra2 = ''; break; } - $r = q("SELECT * FROM `contact` WHERE `uid` = %d $sql_extra", + $r = q("SELECT COUNT(*) AS `total` FROM `contact` + WHERE `uid` = %d AND `pending` = 0 $sql_extra $sql_extra2 ", intval($_SESSION['uid'])); + if(count($r)) + $a->set_pager_total($r[0]['total']); + + $r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `pending` = 0 $sql_extra $sql_extra2 ORDER BY `name` ASC LIMIT %d , %d ", + intval($_SESSION['uid']), + intval($a->pager['start']), + intval($a->pager['itemspage']) + ); if(count($r)) { @@ -235,29 +274,34 @@ function contacts_content(&$a) { if(strlen($rr['dfrn-id'])) { $direction = DIRECTION_BOTH; $dir_icon = 'images/lrarrow.gif'; - $alt_text = 'Mutual Friendship'; + $alt_text = t('Mutual Friendship'); } else { $direction = DIRECTION_IN; $dir_icon = 'images/larrow.gif'; - $alt_text = 'is a fan of yours'; + $alt_text = t('is a fan of yours'); } } else { $direction = DIRECTION_OUT; $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( + '$img_hover' => t('Visit ') . $rr['name'] . t('\'s profile'), + '$edit_hover' => t('Edit contact'), '$id' => $rr['id'], '$alt_text' => $alt_text, '$dir_icon' => $dir_icon, '$thumb' => $rr['thumb'], '$name' => $rr['name'], - '$url' => (($direction != DIRECTION_IN) ? "redir/{$rr['id']}" : $rr['url'] ) + '$url' => (($direction != DIRECTION_OUT) ? "redir/{$rr['id']}" : $rr['url'] ) )); } + $o .= '
'; + } + $o .= paginate($a); return $o; } \ No newline at end of file