]> git.mxchange.org Git - friendica.git/blobdiff - include/diaspora.php
Merge pull request #310 from simonlnu/master
[friendica.git] / include / diaspora.php
index 5069c1127526d11f7dc89f0959c1ed168c018095..3f2cdf8e4691c34a721b7b86fe4947cda909d271 100644 (file)
@@ -569,6 +569,14 @@ function diaspora_request($importer,$xml) {
                return;
        }
 
+       $g = q("select def_gid from user where uid = %d limit 1",
+               intval($importer['uid'])
+       );
+       if($g && intval($g[0]['def_gid'])) {
+               require_once('include/group.php');
+               group_add_member($importer['uid'],'',$contact_record['id'],$g[0]['def_gid']);
+       }
+
        if($importer['page-flags'] == PAGE_NORMAL) {
 
                $hash = random_string() . (string) time();   // Generate a confirm_key
@@ -2298,14 +2306,20 @@ function diaspora_transmit($owner,$contact,$slap,$public_batch) {
 
        logger('diaspora_transmit: ' . $logid . ' ' . $dest_url);
 
-       if(! intval(get_config('system','diaspora_test')))
-               post_url($dest_url . '/', $slap);
+       if(was_recently_delayed($contact['id'])) {
+               $return_code = 0;
+       }
        else {
-               logger('diaspora_transmit: test_mode');
-               return 200;
+               if(! intval(get_config('system','diaspora_test'))) {
+                       post_url($dest_url . '/', $slap);
+                       $return_code = $a->get_curl_code();
+               }
+               else {
+                       logger('diaspora_transmit: test_mode');
+                       return 200;
+               }
        }
-
-       $return_code = $a->get_curl_code();
+       
        logger('diaspora_transmit: ' . $logid . ' returns: ' . $return_code);
 
        if((! $return_code) || (($return_code == 503) && (stristr($a->get_curl_headers(),'retry-after')))) {