Using "remote self" to synchronize Frandiaca accounts

This commit is contained in:
Michael Vogel 2014-10-22 08:30:16 +02:00
parent bb0b1918a1
commit f6522658f6
2 changed files with 14 additions and 5 deletions

View File

@ -2589,7 +2589,9 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
// Turn this into a wall post.
if($contact['remote_self']) {
if ($contact['remote_self'] == 2) {
if ($contact['remote_self'] == 1)
$notify = (normalise_link($datarray['author-link']) == normalise_link($datarray['owner-link']));
elseif ($contact['remote_self'] == 2) {
$r = q("SELECT `id`,`url`,`name`,`photo`,`network` FROM `contact` WHERE `uid` = %d AND `self`", intval($importer['uid']));
if (count($r)) {
$datarray['contact-id'] = $r[0]["id"];
@ -2602,14 +2604,16 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
$datarray['author-link'] = $datarray['owner-link'];
$datarray['author-avatar'] = $datarray['owner-avatar'];
}
$notify = true;
}
if (!isset($datarray["app"]) OR ($datarray["app"] == ""))
$datarray["app"] = network_to_name($contact['network']);
$notify = true;
if($contact['network'] === NETWORK_FEED) {
if ($contact['network'] === NETWORK_FEED)
$datarray['private'] = 0;
elseif ($contact['network'] === NETWORK_DFRN) {
// To-Do: Neue GUID oder sowas
}
} else
$notify = false;

View File

@ -152,9 +152,14 @@ function crepair_content(&$a) {
// Disable remote self for everything except feeds.
// There is an issue when you repeat an item from maybe twitter and you got comments from friendica and twitter
// Problem is, you couldn't reply to both networks.
if ($contact['network'] != NETWORK_FEED)
if (!in_array($contact['network'], array(NETWORK_FEED, NETWORK_DFRN)))
$allow_remote_self = false;
if ($contact['network'] == NETWORK_FEED)
$remote_self_options = array('0'=>t('No mirroring'), '1'=>t('Mirror as forwarded posting'), '2'=>t('Mirror as my own posting'));
elseif ($contact['network'] == NETWORK_DFRN)
$remote_self_options = array('0'=>t('No mirroring'), '1'=>t('Mirror as forwarded posting'));
$tpl = get_markup_template('crepair.tpl');
$o .= replace_macros($tpl, array(
'$label_name' => t('Name'),
@ -168,7 +173,7 @@ function crepair_content(&$a) {
'$label_photo' => t('New photo from this URL'),
'$label_remote_self' => t('Remote Self'),
'$allow_remote_self' => $allow_remote_self,
'$remote_self' => array('remote_self', t('Mirror postings from this contact'), $contact['remote_self'], t('Mark this contact as remote_self, this will cause friendica to repost new entries from this contact.'), array('0'=>t('No mirroring'), '1'=>t('Mirror as forwarded posting'), '2'=>t('Mirror as my own posting'))),
'$remote_self' => array('remote_self', t('Mirror postings from this contact'), $contact['remote_self'], t('Mark this contact as remote_self, this will cause friendica to repost new entries from this contact.'), $remote_self_options),
'$contact_name' => $contact['name'],
'$contact_nick' => $contact['nick'],
'$contact_id' => $contact['id'],