require_once('include/Contact.php');
require_once('include/socgraph.php');
+require_once('include/contact_selectors.php');
function contacts_init(&$a) {
if(! local_user())
if($contact_id) {
$a->data['contact'] = $r[0];
- $o .= '<div class="vcard">';
- $o .= '<div class="fn">' . $a->data['contact']['name'] . '</div>';
- $o .= '<div id="profile-photo-wrapper"><img class="photo" style="width: 175px; height: 175px;" src="' . $a->data['contact']['photo'] . '" alt="' . $a->data['contact']['name'] . '" /></div>';
- $o .= '</div>';
- $a->page['aside'] .= $o;
-
+ $vcard_widget = replace_macros(get_markup_template("vcard-widget.tpl"),array(
+ '$name' => $a->data['contact']['name'],
+ '$photo' => $a->data['contact']['photo']
+ ));
+ $follow_widget = '';
}
- else
- $a->page['aside'] .= follow_widget();
-
- $a->page['aside'] .= group_side('contacts','group',false,0,$contact_id);
+ else {
+ $vcard_widget = '';
+ $follow_widget = follow_widget();
+ }
- $a->page['aside'] .= findpeople_widget();
+ $groups_widget .= group_side('contacts','group',false,0,$contact_id);
+ $findpeople_widget .= findpeople_widget();
+ $networks_widget .= networks_widget('contacts',$_GET['nets']);
+ $a->page['aside'] .= replace_macros(get_markup_template("contacts-widget-sidebar.tpl"),array(
+ '$vcard_widget' => $vcard_widget,
+ '$follow_widget' => $follow_widget,
+ '$groups_widget' => $groups_widget,
+ '$findpeople_widget' => $findpeople_widget,
+ '$networks_widget' => $networks_widget
+ ));
- $a->page['aside'] .= networks_widget('contacts',$_GET['nets']);
$base = $a->get_baseurl();
+ $tpl = get_markup_template("contacts-head.tpl");
+ $a->page['htmlhead'] .= replace_macros($tpl,array(
+ '$baseurl' => $a->get_baseurl(true),
+ '$base' => $base
+ ));
- $a->page['htmlhead'] .= '<script src="' . $a->get_baseurl(true) . '/library/jquery_ac/friendica.complete.js" ></script>';
- $a->page['htmlhead'] .= <<< EOT
-
-<script>$(document).ready(function() {
- var a;
- a = $("#contacts-search").autocomplete({
- serviceUrl: '$base/acl',
- minChars: 2,
- width: 350,
- });
- a.setOptions({ params: { type: 'a' }});
-
-});
-
-</script>
-EOT;
+ $tpl = get_markup_template("contacts-end.tpl");
+ $a->page['end'] .= replace_macros($tpl,array(
+ '$baseurl' => $a->get_baseurl(true),
+ '$base' => $base
+ ));
}
intval($contact_id),
intval(local_user())
);
+ if ($archived) {
+ q("UPDATE `item` SET `private` = 2 WHERE `contact-id` = %d AND `uid` = %d", intval($contact_id), intval(local_user()));
+ }
if($r) {
//notice( t('Contact has been ') . (($archived) ? t('archived') : t('unarchived')) . EOL );
info( (($archived) ? t('Contact has been archived') : t('Contact has been unarchived')) . EOL );
'$baseurl' => $a->get_baseurl(true),
'$editselect' => $editselect,
));
+ $a->page['end'] .= replace_macros(get_markup_template('contact_end.tpl'), array(
+ '$baseurl' => $a->get_baseurl(true),
+ '$editselect' => $editselect,
+ ));
require_once('include/contact_selectors.php');
$tab_tpl = get_markup_template('common_tabs.tpl');
$tab_str = replace_macros($tab_tpl, array('$tabs' => $tabs));
+ $lost_contact = (($contact['archive'] && $contact['term-date'] != '0000-00-00 00:00:00' && $contact['term-date'] < datetime_convert('','','now')) ? t('Communications lost with this contact!') : '');
- $o .= replace_macros($tpl,array(
+ $o .= replace_macros($tpl, array(
'$header' => t('Contact Editor'),
'$tab_str' => $tab_str,
'$submit' => t('Submit'),
'$poll_interval' => contact_poll_interval($contact['priority'],(! $poll_enabled)),
'$poll_enabled' => $poll_enabled,
'$lastupdtext' => t('Last update:'),
+ '$lost_contact' => $lost_contact,
'$updpub' => t('Update public posts'),
'$last_update' => $last_update,
'$udnow' => t('Update now'),
'$dir_icon' => $dir_icon,
'$alt_text' => $alt_text,
'$sparkle' => $sparkle,
- '$url' => $url
+ '$url' => $url,
));
-
+ $searching = false;
if($search) {
$search_hdr = $search;
- $search = dbesc($search.'*');
+ $search_txt = dbesc(protect_sprintf(preg_quote($search)));
+ $searching = true;
}
- $sql_extra .= ((strlen($search)) ? " AND MATCH `name` AGAINST ('$search' IN BOOLEAN MODE) " : "");
+ $sql_extra .= (($searching) ? " AND `name` REGEXP '$search_txt' " : "");
if($nets)
$sql_extra .= sprintf(" AND network = '%s' ", dbesc($nets));
}
-
$r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `self` = 0 AND `pending` = 0 $sql_extra $sql_extra2 ORDER BY `name` ASC LIMIT %d , %d ",
intval($_SESSION['uid']),
intval($a->pager['start']),
}
$tpl = get_markup_template("contacts-template.tpl");
- $o .= replace_macros($tpl,array(
+ $o .= replace_macros($tpl, array(
'$header' => t('Contacts') . (($nets) ? ' - ' . network_to_name($nets) : ''),
'$tabs' => $t,
'$total' => $total,
'$search' => $search_hdr,
'$desc' => t('Search your contacts'),
- '$finding' => (strlen($search) ? t('Finding: ') . "'" . $search . "'" : ""),
+ '$finding' => (($searching) ? t('Finding: ') . "'" . $search . "'" : ""),
'$submit' => t('Find'),
'$cmd' => $a->cmd,
'$contacts' => $contacts,