diff options
author | friendica <info@friendica.com> | 2014-03-04 19:57:54 -0800 |
---|---|---|
committer | friendica <info@friendica.com> | 2014-03-04 19:57:54 -0800 |
commit | 267283748f676a278d180752c3af56486754e83e (patch) | |
tree | 837c293ec6ff722d8a7616266525acabfe83607e /include | |
parent | 4da73d7d841d9ed33ce83539d7faac5809cac6dc (diff) | |
download | volse-hubzilla-267283748f676a278d180752c3af56486754e83e.tar.gz volse-hubzilla-267283748f676a278d180752c3af56486754e83e.tar.bz2 volse-hubzilla-267283748f676a278d180752c3af56486754e83e.zip |
Red API: /api/red/item/new ; which is like /api/statuses/update except it uses Red semantics and returns success/failure indication.
Diffstat (limited to 'include')
-rw-r--r-- | include/api.php | 48 | ||||
-rwxr-xr-x | include/items.php | 4 |
2 files changed, 50 insertions, 2 deletions
diff --git a/include/api.php b/include/api.php index dc270167b..47c78113a 100644 --- a/include/api.php +++ b/include/api.php @@ -533,6 +533,12 @@ require_once('include/items.php'); api_register_func('api/red/channel/export/basic','api_export_basic', true); + + + + + + function api_channel_stream(&$a, $type) { if(api_user() === false) { logger('api_channel_stream: no user'); @@ -691,6 +697,48 @@ require_once('include/items.php'); api_register_func('api/statuses/update','api_statuses_update', true); + function red_item_new(&$a, $type) { + + if (api_user() === false) { + logger('api_statuses_update: no user'); + return false; + } + + logger('api_statuses_update: REQUEST ' . print_r($_REQUEST,true)); + logger('api_statuses_update: FILES ' . print_r($_FILES,true)); + + + // set this so that the item_post() function is quiet and doesn't redirect or emit json + + $_REQUEST['api_source'] = true; + $_REQUEST['profile_uid'] = api_user(); + + if(x($_FILES,'media')) { + $_FILES['userfile'] = $_FILES['media']; + // upload the image if we have one + $_REQUEST['silent']='1'; //tell wall_upload function to return img info instead of echo + require_once('mod/wall_upload.php'); + $media = wall_upload_post($a); + if(strlen($media)>0) + $_REQUEST['body'] .= "\n\n".$media; + } + + require_once('mod/item.php'); + $x = item_post($a); + json_return_and_die($x); + } + + api_register_func('api/red/item/new','red_item_new', true); + + + + + + + + + + function api_status_show(&$a, $type){ $user_info = api_get_user($a); diff --git a/include/items.php b/include/items.php index 6ff984370..70e098415 100755 --- a/include/items.php +++ b/include/items.php @@ -1548,7 +1548,7 @@ function item_store($arr,$allow_exec = false) { $allow_exec = $d['allow_exec']; - $ret = array('result' => false, 'item_id' => 0); + $ret = array('success' => false, 'item_id' => 0); if(! $arr['uid']) { logger('item_store: no uid'); @@ -1933,7 +1933,7 @@ function item_store_update($arr,$allow_exec = false) { - $ret = array('result' => false, 'item_id' => 0); + $ret = array('success' => false, 'item_id' => 0); if(! intval($arr['uid'])) { logger('item_store_update: no uid'); $ret['message'] = 'no uid.'; |