set writable (e.g. writeable) flag for Diaspora contacts

This commit is contained in:
Friendika 2011-08-18 21:31:34 -07:00
parent d2c6c21a88
commit c05c20aa56
3 changed files with 14 additions and 5 deletions

View File

@ -308,7 +308,7 @@ function diaspora_request($importer,$xml) {
// That makes us friends. // That makes us friends.
if($contact['rel'] == CONTACT_IS_FOLLOWER) { if($contact['rel'] == CONTACT_IS_FOLLOWER) {
q("UPDATE `contact` SET `rel` = %d WHERE `id` = %d AND `uid` = %d LIMIT 1", q("UPDATE `contact` SET `rel` = %d, `writable` = 1 WHERE `id` = %d AND `uid` = %d LIMIT 1",
intval(CONTACT_IS_FRIEND), intval(CONTACT_IS_FRIEND),
intval($contact['id']), intval($contact['id']),
intval($importer['uid']) intval($importer['uid'])

View File

@ -575,7 +575,7 @@ function notifier_run($argv, $argc){
/** /**
* *
* If you have less than 150 dfrn friends and it's a public message, * If you have less than 999 dfrn friends and it's a public message,
* we'll just go ahead and push them out securely with dfrn/rino. * we'll just go ahead and push them out securely with dfrn/rino.
* If you've got more than that, you'll have to rely on PuSH delivery. * If you've got more than that, you'll have to rely on PuSH delivery.
* *

View File

@ -360,8 +360,14 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
} }
$new_relation = $contact['rel']; $new_relation = $contact['rel'];
if($network === NETWORK_DIASPORA && $duplex) $writable = $contact['writable'];
$new_relation = CONTACT_IS_FRIEND;
if($network === NETWORK_DIASPORA) {
if($duplex)
$new_relation = CONTACT_IS_FRIEND;
if($new_relation != CONTACT_IS_FOLLOWER)
$writable = 1;
}
$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),
@ -380,6 +386,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
`blocked` = 0, `blocked` = 0,
`pending` = 0, `pending` = 0,
`network` = '%s', `network` = '%s',
`writable` = %d,
`rel` = %d `rel` = %d
WHERE `id` = %d LIMIT 1 WHERE `id` = %d LIMIT 1
", ",
@ -392,6 +399,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
dbesc($notify), dbesc($notify),
dbesc($poll), dbesc($poll),
dbesc($network), dbesc($network),
intval($writable),
intval($new_relation), intval($new_relation),
intval($contact_id) intval($contact_id)
); );
@ -640,7 +648,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
`blocked` = 0, `blocked` = 0,
`pending` = 0, `pending` = 0,
`duplex` = %d, `duplex` = %d,
`network` = 'dfrn' WHERE `id` = %d LIMIT 1 `network` = '%s' WHERE `id` = %d LIMIT 1
", ",
dbesc($photos[0]), dbesc($photos[0]),
dbesc($photos[1]), dbesc($photos[1]),
@ -650,6 +658,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
dbesc(datetime_convert()), dbesc(datetime_convert()),
dbesc(datetime_convert()), dbesc(datetime_convert()),
intval($duplex), intval($duplex),
dbesc(NETWORK_DFRN),
intval($dfrn_record) intval($dfrn_record)
); );
if($r === false) { // indicates schema is messed up or total db failure if($r === false) { // indicates schema is messed up or total db failure