summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/ocs/cloud.php33
-rw-r--r--ocs/routes.php9
2 files changed, 36 insertions, 6 deletions
diff --git a/lib/ocs/cloud.php b/lib/ocs/cloud.php
index 132d923d960..1535f70a8cc 100644
--- a/lib/ocs/cloud.php
+++ b/lib/ocs/cloud.php
@@ -35,13 +35,36 @@ class OC_OCS_Cloud {
'edition' => OC_Util::getEditionString(),
);
- $result['capabilities'] = array(
- 'core' => array(
- 'pollinterval' => OC_Config::getValue('pollinterval', 60),
- ),
- );
+ $result['capabilities'] = array(
+ 'core' => array(
+ 'pollinterval' => OC_Config::getValue('pollinterval', 60),
+ ),
+ );
+
return new OC_OCS_Result($result);
}
+
+ /**
+ * gets user info
+ */
+ public static function getUser($parameters){
+ // Check if they are viewing information on themselves
+ if($parameters['userid'] === OC_User::getUser()){
+ // Self lookup
+ $quota = array();
+ $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 getUserPublickey($parameters) {
diff --git a/ocs/routes.php b/ocs/routes.php
index 1ea698c7a83..283c9af6924 100644
--- a/ocs/routes.php
+++ b/ocs/routes.php
@@ -28,7 +28,7 @@ OC_API::register(
array('OC_OCS_Activity', 'activityGet'),
'core',
OC_API::USER_AUTH
- );
+ );
// Privatedata
OC_API::register(
'get',
@@ -75,3 +75,10 @@ OC_API::register(
'core',
OC_API::USER_AUTH
);
+OC_API::register(
+ 'get',
+ '/cloud/users/{userid}',
+ array('OC_OCS_Cloud', 'getUser'),
+ 'core',
+ OC_API::USER_AUTH
+ );