diff options
author | habeascodice <habeascodice@federated.social> | 2014-09-28 19:31:19 -0700 |
---|---|---|
committer | habeascodice <habeascodice@federated.social> | 2014-09-28 19:31:19 -0700 |
commit | 73ebdff0837a713d8849b713d0cc2fb4701a2c5f (patch) | |
tree | 7656a07d3eb8d87d12b72cc86559bba157e60343 /mod/p.php | |
parent | c0b59ae36a5ef31b9071edb991f63d4800e21a9d (diff) | |
parent | e18dfbe3ce0a8d89a5320e4f239801d0b84dd83e (diff) | |
download | volse-hubzilla-73ebdff0837a713d8849b713d0cc2fb4701a2c5f.tar.gz volse-hubzilla-73ebdff0837a713d8849b713d0cc2fb4701a2c5f.tar.bz2 volse-hubzilla-73ebdff0837a713d8849b713d0cc2fb4701a2c5f.zip |
Merge remote branch 'upstream/master'
Diffstat (limited to 'mod/p.php')
-rw-r--r-- | mod/p.php | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/mod/p.php b/mod/p.php new file mode 100644 index 000000000..227f9e24a --- /dev/null +++ b/mod/p.php @@ -0,0 +1,52 @@ +<?php /** @file */ + +require_once('include/bb2diaspora.php'); + +// used in Diaspora communications to provide a server copy of a sent post in XML format. + +function p_init(&$a) { + + if(argc() < 2) + http_status_exit(401); + + $mid = str_replace('.xml','',argv(1)); + + $r = q("select * from item where mid = '%s' and (item_flags & %d) and item_private = 0 limit 1", + dbesc($mid), + intval(ITEM_WALL) + ); + + + if((! $r) || (! perm_is_allowed($r[0]['uid'],'','view_stream'))) + http_status_exit(404); + + + $c = q("select * from channel where channel_id = %d limit 1", + intval($r[0]['uid']) + ); + + if(! $c) + http_status_exit(404); + + $myaddr = $c[0]['channel_address'] . '@' . $a->get_hostname(); + + $item = $r[0]; + + $title = $item['title']; + $body = bb2diaspora_itembody($item); + $created = datetime_convert('UTC','UTC',$item['created'],'Y-m-d H:i:s \U\T\C'); + + $tpl = get_markup_template('diaspora_post.tpl'); + $msg = replace_macros($tpl, array( + '$body' => xmlify($body), + '$guid' => $item['mid'], + '$handle' => xmlify($myaddr), + '$public' => 'true', + '$created' => $created, + '$provider' => (($item['app']) ? $item['app'] : 'redmatrix') + )); + + header('Content-type: text/xml'); + echo $msg; + killme(); +}
\ No newline at end of file |