コード例 #1
0
ファイル: oauth2Action.class.php プロジェクト: dozernz/server
 protected function processKs($ksStr, $requiredPermission = null)
 {
     try {
         kCurrentContext::initKsPartnerUser($ksStr);
     } catch (Exception $ex) {
         KalturaLog::err($ex);
         return false;
     }
     if (kCurrentContext::$ks_object->type != ks::SESSION_TYPE_ADMIN) {
         KalturaLog::err('Ks is not admin');
         return false;
     }
     try {
         kPermissionManager::init(kConf::get('enable_cache'));
     } catch (Exception $ex) {
         if (strpos($ex->getCode(), 'INVALID_ACTIONS_LIMIT') === false) {
             KalturaLog::err($ex);
             return false;
         }
     }
     if ($requiredPermission) {
         if (!kPermissionManager::isPermitted(PermissionName::ADMIN_PUBLISHER_MANAGE)) {
             KalturaLog::err('Ks is missing "ADMIN_PUBLISHER_MANAGE" permission');
             return false;
         }
     }
     return true;
 }
コード例 #2
0
 /**
  * Delete an existing UIConf with no partner limitation
  * 
  * @action delete
  * @param int $id
  *
  * @throws APIErrors::INVALID_UI_CONF_ID
  */
 function deleteAction($id)
 {
     $dbUiConf = uiConfPeer::retrieveByPK($id);
     if (!$dbUiConf) {
         throw new KalturaAPIException(APIErrors::INVALID_UI_CONF_ID, $id);
     }
     if ($dbUiConf->getPartnerId() == PartnerPeer::GLOBAL_PARTNER && !kPermissionManager::isPermitted(self::PERMISSION_GLOBAL_PARTNER_UI_CONF_UPDTAE)) {
         throw new KalturaAPIException(APIErrors::INVALID_UI_CONF_ID, $id);
     }
     $dbUiConf->setStatus(uiConf::UI_CONF_STATUS_DELETED);
     $dbUiConf->save();
 }