From bec7d9f483d63a2330694cc34377b0f79d1afcba Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 3 Jan 2013 19:34:04 -0800 Subject: temporary feed import/export (public only for the moment) until this is integrated with remote permissions --- mod/zfinger.php | 21 ++++++++++++++------- mod/zotfeed.php | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 7 deletions(-) create mode 100644 mod/zotfeed.php (limited to 'mod') diff --git a/mod/zfinger.php b/mod/zfinger.php index b13af50b7..32523ecac 100644 --- a/mod/zfinger.php +++ b/mod/zfinger.php @@ -7,13 +7,15 @@ function zfinger_init(&$a) { $ret = array('success' => false); - $zhash = ((x($_REQUEST,'guid_hash')) ? $_REQUEST['guid_hash'] : ''); - $zguid = ((x($_REQUEST,'guid')) ? $_REQUEST['guid'] : ''); - $zguid_sig = ((x($_REQUEST,'guid_sig')) ? $_REQUEST['guid_sig'] : ''); - $zaddr = ((x($_REQUEST,'address')) ? $_REQUEST['address'] : ''); - $ztarget = ((x($_REQUEST,'target')) ? $_REQUEST['target'] : ''); - $zsig = ((x($_REQUEST,'target_sig')) ? $_REQUEST['target_sig'] : ''); - $zkey = ((x($_REQUEST,'key')) ? $_REQUEST['key'] : ''); + $zhash = ((x($_REQUEST,'guid_hash')) ? $_REQUEST['guid_hash'] : ''); + $zguid = ((x($_REQUEST,'guid')) ? $_REQUEST['guid'] : ''); + $zguid_sig = ((x($_REQUEST,'guid_sig')) ? $_REQUEST['guid_sig'] : ''); + $zaddr = ((x($_REQUEST,'address')) ? $_REQUEST['address'] : ''); + $ztarget = ((x($_REQUEST,'target')) ? $_REQUEST['target'] : ''); + $zsig = ((x($_REQUEST,'target_sig')) ? $_REQUEST['target_sig'] : ''); + $zkey = ((x($_REQUEST,'key')) ? $_REQUEST['key'] : ''); + $mindate = ((x($_REQUEST,'mindate')) ? $_REQUEST['mindate'] : ''); + $feed = ((x($_REQUEST,'feed')) ? intval($_REQUEST['feed']) : 0); if($ztarget) { if((! $zkey) || (! $zsig) || (! rsa_verify($ztarget,base64url_decode($zsig),$zkey))) { @@ -139,6 +141,11 @@ function zfinger_init(&$a) { if($permissions['view_profile']) $ret['profile'] = $profile; +// if($feed && $permissions['view_stream']) +// $ret['messages'] = $zot_feed($e['channel_id'],(($ztarget && $zsig) +// ? base64url_encode(hash('whirlpool',$ztarget . $zsig,true)) +// : '' ),$mindate); + // array of (verified) hubs this channel uses $ret['locations'] = array(); diff --git a/mod/zotfeed.php b/mod/zotfeed.php new file mode 100644 index 000000000..6519481d2 --- /dev/null +++ b/mod/zotfeed.php @@ -0,0 +1,35 @@ + false); + + $mindate = (($_REQUEST['mindate']) ? datetime_convert('UTC','UTC',$_REQUEST['mindate']) : ''); + if(! $mindate) + $mindate = '0000-00-00 00:00:00'; + + if(get_config('system','block_public') && (! get_account_id()) && (! remote_user())) { + $result['message'] = 'Public access denied'; + json_return_and_die($result); + } + + $channel_address = ((argc() > 1) ? argv(1) : ''); + if($channel_address) { + $r = q("select channel_id from channel where channel_address = '%s' limit 1", + dbesc(argv(1)) + ); + } + if(! $r) { + $result['message'] = 'Channel not found.'; + json_return_and_die($result); + } + + $result['messages'] = zot_feed($r[0]['channel_id'],$observer['xchan_hash'],$mindate); + $result['success'] = true; + json_return_and_die($result); + + +} -- cgit v1.2.3