]> git.mxchange.org Git - friendica.git/blobdiff - include/queue.php
Better implementation of "hidewall"
[friendica.git] / include / queue.php
index f40768f0d0b26abfbb5559f323eff611725c7809..878c149731d7b1a8c443f052efda6bdbde4d216b 100644 (file)
@@ -1,6 +1,7 @@
 <?php
 require_once("boot.php");
 require_once('include/queue_fn.php');
+require_once('include/dfrn.php');
 
 function queue_run(&$argv, &$argc){
        global $a, $db;
@@ -21,26 +22,15 @@ function queue_run(&$argv, &$argc){
        require_once("include/datetime.php");
        require_once('include/items.php');
        require_once('include/bbcode.php');
-       require_once('include/pidfile.php');
        require_once('include/socgraph.php');
 
        load_config('config');
        load_config('system');
 
-       $lockpath = get_lockpath();
-       if ($lockpath != '') {
-               $pidfile = new pidfile($lockpath, 'queue');
-               if($pidfile->is_already_running()) {
-                       logger("queue: Already running");
-                       if ($pidfile->running_time() > 9*60) {
-                               $pidfile->kill();
-                               logger("queue: killed stale process");
-                               // Calling a new instance
-                               proc_run('php',"include/queue.php");
-                       }
+       // Don't check this stuff if the function is called by the poller
+       if (App::callstack() != "poller_run")
+               if (App::is_already_running('queue', 'include/queue.php', 540))
                        return;
-               }
-       }
 
        $a->set_baseurl(get_config('system','url'));
 
@@ -179,7 +169,7 @@ function queue_run(&$argv, &$argc){
                switch($contact['network']) {
                        case NETWORK_DFRN:
                                logger('queue: dfrndelivery: item '.$q_item['id'].' for '.$contact['name'].' <'.$contact['url'].'>');
-                               $deliver_status = dfrn_deliver($owner,$contact,$data);
+                               $deliver_status = dfrn::deliver($owner,$contact,$data);
 
                                if($deliver_status == (-1)) {
                                        update_queue_time($q_item['id']);
@@ -203,7 +193,7 @@ function queue_run(&$argv, &$argc){
                        case NETWORK_DIASPORA:
                                if($contact['notify']) {
                                        logger('queue: diaspora_delivery: item '.$q_item['id'].' for '.$contact['name'].' <'.$contact['url'].'>');
-                                       $deliver_status = diaspora_transmit($owner,$contact,$data,$public,true);
+                                       $deliver_status = diaspora::transmit($owner,$contact,$data,$public,true);
 
                                        if($deliver_status == (-1)) {
                                                update_queue_time($q_item['id']);