aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorfriendica <info@friendica.com>2011-11-28 19:28:33 -0800
committerfriendica <info@friendica.com>2011-11-28 19:28:33 -0800
commit034038849cfa710f8b65bc5ab0121cc4865b8b28 (patch)
tree44e435ea879a27f024863ef6af1a81f25c78e8b9 /include
parentf4e1135f7962ae06dc529b8d3b9c2f029baa3a73 (diff)
downloadvolse-hubzilla-034038849cfa710f8b65bc5ab0121cc4865b8b28.tar.gz
volse-hubzilla-034038849cfa710f8b65bc5ab0121cc4865b8b28.tar.bz2
volse-hubzilla-034038849cfa710f8b65bc5ab0121cc4865b8b28.zip
mysql error report fix (no mysqli), suggested friends for new members settings
Diffstat (limited to 'include')
-rw-r--r--include/dba.php8
-rw-r--r--include/poller.php2
-rw-r--r--include/socgraph.php76
3 files changed, 75 insertions, 11 deletions
diff --git a/include/dba.php b/include/dba.php
index 3fa615d90..b89cf5376 100644
--- a/include/dba.php
+++ b/include/dba.php
@@ -76,9 +76,11 @@ class dba {
$mesg = '';
- if($this->mysqli && $this->db->errno)
- logger('dba: ' . $this->db->error);
- else
+ if($this->mysqli) {
+ if($this->db->errno)
+ logger('dba: ' . $this->db->error);
+ }
+ elseif(mysql_errno($this->db))
logger('dba: ' . mysql_error($this->db));
if($result === false)
diff --git a/include/poller.php b/include/poller.php
index d9e5282f2..d568bbd03 100644
--- a/include/poller.php
+++ b/include/poller.php
@@ -60,6 +60,8 @@ function poller_run($argv, $argc){
update_contact_birthdays();
+ update_suggestions();
+
set_config('system','last_expire_day',$d2);
proc_run('php','include/expire.php');
}
diff --git a/include/socgraph.php b/include/socgraph.php
index 87a7543de..07dafe7f8 100644
--- a/include/socgraph.php
+++ b/include/socgraph.php
@@ -22,17 +22,26 @@ require_once('include/datetime.php');
function poco_load($cid,$uid = 0,$url = null) {
$a = get_app();
- if((! $url) || (! $uid)) {
- $r = q("select `poco`, `uid` from `contact` where `id` = %d limit 1",
- intval($cid)
- );
- if(count($r)) {
- $url = $r[0]['poco'];
- $uid = $r[0]['uid'];
+
+ if($cid) {
+ if((! $url) || (! $uid)) {
+ $r = q("select `poco`, `uid` from `contact` where `id` = %d limit 1",
+ intval($cid)
+ );
+ if(count($r)) {
+ $url = $r[0]['poco'];
+ $uid = $r[0]['uid'];
+ }
}
+ if(! $uid)
+ return;
}
- if((! $url) || (! $uid))
+
+ if(! $url)
return;
+
+ logger('poco_load: ' . $url, LOGGER_DATA);
+
$s = fetch_url($url . '/@me/@all?fields=displayName,urls,photos');
if(($a->get_curl_code() > 299) || (! $s))
@@ -65,6 +74,7 @@ function poco_load($cid,$uid = 0,$url = null) {
$x = q("select * from `gcontact` where `nurl` = '%s' limit 1",
dbesc(normalise_link($profile_url))
);
+
if(count($x)) {
$gcid = $x[0]['id'];
@@ -212,6 +222,56 @@ function suggestion_query($uid, $start = 0, $limit = 40) {
intval($limit)
);
+ if(count($r))
+ return $r;
+
+ $r = q("SELECT gcontact.* from gcontact
+ left join glink on glink.gcid = gcontact.id
+ where uid = 0 and cid = 0 and not gcontact.nurl in ( select nurl from contact where uid = %d)
+ and not gcontact.id in ( select gcid from gcign where uid = %d )
+ order by rand limit %d, %d ",
+ intval($uid),
+ intval($start),
+ intval($limit)
+ );
+
return $r;
}
+
+function update_suggestions() {
+
+ $a = get_app();
+
+ $done = array();
+
+ poco_load(0,0,$a->get_baseurl() . '/poco');
+
+ $done[] = $a->get_baseurl() . '/poco';
+
+ if(strlen(get_config('system','directory_submit_url'))) {
+ $x = fetch_url('http://dir.friendica.com/pubsites');
+ if($x) {
+ $j = json_decode($x);
+ if($j->entries) {
+ foreach($j->entries as $entry) {
+ $url = $entry->url . '/poco';
+ if(! in_array($url,$done))
+ poco_load(0,0,$entry->url . '/poco');
+ }
+ }
+ }
+ }
+
+ $r = q("select distinct(poco) as poco from contact where network = '%s'",
+ dbesc(NETWORK_DFRN)
+ );
+
+ if(count($r)) {
+ foreach($r as $rr) {
+ $base = substr($rr['poco'],0,strrpos($rr['poco'],'/'));
+ if(! in_array($base,$done))
+ poco_load(0,0,$base);
+ }
+ }
+}