diaspora friend approvals

This commit is contained in:
Friendika 2011-08-15 18:17:19 -07:00
parent 44918e2736
commit a6d88fb8f7
2 changed files with 24 additions and 11 deletions

View file

@ -123,11 +123,12 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
$dfrn_confirm = $contact['confirm']; $dfrn_confirm = $contact['confirm'];
$aes_allow = $contact['aes_allow']; $aes_allow = $contact['aes_allow'];
$network = ((strlen($contact['issued-id'])) ? 'dfrn' : 'stat'); $network = ((strlen($contact['issued-id'])) ? NETWORK_DFRN : NETWORK_OSTATUS);
if($contact['network']) if($contact['network'])
$network = $contact['network']; $network = $contact['network'];
if($network === 'dfrn') { if($network === NETWORK_DFRN) {
/** /**
* *
@ -306,7 +307,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
logger('dfrn_confirm: confirm - imported photos'); logger('dfrn_confirm: confirm - imported photos');
if($network === 'dfrn') { if($network === NETWORK_DFRN) {
$new_relation = CONTACT_IS_FOLLOWER; $new_relation = CONTACT_IS_FOLLOWER;
if(($relation == CONTACT_IS_SHARING) || ($duplex)) if(($relation == CONTACT_IS_SHARING) || ($duplex))
@ -339,9 +340,10 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
); );
} }
else { else {
// $network !== 'dfrn'
$network = (($contact['network']) ? $contact['network'] : 'stat'); // $network !== NETWORK_DFRN
$network = (($contact['network']) ? $contact['network'] : NETWORK_OSTATUS);
$notify = (($contact['notify']) ? $contact['notify'] : ''); $notify = (($contact['notify']) ? $contact['notify'] : '');
$poll = (($contact['poll']) ? $contact['poll'] : ''); $poll = (($contact['poll']) ? $contact['poll'] : '');
@ -357,6 +359,10 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
} }
} }
$new_relation = $contact['rel'];
if($network === NETWORK_DIASPORA && $duplex)
$new_relation = CONTACT_IS_FRIEND;
$r = q("DELETE FROM `intro` WHERE `id` = %d AND `uid` = %d LIMIT 1", $r = q("DELETE FROM `intro` WHERE `id` = %d AND `uid` = %d LIMIT 1",
intval($intro_id), intval($intro_id),
intval($uid) intval($uid)
@ -373,7 +379,8 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
`poll` = '%s', `poll` = '%s',
`blocked` = 0, `blocked` = 0,
`pending` = 0, `pending` = 0,
`network` = '%s' `network` = '%s',
`rel` = %d
WHERE `id` = %d LIMIT 1 WHERE `id` = %d LIMIT 1
", ",
dbesc($photos[0]), dbesc($photos[0]),
@ -385,6 +392,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
dbesc($notify), dbesc($notify),
dbesc($poll), dbesc($poll),
dbesc($network), dbesc($network),
intval($new_relation),
intval($contact_id) intval($contact_id)
); );
} }
@ -409,6 +417,11 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
); );
if((count($r)) && ($r[0]['hide-friends'] == 0) && (is_array($contact)) && isset($new_relation) && ($new_relation == CONTACT_IS_FRIEND)) { if((count($r)) && ($r[0]['hide-friends'] == 0) && (is_array($contact)) && isset($new_relation) && ($new_relation == CONTACT_IS_FRIEND)) {
if($r[0]['network'] === NETWORK_DIASPORA) {
require_once('include_diaspora.php');
diaspora_share($user[0],$r[0]);
}
require_once('include/items.php'); require_once('include/items.php');
$self = q("SELECT * FROM `contact` WHERE `self` = 1 AND `uid` = %d LIMIT 1", $self = q("SELECT * FROM `contact` WHERE `self` = 1 AND `uid` = %d LIMIT 1",

View file

@ -122,14 +122,14 @@ function notifications_content(&$a) {
continue; continue;
} }
$friend_selected = (($rr['network'] !== 'stat') ? ' checked="checked" ' : ' disabled '); $friend_selected = (($rr['network'] !== NETWORK_OSTATUS) ? ' checked="checked" ' : ' disabled ');
$fan_selected = (($rr['network'] === 'stat') ? ' checked="checked" disabled ' : ''); $fan_selected = (($rr['network'] === NETWORK_OSTATUS) ? ' checked="checked" disabled ' : '');
$dfrn_tpl = get_markup_template('netfriend.tpl'); $dfrn_tpl = get_markup_template('netfriend.tpl');
$knowyou = ''; $knowyou = '';
$dfrn_text = ''; $dfrn_text = '';
if($rr['network'] !== 'stat') { if($rr['network'] === NETWORK_DFRN) {
$knowyou = t('Claims to be known to you: ') . (($rr['knowyou']) ? t('yes') : t('no')); $knowyou = t('Claims to be known to you: ') . (($rr['knowyou']) ? t('yes') : t('no'));
$dfrn_text = replace_macros($dfrn_tpl,array( $dfrn_text = replace_macros($dfrn_tpl,array(
@ -138,7 +138,7 @@ function notifications_content(&$a) {
'$fan_selected' => $fan_selected, '$fan_selected' => $fan_selected,
'$approve_as' => t('Approve as: '), '$approve_as' => t('Approve as: '),
'$as_friend' => t('Friend'), '$as_friend' => t('Friend'),
'$as_fan' => t('Fan/Admirer') '$as_fan' => (($rr['network'] == NETWORK_DIASPORA) ? t('Sharer') : t('Fan/Admirer'))
)); ));
} }
@ -146,7 +146,7 @@ function notifications_content(&$a) {
$o .= replace_macros($tpl,array( $o .= replace_macros($tpl,array(
'$str_notifytype' => t('Notification type: '), '$str_notifytype' => t('Notification type: '),
'$notify_type' => (($rr['network'] !== 'stat') ? t('Friend/Connect Request') : t('New Follower')), '$notify_type' => (($rr['network'] !== NETWORK_OSTATUS) ? t('Friend/Connect Request') : t('New Follower')),
'$dfrn_text' => $dfrn_text, '$dfrn_text' => $dfrn_text,
'$dfrn_id' => $rr['issued-id'], '$dfrn_id' => $rr['issued-id'],
'$uid' => $_SESSION['uid'], '$uid' => $_SESSION['uid'],