Always usa magic on the same server
authorMichael <heluecht@pirati.ca>
Tue, 25 Dec 2018 19:43:57 +0000 (19:43 +0000)
committerMichael <heluecht@pirati.ca>
Tue, 25 Dec 2018 19:43:57 +0000 (19:43 +0000)
mod/dfrn_poll.php
mod/redir.php

index 001202d..acc279b 100644 (file)
@@ -436,7 +436,7 @@ function dfrn_poll_content(App $a)
                switch ($direction) {
                        case -1:
                                if ($type === 'profile') {
-                                       $sql_extra = sprintf(" AND ( `dfrn-id` = '%s' OR `issued-id` = '%s' ) ", DBA::escape($dfrn_id), DBA::escape($dfrn_id));
+                                       $sql_extra = sprintf(" AND (`dfrn-id` = '%s' OR `issued-id` = '%s') ", DBA::escape($dfrn_id), DBA::escape($dfrn_id));
                                } else {
                                        $sql_extra = sprintf(" AND `issued-id` = '%s' ", DBA::escape($dfrn_id));
                                }
index f8dfa3a..33b7d36 100644 (file)
@@ -83,14 +83,15 @@ function redir_init(App $a) {
 
                // When the remote page does support OWA, then we enforce the use of it
                $basepath = Contact::getBasepath($contact_url);
-               $serverret = Network::curl($basepath . '/magic');
-               if ($serverret->isSuccess()) {
-                       $contact['issued-id'] = '';
-                       $contact['dfrn-id'] = '';
+               if ($basepath == System::baseUrl()) {
+                       $use_magic = true;
+               } else {
+                       $serverret = Network::curl($basepath . '/magic');
+                       $use_magic = $serverret->isSuccess();
                }
 
                // Doing remote auth with dfrn.
-               if (local_user() && (!empty($contact['dfrn-id']) || !empty($contact['issued-id'])) && empty($contact['pending'])) {
+               if (local_user() && !$use_magic && (!empty($contact['dfrn-id']) || !empty($contact['issued-id'])) && empty($contact['pending'])) {
                        $dfrn_id = $orig_id = (($contact['issued-id']) ? $contact['issued-id'] : $contact['dfrn-id']);
 
                        if ($contact['duplex'] && $contact['issued-id']) {