Blame view

sources/lib/private/ocs/cloud.php 3.26 KB
03e52840d   Kload   Init
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
  <?php
  /**
  * ownCloud
  *
  * @author Frank Karlitschek
  * @author Tom Needham
  * @copyright 2012 Frank Karlitschek frank@owncloud.org
  * @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/>.
  *
  */
  
  class OC_OCS_Cloud {
  
  	public static function getCapabilities($parameters) {
  		$result = array();
  		list($major, $minor, $micro) = OC_Util::getVersion();
  		$result['version'] = array(
  			'major' => $major,
  			'minor' => $minor,
  			'micro' => $micro,
  			'string' => OC_Util::getVersionString(),
  			'edition' => OC_Util::getEditionString(),
  			);
  			
31b7f2792   Kload   Upgrade to ownclo...
38
39
40
41
42
43
  		$result['capabilities'] = array(
  			'core' => array(
  				'pollinterval' => OC_Config::getValue('pollinterval', 60),
  				),
  			);
  			
03e52840d   Kload   Init
44
45
  		return new OC_OCS_Result($result);
  	}
31b7f2792   Kload   Upgrade to ownclo...
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
  	
  	/**
  	 * gets user info
  	 *
  	 * exposes the quota of an user:
  	 * <data>
  	 *   <quota>
  	 *      <free>1234</free>
  	 *      <used>4321</used>
  	 *      <total>5555</total>
  	 *      <ralative>0.78</ralative>
  	 *   </quota>
  	 * </data>
  	 *
  	 * @param $parameters object should contain parameter 'userid' which identifies
  	 *                           the user from whom the information will be returned
  	 */
  	public static function getUser($parameters) {
  		// Check if they are viewing information on themselves
  		if($parameters['userid'] === OC_User::getUser()) {
  			// Self lookup
  			$storage = OC_Helper::getStorageInfo('/');
  			$quota = array(
  				'free' =>  $storage['free'],
  				'used' =>  $storage['used'],
  				'total' =>  $storage['total'],
  				'relative' => $storage['relative'],
  				);
  			return new OC_OCS_Result(array('quota' => $quota));
  		} else {
  			// No permission to view this user data
  			return new OC_OCS_Result(null, 997);
  		}
  	}
  
  	public static function getCurrentUser() {
  		$email=OC_Preferences::getValue(OC_User::getUser(), 'settings', 'email', '');
  		$data  = array(
  			'id' => OC_User::getUser(),
  			'display-name' => OC_User::getDisplayName(),
  			'email' => $email,
  		);
  		return new OC_OCS_Result($data);
  	}
03e52840d   Kload   Init
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
  
  	public static function getUserPublickey($parameters) {
  
  		if(OC_User::userExists($parameters['user'])) {
  			// calculate the disc space
  			// TODO
  			return new OC_OCS_Result(array());
  		} else {
  			return new OC_OCS_Result(null, 300);
  		}
  	}
  
  	public static function getUserPrivatekey($parameters) {
  		$user = OC_User::getUser();
  		if(OC_User::isAdminUser($user) or ($user==$parameters['user'])) {
  
  			if(OC_User::userExists($user)) {
  				// calculate the disc space
  				$txt = 'this is the private key of '.$parameters['user'];
  				echo($txt);
  			} else {
  				return new OC_OCS_Result(null, 300, 'User does not exist');
  			}
  		} else {
  			return new OC_OCS_Result('null', 300, 'You don“t have permission to access this ressource.');
  		}
  	}
  }