Handle function not needed in lib/ocs.php

This commit is contained in:
Tom Needham 2012-07-31 12:10:42 +01:00
parent b05639e745
commit 5922599f48
1 changed files with 0 additions and 181 deletions

View File

@ -70,187 +70,6 @@ class OC_OCS {
}
}
/**
main function to handle the REST request
**/
public static function handle() {
// overwrite the 404 error page returncode
header("HTTP/1.0 200 OK");
if($_SERVER['REQUEST_METHOD'] == 'GET') {
$method='get';
}elseif($_SERVER['REQUEST_METHOD'] == 'PUT') {
$method='put';
parse_str(file_get_contents("php://input"),$put_vars);
}elseif($_SERVER['REQUEST_METHOD'] == 'POST') {
$method='post';
}else{
echo('internal server error: method not supported');
exit();
}
$format = self::readData($method, 'format', 'text', '');
$router = new OC_Router();
$router->useCollection('ocs');
// CONFIG
$router->create('config', '/config.{format}')
->defaults(array('format' => $format))
->action('OC_OCS', 'apiConfig')
->requirements(array('format'=>'xml|json'));
// PERSON
$router->create('person_check', '/person/check.{format}')
->post()
->defaults(array('format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
$login = OC_OCS::readData('post', 'login', 'text');
$passwd = OC_OCS::readData('post', 'password', 'text');
OC_OCS::personCheck($format,$login,$passwd);
})
->requirements(array('format'=>'xml|json'));
// ACTIVITY
// activityget - GET ACTIVITY page,pagesize als urlparameter
$router->create('activity_get', '/activity.{format}')
->defaults(array('format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
$page = OC_OCS::readData('get', 'page', 'int', 0);
$pagesize = OC_OCS::readData('get', 'pagesize', 'int', 10);
if($pagesize<1 or $pagesize>100) $pagesize=10;
OC_OCS::activityGet($format, $page, $pagesize);
})
->requirements(array('format'=>'xml|json'));
// activityput - POST ACTIVITY
$router->create('activity_put', '/activity.{format}')
->post()
->defaults(array('format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
$message = OC_OCS::readData('post', 'message', 'text');
OC_OCS::activityPut($format,$message);
})
->requirements(array('format'=>'xml|json'));
// PRIVATEDATA
// get - GET DATA
$router->create('privatedata_get',
'/privatedata/getattribute/{app}/{key}.{format}')
->defaults(array('app' => '', 'key' => '', 'format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
$app = addslashes(strip_tags($parameters['app']));
$key = addslashes(strip_tags($parameters['key']));
OC_OCS::privateDataGet($format, $app, $key);
})
->requirements(array('format'=>'xml|json'));
// set - POST DATA
$router->create('privatedata_set',
'/privatedata/setattribute/{app}/{key}.{format}')
->post()
->defaults(array('format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
$app = addslashes(strip_tags($parameters['app']));
$key = addslashes(strip_tags($parameters['key']));
$value=OC_OCS::readData('post', 'value', 'text');
OC_OCS::privateDataSet($format, $app, $key, $value);
})
->requirements(array('format'=>'xml|json'));
// delete - POST DATA
$router->create('privatedata_delete',
'/privatedata/deleteattribute/{app}/{key}.{format}')
->post()
->defaults(array('format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
$app = addslashes(strip_tags($parameters['app']));
$key = addslashes(strip_tags($parameters['key']));
OC_OCS::privateDataDelete($format, $app, $key);
})
->requirements(array('format'=>'xml|json'));
// CLOUD
// systemWebApps
$router->create('system_webapps',
'/cloud/system/webapps.{format}')
->defaults(array('format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
OC_OCS::systemwebapps($format);
})
->requirements(array('format'=>'xml|json'));
// quotaget
$router->create('quota_get',
'/cloud/user/{user}.{format}')
->defaults(array('format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
$user = $parameters['user'];
OC_OCS::quotaGet($format, $user);
})
->requirements(array('format'=>'xml|json'));
// quotaset
$router->create('quota_set',
'/cloud/user/{user}.{format}')
->post()
->defaults(array('format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
$user = $parameters['user'];
$quota = self::readData('post', 'quota', 'int');
OC_OCS::quotaSet($format, $user, $quota);
})
->requirements(array('format'=>'xml|json'));
// keygetpublic
$router->create('keygetpublic',
'/cloud/user/{user}/publickey.{format}')
->defaults(array('format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
$user = $parameters['user'];
OC_OCS::publicKeyGet($format,$user);
})
->requirements(array('format'=>'xml|json'));
// keygetprivate
$router->create('keygetpublic',
'/cloud/user/{user}/privatekey.{format}')
->defaults(array('format' => $format))
->action(function ($parameters) {
$format = $parameters['format'];
$user = $parameters['user'];
OC_OCS::privateKeyGet($format,$user);
})
->requirements(array('format'=>'xml|json'));
// add more calls here
// please document all the call in the draft spec
// http://www.freedesktop.org/wiki/Specifications/open-collaboration-services-1.7#CLOUD
// TODO:
// users
// groups
// bookmarks
// sharing
// versioning
// news (rss)
try {
$router->match($_SERVER['PATH_INFO']);
} catch (ResourceNotFoundException $e) {
$txt='Invalid query, please check the syntax. API specifications are here: http://www.freedesktop.org/wiki/Specifications/open-collaboration-services. DEBUG OUTPUT:'."\n";
$txt.=OC_OCS::getdebugoutput();
echo(OC_OCS::generatexml($format,'failed',999,$txt));
}
exit();
}
public static function notFound() {
if($_SERVER['REQUEST_METHOD'] == 'GET') {
$method='get';