Merge branch 'master' of git://gitorious.org/owncloud/owncloud
commit
63e6863222
@ -0,0 +1,68 @@
|
||||
<?php
|
||||
/**
|
||||
* Copyright (c) 2011 Bart Visscher <bartv@thisnet.nl>
|
||||
* This file is licensed under the Affero General Public License version 3 or
|
||||
* later.
|
||||
* See the COPYING-README file.
|
||||
*/
|
||||
|
||||
class OC_JSON{
|
||||
static protected $send_content_type_header = false;
|
||||
/**
|
||||
* set Content-Type header to jsonrequest
|
||||
*/
|
||||
public static function setContentTypeHeader($type='application/jsonrequest'){
|
||||
if (!self::$send_content_type_header){
|
||||
// We send json data
|
||||
header( 'Content-Type: '.$type );
|
||||
self::$send_content_type_header = true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if the user is logged in, send json error msg if not
|
||||
*/
|
||||
public static function checkLoggedIn(){
|
||||
if( !OC_User::isLoggedIn()){
|
||||
$l = new OC_L10N('core');
|
||||
self::error(array( 'data' => array( 'message' => $l->t('Authentication error') )));
|
||||
exit();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if the user is a admin, send json error msg if not
|
||||
*/
|
||||
public static function checkAdminUser(){
|
||||
self::checkLoggedIn();
|
||||
if( !OC_Group::inGroup( OC_User::getUser(), 'admin' )){
|
||||
$l = new OC_L10N('core');
|
||||
self::error(array( 'data' => array( 'message' => $l->t('Authentication error') )));
|
||||
exit();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Send json error msg
|
||||
*/
|
||||
public static function error($data = array()){
|
||||
$data['status'] = 'error';
|
||||
self::encodedPrint($data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Send json success msg
|
||||
*/
|
||||
public static function success($data = array()){
|
||||
$data['status'] = 'success';
|
||||
self::encodedPrint($data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Encode and print $data in json format
|
||||
*/
|
||||
public static function encodedPrint($data){
|
||||
self::setContentTypeHeader();
|
||||
echo json_encode($data);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue