<?php
require_once("include/contact_selectors.php");
+require_once("include/contact_widgets.php");
require_once("include/features.php");
require_once("mod/proxy.php");
$group_count = 0;
}
+ $sql_extra2 .= " ".unavailable_networks();
+
if ($type=='' || $type=='c'){
$r = q("SELECT COUNT(*) AS c FROM `contact`
WHERE `uid` = %d AND `self` = 0
}
+function unavailable_networks() {
+ $network_filter = "";
+
+ $networks = array();
+
+ if (!plugin_enabled("appnet"))
+ $networks[] = NETWORK_APPNET;
+
+ if (!plugin_enabled("fbpost"))
+ $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 '';
- if(! feature_enabled(local_user(),'networks'))
+ if(!feature_enabled(local_user(),'networks'))
return '';
- $r = q("SELECT DISTINCT(`network`) FROM `contact` WHERE `uid` = %d AND `self` = 0 ORDER BY `network`",
+ $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())
);
}
$groups_widget .= group_side('contacts','group','full',0,$contact_id);
-
+
$a->page['aside'] .= replace_macros(get_markup_template("contacts-widget-sidebar.tpl"),array(
'$vcard_widget' => $vcard_widget,
'$findpeople_widget' => $findpeople_widget,
$total = $r[0]['total'];
}
+ $sql_extra3 = unavailable_networks();
- $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 ",
+ $r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `self` = 0 AND `pending` = 0 $sql_extra $sql_extra2 $sql_extra3 ORDER BY `name` ASC LIMIT %d , %d ",
intval($_SESSION['uid']),
intval($a->pager['start']),
intval($a->pager['itemspage'])