Merge pull request #1975 from rabuzarus/template_rework
Template rework for contact related pages
This commit is contained in:
commit
4079084492
30 changed files with 463 additions and 269 deletions
|
@ -27,6 +27,9 @@ function contacts_init(&$a) {
|
|||
require_once('include/group.php');
|
||||
require_once('include/contact_widgets.php');
|
||||
|
||||
if ($_GET['nets'] == "all")
|
||||
$_GET['nets'] = "";
|
||||
|
||||
if(! x($a->page,'aside'))
|
||||
$a->page['aside'] = '';
|
||||
|
||||
|
@ -35,29 +38,30 @@ function contacts_init(&$a) {
|
|||
$vcard_widget = replace_macros(get_markup_template("vcard-widget.tpl"),array(
|
||||
'$name' => htmlentities($a->data['contact']['name']),
|
||||
'$photo' => $a->data['contact']['photo'],
|
||||
'$url' => ($a->data['contact']['network'] == NETWORK_DFRN) ? $a->get_baseurl()."/redir/".$a->data['contact']['id'] : $a->data['contact']['url']
|
||||
'$url' => ($a->data['contact']['network'] == NETWORK_DFRN) ? $a->get_baseurl()."/redir/".$a->data['contact']['id'] : $a->data['contact']['url']
|
||||
));
|
||||
$finpeople_widget = '';
|
||||
$follow_widget = '';
|
||||
$networks_widget = '';
|
||||
}
|
||||
else {
|
||||
$vcard_widget = '';
|
||||
$networks_widget .= networks_widget('contacts',$_GET['nets']);
|
||||
if (isset($_GET['add']))
|
||||
$follow_widget = follow_widget($_GET['add']);
|
||||
else
|
||||
$follow_widget = follow_widget();
|
||||
|
||||
$findpeople_widget .= findpeople_widget();
|
||||
}
|
||||
|
||||
if ($_GET['nets'] == "all")
|
||||
$_GET['nets'] = "";
|
||||
|
||||
$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,
|
||||
'$findpeople_widget' => $findpeople_widget,
|
||||
'$follow_widget' => $follow_widget,
|
||||
'$groups_widget' => $groups_widget,
|
||||
'$findpeople_widget' => $findpeople_widget,
|
||||
'$networks_widget' => $networks_widget
|
||||
));
|
||||
|
||||
|
@ -810,6 +814,7 @@ function contacts_content(&$a) {
|
|||
'$cmd' => $a->cmd,
|
||||
'$contacts' => $contacts,
|
||||
'$contact_drop_confirm' => t('Do you really want to delete this contact?'),
|
||||
'multiselect' => 1,
|
||||
'$batch_actions' => array(
|
||||
'contacts_batch_update' => t('Update'),
|
||||
'contacts_batch_block' => t('Block')."/".t("Unblock"),
|
||||
|
|
|
@ -8,6 +8,8 @@ function directory_init(&$a) {
|
|||
|
||||
$a->page['aside'] .= findpeople_widget();
|
||||
|
||||
$a->page['aside'] .= follow_widget();
|
||||
|
||||
}
|
||||
else {
|
||||
unset($_SESSION['theme']);
|
||||
|
@ -31,7 +33,7 @@ function directory_content(&$a) {
|
|||
require_once("mod/proxy.php");
|
||||
|
||||
if((get_config('system','block_public')) && (! local_user()) && (! remote_user()) ||
|
||||
(get_config('system','block_local_dir')) && (! local_user()) && (! remote_user())) {
|
||||
(get_config('system','block_local_dir')) && (! local_user()) && (! remote_user())) {
|
||||
notice( t('Public access denied.') . EOL);
|
||||
return;
|
||||
}
|
||||
|
@ -44,27 +46,12 @@ function directory_content(&$a) {
|
|||
else
|
||||
$search = ((x($_GET,'search')) ? notags(trim(rawurldecode($_GET['search']))) : '');
|
||||
|
||||
$tpl = get_markup_template('directory_header.tpl');
|
||||
|
||||
$globaldir = '';
|
||||
$gdirpath = get_config('system','directory');
|
||||
if(strlen($gdirpath)) {
|
||||
$globaldir = '<ul><li><div id="global-directory-link"><a href="'
|
||||
. zrl($gdirpath,true) . '">' . t('Global Directory') . '</a></div></li></ul>';
|
||||
$gdirpath = '';
|
||||
$dirurl = get_config('system','directory');
|
||||
if(strlen($dirurl)) {
|
||||
$gdirpath = zrl($dirurl,true);
|
||||
}
|
||||
|
||||
$admin = '';
|
||||
|
||||
$o .= replace_macros($tpl, array(
|
||||
'$search' => $search,
|
||||
'$globaldir' => $globaldir,
|
||||
'$desc' => t('Find on this site'),
|
||||
'$admin' => $admin,
|
||||
'$finding' => (strlen($search) ? '<h4>' . t('Finding: ') . "'" . $search . "'" . '</h4>' : ""),
|
||||
'$sitedir' => t('Site Directory'),
|
||||
'$submit' => t('Find')
|
||||
));
|
||||
|
||||
if($search) {
|
||||
$search = dbesc($search);
|
||||
|
||||
|
@ -159,8 +146,6 @@ function directory_content(&$a) {
|
|||
|
||||
$about = ((x($profile,'about') == 1) ? t('About:') : False);
|
||||
|
||||
$tpl = get_markup_template('directory_item.tpl');
|
||||
|
||||
if($a->theme['template_engine'] === 'internal') {
|
||||
$location_e = template_escape($location);
|
||||
}
|
||||
|
@ -168,23 +153,23 @@ function directory_content(&$a) {
|
|||
$location_e = $location;
|
||||
}
|
||||
|
||||
$entry = replace_macros($tpl,array(
|
||||
'$id' => $rr['id'],
|
||||
'$profile_link' => $profile_link,
|
||||
'$photo' => proxy_url($a->get_cached_avatar_image($rr[$photo]), false, PROXY_SIZE_THUMB),
|
||||
'$alt_text' => $rr['name'],
|
||||
'$name' => $rr['name'],
|
||||
'$details' => $pdesc . $details,
|
||||
'$page_type' => $page_type,
|
||||
'$profile' => $profile,
|
||||
'$location' => $location_e,
|
||||
'$gender' => $gender,
|
||||
'$pdesc' => $pdesc,
|
||||
'$marital' => $marital,
|
||||
'$homepage' => $homepage,
|
||||
'$about' => $about,
|
||||
$entry = array(
|
||||
'id' => $rr['id'],
|
||||
'url' => $profile_link,
|
||||
'thumb' => proxy_url($a->get_cached_avatar_image($rr[$photo]), false, PROXY_SIZE_THUMB),
|
||||
'img_hover' => $rr['name'],
|
||||
'name' => $rr['name'],
|
||||
'details' => $pdesc . $details,
|
||||
'page_type' => $page_type,
|
||||
'profile' => $profile,
|
||||
'location' => $location_e,
|
||||
'gender' => $gender,
|
||||
'pdesc' => $pdesc,
|
||||
'marital' => $marital,
|
||||
'homepage' => $homepage,
|
||||
'about' => $about,
|
||||
|
||||
));
|
||||
);
|
||||
|
||||
$arr = array('contact' => $rr, 'entry' => $entry);
|
||||
|
||||
|
@ -193,12 +178,27 @@ function directory_content(&$a) {
|
|||
unset($profile);
|
||||
unset($location);
|
||||
|
||||
$o .= $entry;
|
||||
if(! $arr['entry'])
|
||||
continue;
|
||||
|
||||
$entries[] = $arr['entry'];
|
||||
|
||||
}
|
||||
|
||||
$o .= "<div class=\"directory-end\" ></div>\r\n";
|
||||
$o .= paginate($a);
|
||||
$tpl = get_markup_template('directory_header.tpl');
|
||||
|
||||
$o .= replace_macros($tpl, array(
|
||||
'$search' => $search,
|
||||
'$globaldir' => t('Global Directory'),
|
||||
'$gdirpath' => $gdirpath,
|
||||
'$desc' => t('Find on this site'),
|
||||
'$contacts' => $entries,
|
||||
'$finding' => t('Finding:'),
|
||||
'$findterm' => (strlen($search) ? $search : ""),
|
||||
'$title' => t('Site Directory'),
|
||||
'$submit' => t('Find'),
|
||||
'$paginate' => paginate($a),
|
||||
));
|
||||
|
||||
}
|
||||
else
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
require_once('include/contact_widgets.php');
|
||||
require_once('include/socgraph.php');
|
||||
require_once('include/Contact.php');
|
||||
require_once('include/contact_selectors.php');
|
||||
|
||||
function dirfind_init(&$a) {
|
||||
|
||||
|
@ -13,9 +14,9 @@ function dirfind_init(&$a) {
|
|||
if(! x($a->page,'aside'))
|
||||
$a->page['aside'] = '';
|
||||
|
||||
$a->page['aside'] .= follow_widget();
|
||||
|
||||
$a->page['aside'] .= findpeople_widget();
|
||||
|
||||
$a->page['aside'] .= follow_widget();
|
||||
}
|
||||
|
||||
|
||||
|
@ -38,10 +39,6 @@ function dirfind_content(&$a, $prefix = "") {
|
|||
|
||||
$o = '';
|
||||
|
||||
$o .= replace_macros(get_markup_template("section_title.tpl"),array(
|
||||
'$title' => sprintf( t('People Search - %s'), $search)
|
||||
));
|
||||
|
||||
if($search) {
|
||||
|
||||
if ($local) {
|
||||
|
@ -61,7 +58,7 @@ function dirfind_content(&$a, $prefix = "") {
|
|||
dbesc(escape_tags($search)), dbesc(escape_tags($search)), dbesc(escape_tags($search)),
|
||||
dbesc(escape_tags($search)), dbesc(escape_tags($search)));
|
||||
|
||||
$results = q("SELECT `contact`.`id` AS `cid`, `gcontact`.`url`, `gcontact`.`name`, `gcontact`.`photo`, `gcontact`.`keywords`
|
||||
$results = q("SELECT `contact`.`id` AS `cid`, `gcontact`.`url`, `gcontact`.`name`, `gcontact`.`photo`, `gcontact`.`network` , `gcontact`.`keywords`
|
||||
FROM `gcontact`
|
||||
LEFT JOIN `contact` ON `contact`.`nurl` = `gcontact`.`nurl`
|
||||
AND `contact`.`uid` = %d AND NOT `contact`.`blocked`
|
||||
|
@ -80,7 +77,7 @@ function dirfind_content(&$a, $prefix = "") {
|
|||
$j = new stdClass();
|
||||
$j->total = $count[0]["total"];
|
||||
$j->items_page = $perpage;
|
||||
$j->page = $a->pager['page'];
|
||||
$j->page = $a->pager['page'];
|
||||
foreach ($results AS $result) {
|
||||
if (poco_alternate_ostatus_url($result["url"]))
|
||||
continue;
|
||||
|
@ -96,6 +93,7 @@ function dirfind_content(&$a, $prefix = "") {
|
|||
$objresult->url = $result["url"];
|
||||
$objresult->photo = $result["photo"];
|
||||
$objresult->tags = $result["keywords"];
|
||||
$objresult->network = $result["network"];
|
||||
|
||||
$j->results[] = $objresult;
|
||||
}
|
||||
|
@ -121,7 +119,6 @@ function dirfind_content(&$a, $prefix = "") {
|
|||
|
||||
$id = 0;
|
||||
|
||||
$tpl = get_markup_template('match.tpl');
|
||||
foreach($j->results as $jj) {
|
||||
|
||||
// If We already know this contact then don't show the "connect" button
|
||||
|
@ -143,17 +140,29 @@ function dirfind_content(&$a, $prefix = "") {
|
|||
|
||||
$jj->photo = str_replace("http:///photo/", get_server()."/photo/", $jj->photo);
|
||||
|
||||
$o .= replace_macros($tpl,array(
|
||||
'$url' => zrl($jj->url),
|
||||
'$name' => htmlentities($jj->name),
|
||||
'$photo' => proxy_url($jj->photo, false, PROXY_SIZE_THUMB),
|
||||
'$tags' => $jj->tags,
|
||||
'$conntxt' => $conntxt,
|
||||
'$connlnk' => $connlnk,
|
||||
'$photo_menu' => $photo_menu,
|
||||
'$id' => ++$id,
|
||||
));
|
||||
$entry = array(
|
||||
'url' => zrl($jj->url),
|
||||
'itemurl' => $jj->url,
|
||||
'name' => htmlentities($jj->name),
|
||||
'thumb' => proxy_url($jj->photo, false, PROXY_SIZE_THUMB),
|
||||
'img_hover' => $jj->tags,
|
||||
'conntxt' => $conntxt,
|
||||
'connlnk' => $connlnk,
|
||||
'photo_menu' => $photo_menu,
|
||||
'network' => network_to_name($jj->network, $jj->url),
|
||||
'id' => ++$id,
|
||||
);
|
||||
$entries[] = $entry;
|
||||
}
|
||||
|
||||
$tpl = get_markup_template('viewcontact_template.tpl');
|
||||
|
||||
$o .= replace_macros($tpl,array(
|
||||
'title' => sprintf( t('People Search - %s'), $search),
|
||||
'$contacts' => $entries,
|
||||
'$paginate' => paginate($a),
|
||||
));
|
||||
|
||||
}
|
||||
else {
|
||||
info( t('No matches') . EOL);
|
||||
|
@ -161,7 +170,5 @@ function dirfind_content(&$a, $prefix = "") {
|
|||
|
||||
}
|
||||
|
||||
$o .= '<div class="clear"></div>';
|
||||
$o .= paginate($a);
|
||||
return $o;
|
||||
}
|
||||
|
|
|
@ -4,21 +4,26 @@ require_once('include/socgraph.php');
|
|||
require_once('include/contact_widgets.php');
|
||||
require_once('mod/proxy.php');
|
||||
|
||||
/**
|
||||
* @brief Controller for /match.
|
||||
*
|
||||
* It takes keywords from your profile and queries the directory server for
|
||||
* matching keywords from other profiles.
|
||||
*
|
||||
* @param App &$a
|
||||
* @return void|string
|
||||
*/
|
||||
function match_content(&$a) {
|
||||
|
||||
$o = '';
|
||||
if(! local_user())
|
||||
return;
|
||||
|
||||
$a->page['aside'] .= follow_widget();
|
||||
$a->page['aside'] .= findpeople_widget();
|
||||
$a->page['aside'] .= follow_widget();
|
||||
|
||||
$_SESSION['return_url'] = $a->get_baseurl() . '/' . $a->cmd;
|
||||
|
||||
$o .= replace_macros(get_markup_template("section_title.tpl"),array(
|
||||
'$title' => t('Profile Match')
|
||||
));
|
||||
|
||||
$r = q("SELECT `pub_keywords`, `prv_keywords` FROM `profile` WHERE `is-default` = 1 AND `uid` = %d LIMIT 1",
|
||||
intval(local_user())
|
||||
);
|
||||
|
@ -27,7 +32,6 @@ function match_content(&$a) {
|
|||
if(! $r[0]['pub_keywords'] && (! $r[0]['prv_keywords'])) {
|
||||
notice( t('No keywords to match. Please add keywords to your default profile.') . EOL);
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
$params = array();
|
||||
|
@ -52,35 +56,50 @@ function match_content(&$a) {
|
|||
|
||||
if(count($j->results)) {
|
||||
|
||||
$id = 0;
|
||||
|
||||
|
||||
$tpl = get_markup_template('match.tpl');
|
||||
foreach($j->results as $jj) {
|
||||
$match_nurl = normalise_link($jj->url);
|
||||
$match = q("SELECT `nurl` FROM `contact` WHERE `uid` = '%d' AND nurl='%s' LIMIT 1",
|
||||
intval(local_user()),
|
||||
dbesc($match_nurl));
|
||||
|
||||
if (!count($match)) {
|
||||
$jj->photo = str_replace("http:///photo/", get_server()."/photo/", $jj->photo);
|
||||
$connlnk = $a->get_baseurl() . '/follow/?url=' . $jj->url;
|
||||
$o .= replace_macros($tpl,array(
|
||||
'$url' => zrl($jj->url),
|
||||
'$name' => $jj->name,
|
||||
'$photo' => proxy_url($jj->photo, false, PROXY_SIZE_THUMB),
|
||||
'$inttxt' => ' ' . t('is interested in:'),
|
||||
'$conntxt' => t('Connect'),
|
||||
'$connlnk' => $connlnk,
|
||||
'$tags' => $jj->tags
|
||||
));
|
||||
$photo_menu = array(array(t("View Profile"), zrl($jj->url)));
|
||||
$photo_menu[] = array(t("Connect/Follow"), $connlnk);
|
||||
|
||||
$entry = array(
|
||||
'url' => zrl($jj->url),
|
||||
'itemurl' => $jj->url,
|
||||
'name' => $jj->name,
|
||||
'thumb' => proxy_url($jj->photo, false, PROXY_SIZE_THUMB),
|
||||
'inttxt' => ' ' . t('is interested in:'),
|
||||
'conntxt' => t('Connect'),
|
||||
'connlnk' => $connlnk,
|
||||
'img_hover' => $jj->tags,
|
||||
'photo_menu' => $photo_menu,
|
||||
'id' => ++$id,
|
||||
);
|
||||
$entries[] = $entry;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
||||
$tpl = get_markup_template('viewcontact_template.tpl');
|
||||
|
||||
$o .= replace_macros($tpl,array(
|
||||
'$title' => t('Profile Match'),
|
||||
'$contacts' => $entries,
|
||||
'$paginate' => paginate($a),
|
||||
));
|
||||
|
||||
}
|
||||
else {
|
||||
info( t('No matches') . EOL);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
$o .= cleardiv();
|
||||
$o .= paginate($a);
|
||||
return $o;
|
||||
}
|
||||
|
|
|
@ -61,13 +61,8 @@ function suggest_content(&$a) {
|
|||
|
||||
$_SESSION['return_url'] = $a->get_baseurl() . '/' . $a->cmd;
|
||||
|
||||
$a->page['aside'] .= follow_widget();
|
||||
$a->page['aside'] .= findpeople_widget();
|
||||
|
||||
|
||||
$o .= replace_macros(get_markup_template("section_title.tpl"),array(
|
||||
'$title' => t('Friend Suggestions')
|
||||
));
|
||||
$a->page['aside'] .= follow_widget();
|
||||
|
||||
|
||||
$r = suggestion_query(local_user());
|
||||
|
@ -77,25 +72,41 @@ function suggest_content(&$a) {
|
|||
return $o;
|
||||
}
|
||||
|
||||
$tpl = get_markup_template('suggest_friends.tpl');
|
||||
require_once 'include/contact_selectors.php';
|
||||
|
||||
foreach($r as $rr) {
|
||||
|
||||
$connlnk = $a->get_baseurl() . '/follow/?url=' . (($rr['connect']) ? $rr['connect'] : $rr['url']);
|
||||
$ignlnk = $a->get_baseurl() . '/suggest?ignore=' . $rr['id'];
|
||||
$photo_menu = array(array(t("View Profile"), zrl($jj->url)));
|
||||
$photo_menu[] = array(t("Connect/Follow"), $connlnk);
|
||||
$photo_menu[] = array(t('Ignore/Hide'), $ignlnk);
|
||||
|
||||
$o .= replace_macros($tpl,array(
|
||||
'$url' => zrl($rr['url']),
|
||||
'$name' => $rr['name'],
|
||||
'$photo' => proxy_url($rr['photo'], false, PROXY_SIZE_THUMB),
|
||||
'$ignlnk' => $a->get_baseurl() . '/suggest?ignore=' . $rr['id'],
|
||||
'$ignid' => $rr['id'],
|
||||
'$conntxt' => t('Connect'),
|
||||
'$connlnk' => $connlnk,
|
||||
'$ignore' => t('Ignore/Hide')
|
||||
));
|
||||
$entry = array(
|
||||
'url' => zrl($rr['url']),
|
||||
'itemurl' => $rr['url'],
|
||||
'img_hover' => $rr['url'],
|
||||
'name' => $rr['name'],
|
||||
'thumb' => proxy_url($rr['photo'], false, PROXY_SIZE_THUMB),
|
||||
'ignlnk' => $ignlnk,
|
||||
'ignid' => $rr['id'],
|
||||
'conntxt' => t('Connect'),
|
||||
'connlnk' => $connlnk,
|
||||
'photo_menu' => $photo_menu,
|
||||
'ignore' => t('Ignore/Hide'),
|
||||
'network' => network_to_name($rr['network'], $rr['url']),
|
||||
'id' => ++$id,
|
||||
);
|
||||
$entries[] = $entry;
|
||||
}
|
||||
|
||||
$o .= cleardiv();
|
||||
// $o .= paginate($a);
|
||||
$tpl = get_markup_template('viewcontact_template.tpl');
|
||||
|
||||
$o .= replace_macros($tpl,array(
|
||||
'$title' => t('Friend Suggestions'),
|
||||
'$contacts' => $entries,
|
||||
|
||||
));
|
||||
|
||||
return $o;
|
||||
}
|
||||
|
|
|
@ -48,7 +48,7 @@ function viewcontacts_content(&$a) {
|
|||
if($rr['self'])
|
||||
continue;
|
||||
|
||||
$url = $rr['url'];
|
||||
$url = $rr['url'];
|
||||
|
||||
// route DFRN profiles through the redirect
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue