parent
8a5f583cac
commit
3d23e98390
@ -1,23 +0,0 @@ |
||||
<?php |
||||
/** |
||||
* ownCloud |
||||
* |
||||
* @author Tom Needham |
||||
* @copyright 2012 Tom Needham tom@owncloud.com |
||||
* |
||||
* This library is free software; you can redistribute it and/or |
||||
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
||||
* License as published by the Free Software Foundation; either |
||||
* version 3 of the License, or any later version. |
||||
* |
||||
* This library is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
* GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
||||
* |
||||
* You should have received a copy of the GNU Affero General Public |
||||
* License along with this library. If not, see <http://www.gnu.org/licenses/>. |
||||
* |
||||
*/ |
||||
OCP\API::register('post', '/cloud/files/share/{type}/{path}', array('OC_Sharing_API', 'shareFile'), 'files_sharing', OC_API::USER_AUTH, array(), array('type' => 'user|group|link|email|contact|remote', 'path' => '.*')); |
||||
?> |
||||
@ -1,47 +0,0 @@ |
||||
<?php |
||||
|
||||
class OC_Sharing_API { |
||||
|
||||
static public function shareFile($parameters) { |
||||
$path = '/'.$parameters['path']; |
||||
$fileid = OC_FileCache::getId($path); |
||||
$typemap = array( |
||||
'user' => OCP\Share::SHARE_TYPE_USER, |
||||
'group' => OCP\Share::SHARE_TYPE_GROUP, |
||||
'link' => OCP\Share::SHARE_TYPE_LINK, |
||||
'email' => OCP\Share::SHARE_TYPE_EMAIL, |
||||
'contact' => OCP\Share::SHARE_TYPE_CONTACT, |
||||
'remote' => OCP\Share::SHARE_TYPE_USER, |
||||
); |
||||
$type = $typemap[$parameters['type']]; |
||||
$shareWith = isset($_POST['shareWith']) ? $_POST['shareWith'] : null; |
||||
$permissionstring = isset($_POST['permissions']) ? $_POST['permissions'] : ''; |
||||
$permissionmap = array( |
||||
'C' => OCP\Share::PERMISSION_CREATE, |
||||
'R' => OCP\Share::PERMISSION_READ, |
||||
'U' => OCP\Share::PERMISSION_UPDATE, |
||||
'D' => OCP\Share::PERMISSION_DELETE, |
||||
'S' => OCP\Share::PERMISSION_SHARE, |
||||
); |
||||
$permissions = 0; |
||||
foreach($permissionmap as $letter => $permission) { |
||||
if(strpos($permissionstring, $letter) !== false) { |
||||
$permissions += $permission; |
||||
} |
||||
} |
||||
|
||||
try { |
||||
OCP\Share::shareItem('file', $fileid, $type, $shareWith, $permissions); |
||||
} catch (Exception $e){ |
||||
error_log($e->getMessage()); |
||||
} |
||||
switch($type){ |
||||
case OCP\Share::SHARE_TYPE_LINK: |
||||
$link = OC_Helper::linkToPublic('files') . '&file=/' . OC_User::getUser() . '/files' . $path; |
||||
return array('link' => array('url' => $link)); |
||||
break; |
||||
} |
||||
|
||||
} |
||||
|
||||
} |
||||
@ -1,13 +0,0 @@ |
||||
<?php |
||||
/** |
||||
* Copyright (c) 2012 Tom Needhama <tom@owncloud.com> |
||||
* This file is licensed under the Affero General Public License version 3 or |
||||
* later. |
||||
* See the COPYING-README file. |
||||
*/ |
||||
|
||||
class Test_Share_API extends UnitTestCase { |
||||
|
||||
function test |
||||
|
||||
} |
||||
Loading…
Reference in new issue