]> git.mxchange.org Git - friendica.git/commitdiff
Using "remote self" to synchronize Frandiaca accounts
authorMichael Vogel <icarus@dabo.de>
Wed, 22 Oct 2014 06:30:16 +0000 (08:30 +0200)
committerMichael Vogel <icarus@dabo.de>
Wed, 22 Oct 2014 06:30:16 +0000 (08:30 +0200)
include/items.php
mod/crepair.php

index 0d37fa1a6ed0a0ce4dd6b5a243d3fcbaf595dc7f..1107553e85bb9cc25abdba81a60018eec34e04e5 100644 (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;
index d7eb14627c39e780a2144e3653809af321eba75a..23f833c5b93f7b28e9a35057124f4d6beeb0e845 100644 (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'],