X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Fcontact_widgets.php;h=bbbd941b5609df3ae7321bc708599e17c6de4ccc;hb=6da01c1a3db29960f7c81582cb52e4254981e9cb;hp=605a3eb78e64c46bcf4691774a8f1a0a8995fbc5;hpb=cea7ca1df4fd8065c38a4f43a0f13ba89e8b94e2;p=friendica.git
diff --git a/include/contact_widgets.php b/include/contact_widgets.php
old mode 100755
new mode 100644
index 605a3eb78e..bbbd941b56
--- a/include/contact_widgets.php
+++ b/include/contact_widgets.php
@@ -1,31 +1,31 @@
t('Add New Contact'),
'$desc' => t('Enter address or web location'),
'$hint' => t('Example: bob@example.com, http://example.com/barbara'),
+ '$value' => $value,
'$follow' => t('Connect')
));
}
function findpeople_widget() {
+ require_once('include/Contact.php');
$a = get_app();
- $inv = (($a->config['register_policy'] != REGISTER_CLOSED) ? t('Invite Friends') : '');
-
if(get_config('system','invitation_only')) {
$x = get_pconfig(local_user(),'system','invites_remaining');
if($x || is_site_admin()) {
- $a->page['aside'] .= '
'
- . sprintf( tt('%d invitation available','%d invitations available',$x), $x)
+ $a->page['aside'] .= '
'
+ . sprintf( tt('%d invitation available','%d invitations available',$x), $x)
. '
' . $inv;
}
}
-
+
return replace_macros(get_markup_template('peoplefind.tpl'),array(
'$findpeople' => t('Find People'),
'$desc' => t('Enter name or interest'),
@@ -34,21 +34,61 @@ function findpeople_widget() {
'$findthem' => t('Find'),
'$suggest' => t('Friend Suggestions'),
'$similar' => t('Similar Interests'),
- '$inv' => $inv
+ '$random' => t('Random Profile'),
+ '$inv' => t('Invite Friends')
));
}
+function unavailable_networks() {
+ $network_filter = "";
+
+ $networks = array();
+
+ if (!plugin_enabled("appnet"))
+ $networks[] = NETWORK_APPNET;
+
+ if (!plugin_enabled("fbpost") AND !plugin_enabled("facebook"))
+ $networks[] = NETWORK_FACEBOOK;
+
+ if (!plugin_enabled("statusnet"))
+ $networks[] = NETWORK_STATUSNET;
+
+ if (!plugin_enabled("pumpio"))
+ $networks[] = NETWORK_PUMPIO;
+
+ if (!plugin_enabled("twitter"))
+ $networks[] = NETWORK_TWITTER;
+
+ if (get_config("system","ostatus_disabled"))
+ $networks[] = NETWORK_OSTATUS;
+
+ if (!get_config("system","diaspora_enabled"))
+ $networks[] = NETWORK_DIASPORA;
+
+ if (!sizeof($networks))
+ return "";
+
+ $network_filter = implode("','", $networks);
+
+ $network_filter = "AND `network` NOT IN ('$network_filter')";
+
+ return $network_filter;
+}
function networks_widget($baseurl,$selected = '') {
$a = get_app();
- if(! local_user())
+ if(!local_user())
return '';
-
- $r = q("select distinct(network) from contact where uid = %d",
+ if(!feature_enabled(local_user(),'networks'))
+ return '';
+
+ $extra_sql = unavailable_networks();
+
+ $r = q("SELECT DISTINCT(`network`) FROM `contact` WHERE `uid` = %d AND NOT `self` $extra_sql ORDER BY `network`",
intval(local_user())
);
@@ -80,6 +120,9 @@ function fileas_widget($baseurl,$selected = '') {
if(! local_user())
return '';
+ if(! feature_enabled(local_user(),'filing'))
+ return '';
+
$saved = get_pconfig(local_user(),'system','filetags');
if(! strlen($saved))
return;
@@ -89,13 +132,13 @@ function fileas_widget($baseurl,$selected = '') {
$cnt = preg_match_all('/\[(.*?)\]/',$saved,$matches,PREG_SET_ORDER);
if($cnt) {
foreach($matches as $mtch) {
- $unescaped = file_tag_decode($mtch[1]);
+ $unescaped = xmlify(file_tag_decode($mtch[1]));
$terms[] = array('name' => $unescaped,'selected' => (($selected == $unescaped) ? 'selected' : ''));
}
}
return replace_macros(get_markup_template('fileas_widget.tpl'),array(
- '$title' => t('File Selections'),
+ '$title' => t('Saved Folders'),
'$desc' => '',
'$sel_all' => (($selected == '') ? 'selected' : ''),
'$all' => t('Everything'),
@@ -105,3 +148,99 @@ function fileas_widget($baseurl,$selected = '') {
));
}
+function categories_widget($baseurl,$selected = '') {
+
+ $a = get_app();
+
+ if(! feature_enabled($a->profile['profile_uid'],'categories'))
+ return '';
+
+ $saved = get_pconfig($a->profile['profile_uid'],'system','filetags');
+ if(! strlen($saved))
+ return;
+
+ $matches = false;
+ $terms = array();
+ $cnt = preg_match_all('/<(.*?)>/',$saved,$matches,PREG_SET_ORDER);
+ if($cnt) {
+ foreach($matches as $mtch) {
+ $unescaped = xmlify(file_tag_decode($mtch[1]));
+ $terms[] = array('name' => $unescaped,'selected' => (($selected == $unescaped) ? 'selected' : ''));
+ }
+ }
+
+ return replace_macros(get_markup_template('categories_widget.tpl'),array(
+ '$title' => t('Categories'),
+ '$desc' => '',
+ '$sel_all' => (($selected == '') ? 'selected' : ''),
+ '$all' => t('Everything'),
+ '$terms' => $terms,
+ '$base' => $baseurl,
+
+ ));
+}
+
+function common_friends_visitor_widget($profile_uid) {
+
+ $a = get_app();
+
+ if(local_user() == $profile_uid)
+ return;
+
+ $cid = $zcid = 0;
+
+ if(is_array($_SESSION['remote'])) {
+ foreach($_SESSION['remote'] as $visitor) {
+ if($visitor['uid'] == $profile_uid) {
+ $cid = $visitor['cid'];
+ break;
+ }
+ }
+ }
+
+ if(! $cid) {
+ if(get_my_url()) {
+ $r = q("select id from contact where nurl = '%s' and uid = %d limit 1",
+ dbesc(normalise_link(get_my_url())),
+ intval($profile_uid)
+ );
+ if(count($r))
+ $cid = $r[0]['id'];
+ else {
+ $r = q("select id from gcontact where nurl = '%s' limit 1",
+ dbesc(normalise_link(get_my_url()))
+ );
+ if(count($r))
+ $zcid = $r[0]['id'];
+ }
+ }
+ }
+
+ if($cid == 0 && $zcid == 0)
+ return;
+
+ require_once('include/socgraph.php');
+
+ if($cid)
+ $t = count_common_friends($profile_uid,$cid);
+ else
+ $t = count_common_friends_zcid($profile_uid,$zcid);
+ if(! $t)
+ return;
+
+ if($cid)
+ $r = common_friends($profile_uid,$cid,0,5,true);
+ else
+ $r = common_friends_zcid($profile_uid,$zcid,0,5,true);
+
+ return replace_macros(get_markup_template('remote_friends_common.tpl'), array(
+ '$desc' => sprintf( tt("%d contact in common", "%d contacts in common", $t), $t),
+ '$base' => $a->get_baseurl(),
+ '$uid' => $profile_uid,
+ '$cid' => (($cid) ? $cid : '0'),
+ '$linkmore' => (($t > 5) ? 'true' : ''),
+ '$more' => t('show more'),
+ '$items' => $r
+ ));
+
+};