]> git.mxchange.org Git - friendica.git/blobdiff - include/poller.php
nets widget - allow all children of specified parent net regardless of network
[friendica.git] / include / poller.php
index cef0647b596f50de31f6c6f49454deb38f37de96..89e4488b92c2239ae09ddb68a3f5c5563fead479 100644 (file)
@@ -24,6 +24,7 @@ function poller_run($argv, $argc){
        require_once('include/items.php');
        require_once('include/Contact.php');
        require_once('include/email.php');
+       require_once('include/socgraph.php');
 
        load_config('config');
        load_config('system');
@@ -59,13 +60,14 @@ function poller_run($argv, $argc){
 
                update_contact_birthdays();
 
+               update_suggestions();
+
                set_config('system','last_expire_day',$d2);
                proc_run('php','include/expire.php');
        }
 
        // clear old cache
-       q("DELETE FROM `cache` WHERE `updated` < '%s'",
-               dbesc(datetime_convert('UTC','UTC',"now - 30 days")));
+       Cache::clear();
 
        $manual_id  = 0;
        $generation = 0;
@@ -108,13 +110,14 @@ function poller_run($argv, $argc){
 
        $contacts = q("SELECT `contact`.`id` FROM `contact` LEFT JOIN `user` ON `user`.`uid` = `contact`.`uid` 
                WHERE ( `rel` = %d OR `rel` = %d ) AND `poll` != ''
-               AND `network` != '%s'
+               AND NOT `network` IN ( '%s', '%s' )
                $sql_extra 
                AND `self` = 0 AND `contact`.`blocked` = 0 AND `contact`.`readonly` = 0 
                AND `user`.`account_expired` = 0 $abandon_sql ORDER BY RAND()",
                intval(CONTACT_IS_SHARING),
                intval(CONTACT_IS_FRIEND),
-               dbesc(NETWORK_DIASPORA)
+               dbesc(NETWORK_DIASPORA),
+               dbesc(NETWORK_FACEBOOK)
        );
 
        if(! count($contacts)) {
@@ -137,6 +140,9 @@ function poller_run($argv, $argc){
                        if($manual_id)
                                $contact['last-update'] = '0000-00-00 00:00:00';
 
+                       if($contact['network'] === NETWORK_DFRN || $contact['network'] === NETWORK_OSTATUS)
+                               $contact['priority'] = 2;
+
                        if($contact['priority'] || $contact['subhub']) {
 
                                $hub_update = true;
@@ -218,7 +224,7 @@ function poller_run($argv, $argc){
 
                        $importer = $r[0];
 
-                       logger("poller: poll: IMPORTER: {$importer['name']}, CONTACT: {$contact['name']}");
+                       logger("poller: poll: ({$contact['id']}) IMPORTER: {$importer['name']}, CONTACT: {$contact['name']}");
 
                        $last_update = (($contact['last-update'] === '0000-00-00 00:00:00') 
                                ? datetime_convert('UTC','UTC','now - 30 days', ATOM_TIME)
@@ -299,6 +305,13 @@ function poller_run($argv, $argc){
                                if((intval($res->status) != 0) || (! strlen($res->challenge)) || (! strlen($res->dfrn_id)))
                                        continue;
 
+                               if(((float) $res->dfrn_version > 2.21) && ($contact['poco'] == '')) {
+                                       q("update contact set poco = '%s' where id = %d limit 1",
+                                               dbesc(str_replace('/profile/','/poco/', $contact['url'])),
+                                               intval($contact['id'])
+                                       );
+                               }
+
                                $postvars = array();
 
                                $sent_dfrn_id = hex2bin((string) $res->dfrn_id);
@@ -522,6 +535,21 @@ function poller_run($argv, $argc){
                                intval($contact['id'])
                        );
 
+
+                       // load current friends if possible.
+
+                       if($contact['poco']) {  
+                               $r = q("SELECT count(*) as total from glink 
+                                       where `cid` = %d and updated > UTC_TIMESTAMP() - INTERVAL 1 DAY",
+                                       intval($contact['id'])
+                               );
+                       }
+                       if(count($r)) {
+                               if(! $r[0]['total']) {
+                                       poco_load($contact['id'],$importer_uid,$contact['poco']);
+                               }
+                       }
+
                        // loop - next contact
                }
        }