]> git.mxchange.org Git - friendica.git/blobdiff - mod/xrd.php
salmon protocol changes magicsig draft-experimental, fixes to hostxrd
[friendica.git] / mod / xrd.php
index 8ac6ff7cfca81d5b174f2d9f7ac309ab17dcbc26..c96c18f3cead5c796563f7733f9f29ad03928b71 100644 (file)
@@ -1,6 +1,7 @@
 <?php
 
 require_once('salmon.php');
+require_once('certfns.php');
 
 function xrd_content(&$a) {
 
@@ -22,11 +23,25 @@ function xrd_content(&$a) {
        if(! count($r))
                killme();
 
-       $salmon_key = salmon_key($r[0]['spubkey']);
-
+       $salmon_key = str_replace('=','',salmon_key($r[0]['spubkey']));
 
+       header('Access-Control-Allow-Origin: *');
        header("Content-type: text/xml");
 
+       $dspr_enabled = get_config('system','diaspora_enabled');
+
+       if($dspr_enabled) {
+               $tpl = file_get_contents('view/xrd_diaspora.tpl');
+               $dspr = replace_macros($tpl,array(
+                       '$baseurl' => $a->get_baseurl(),
+                       '$dspr_guid' => $r[0]['guid'],
+                       '$dspr_key' => base64_encode(pemtorsa($r[0]['pubkey']))
+               ));
+       }
+       else
+               $dspr = '';
+
+
        $tpl = file_get_contents('view/xrd_person.tpl');
 
        $o = replace_macros($tpl, array(
@@ -34,6 +49,7 @@ function xrd_content(&$a) {
                '$profile_url' => $a->get_baseurl() . '/profile/'       . $r[0]['nickname'],
                '$atom'        => $a->get_baseurl() . '/dfrn_poll/'     . $r[0]['nickname'],
                '$photo'       => $a->get_baseurl() . '/photo/profile/' . $r[0]['uid']      . '.jpg',
+               '$dspr'        => $dspr,
                '$salmon'      => $a->get_baseurl() . '/salmon/'        . $r[0]['nickname'],
                '$salmen'      => $a->get_baseurl() . '/salmon/'        . $r[0]['nickname'] . '/mention',
                '$modexp'      => 'data:application/magic-public-key,'  . $salmon_key