X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fdfrn_confirm.php;h=24e8bf106a9a938dcf6e0ddf3352b2839fcbf38f;hb=3cc63f2e6f17a9da6c023a4dc696a455a3d5286f;hp=7018bf52b7dec03ae6b6c173fa6ad1effd5ceb43;hpb=037cd5d80993dedfccfe9ef25679c54297ef1546;p=friendica.git diff --git a/mod/dfrn_confirm.php b/mod/dfrn_confirm.php index 7018bf52b7..24e8bf106a 100644 --- a/mod/dfrn_confirm.php +++ b/mod/dfrn_confirm.php @@ -201,7 +201,15 @@ function dfrn_confirm_post(&$a,$handsfree = null) { logger('dfrn_confirm: Confirm: posting data to ' . $dfrn_confirm . ': ' . print_r($params,true), LOGGER_DATA); - // POST all this stuff to the other site. + /** + * + * POST all this stuff to the other site. + * Temporarily raise the network timeout to 120 seconds because the default 60 + * doesn't always give the other side quite enough time to decrypt everything. + * + */ + + $a->config['system']['curl_timeout'] = 120; $res = post_url($dfrn_confirm,$params); @@ -378,7 +386,64 @@ function dfrn_confirm_post(&$a,$handsfree = null) { if($r === false) notice( t('Unable to set contact photo.') . EOL); + // reload contact info + $r = q("SELECT * FROM `contact` WHERE `id` = %d LIMIT 1", + intval($contact_id) + ); + if(count($r)) + $contact = $r[0]; + else + $contact = null; + + // Send a new friend post if we are allowed to... + + $r = q("SELECT `hide-friends` FROM `profile` WHERE `uid` = %d AND `is-default` = 1 LIMIT 1", + intval($uid) + ); + if((count($r)) && ($r[0]['hide-friends'] == 0) && (is_array($contact)) && isset($new_relation) && ($new_relation == REL_BUD)) { + + require_once('include/items.php'); + + $self = q("SELECT * FROM `contact` WHERE `self` = 1 AND `uid` = %d LIMIT 1", + intval($uid) + ); + + if(count($self)) { + + $arr = array(); + $arr['uri'] = $arr['parent-uri'] = item_new_uri($a->get_hostname(), $uid); + $arr['uid'] = $uid; + $arr['contact-id'] = $self[0]['id']; + $arr['wall'] = 1; + $arr['type'] = 'wall'; + $arr['gravity'] = 0; + $arr['author-name'] = $arr['owner-name'] = $self[0]['name']; + $arr['author-link'] = $arr['owner-link'] = $self[0]['url']; + $arr['author-avatar'] = $arr['owner-avatar'] = $self[0]['thumb']; + $arr['verb'] = ACTIVITY_FRIEND; + $arr['object-type'] = ACTIVITY_OBJ_PERSON; + $arr['body'] = '[url=' . $self[0]['url'] . ']' . $self[0]['name'] . '[/url] ' . t('is now friends with') + . ' [url=' . $contact['url'] . ']' . $contact['name'] . '[/url]' . "\n\n\n" + . ' [url=' . $contact['url'] . ']' . '[img]' . $contact['thumb'] . '[/img][/url]'; + + $arr['object'] = '' . ACTIVITY_OBJ_PERSON . '' . $contact['name'] . '' + . '' . $contact['url'] . '/' . $contact['name'] . ''; + $arr['object'] .= '' . xmlify('' . "\n"); + $arr['object'] .= xmlify('' . "\n"); + $arr['object'] .= '' . "\n"; + $arr['last-child'] = 1; + + $i = item_store($arr); + + $php_path = ((strlen($a->config['php_path'])) ? $a->config['php_path'] : 'php'); + + //proc_close(proc_open("\"$php_path\" \"include/notifier.php\" \"activity\" \"$i\" &", array(),$foo)); + proc_run($php_path,"include/notifier.php","activity","$i"); + + } + + } // Let's send our user to the contact editor in case they want to // do anything special with this new friend.