From 02c72e59faef6d6305bf43d7df34af70de73c02a Mon Sep 17 00:00:00 2001 From: zotlabs Date: Sun, 9 Oct 2016 20:49:40 -0700 Subject: provide a DAV module which accesses the raw data storage for a channel. Together with an export data function in the API this allows a client process to create true backups of the cloud storage and importable cloud mirrors with all the metadata intact. The import function will need to be modified slightly to obtain the file contents from a plugin or API call; since it currently tries to fetch it from the source hub. --- include/api.php | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'include/api.php') diff --git a/include/api.php b/include/api.php index ad8e9d572..c14b3df28 100644 --- a/include/api.php +++ b/include/api.php @@ -536,9 +536,6 @@ require_once('include/api_auth.php'); api_register_func('api/z/1.0/files','api_attach_list', true); - - - function api_file_meta($type) { if (api_user()===false) return false; if(! $_REQUEST['file_id']) return false; @@ -601,7 +598,19 @@ require_once('include/api_auth.php'); api_register_func('api/red/filedata', 'api_file_data', true); api_register_func('api/z/1.0/filedata', 'api_file_data', true); + function api_file_export($type) { + if (api_user()===false) return false; + if(! $_REQUEST['file_id']) return false; + + $ret = attach_export_data(api_user(),$_REQUEST['file_id']); + if($ret) { + json_return_and_die($ret); + } + killme(); + } + api_register_func('api/red/file/export', 'api_file_export', true); + api_register_func('api/z/1.0/file/export', 'api_file_export', true); function api_file_detail($type) { if (api_user()===false) return false; @@ -624,6 +633,10 @@ require_once('include/api_auth.php'); killme(); } + + + + api_register_func('api/red/file', 'api_file_detail', true); api_register_func('api/z/1.0/file', 'api_file_detail', true); -- cgit v1.2.3