예제 #1
0
파일: kuserPeer.php 프로젝트: wzur/server
 public static function createKuserForPartner($partner_id, $puser_id, $is_admin = false)
 {
     $kuser = kuserPeer::getKuserForPartner($partner_id, $puser_id);
     if (!$kuser) {
         $lockKey = "user_add_" . $partner_id . $puser_id;
         return kLock::runLocked($lockKey, array('kuserPeer', 'createNewUser'), array($partner_id, $puser_id, $is_admin));
     }
     return $kuser;
 }
예제 #2
0
파일: UserService.php 프로젝트: wzur/server
 /**
  * Adds a new user to an existing account in the Kaltura database.
  * Input param $id is the unique identifier in the partner's system.
  *
  * @action add
  * @param KalturaUser $user The new user
  * @return KalturaUser The new user
  *
  * @throws KalturaErrors::DUPLICATE_USER_BY_ID
  * @throws KalturaErrors::PROPERTY_VALIDATION_CANNOT_BE_NULL
  * @throws KalturaErrors::INVALID_FIELD_VALUE
  * @throws KalturaErrors::UNKNOWN_PARTNER_ID
  * @throws KalturaErrors::ADMIN_LOGIN_USERS_QUOTA_EXCEEDED
  * @throws KalturaErrors::PASSWORD_STRUCTURE_INVALID
  * @throws KalturaErrors::DUPLICATE_USER_BY_LOGIN_ID
  * @throws KalturaErrors::USER_ROLE_NOT_FOUND
  */
 function addAction(KalturaUser $user)
 {
     if (!preg_match(kuser::PUSER_ID_REGEXP, $user->id)) {
         throw new KalturaAPIException(KalturaErrors::INVALID_FIELD_VALUE, 'id');
     }
     if ($user instanceof KalturaAdminUser) {
         $user->isAdmin = true;
     }
     $user->partnerId = $this->getPartnerId();
     $lockKey = "user_add_" . $this->getPartnerId() . $user->id;
     return kLock::runLocked($lockKey, array($this, 'adduserImpl'), array($user));
 }
예제 #3
0
 /**
  * Action transforms current metadata object XML using a provided XSL.
  * @action updateFromXSL
  * 
  * @param int $id
  * @param file $xslFile
  * @return KalturaMetadata
  * @throws MetadataErrors::XSLT_VALIDATION_ERROR
  * @throws MetadataErrors::METADATA_FILE_NOT_FOUND
  * @throws MetadataErrors::METADATA_NOT_FOUND
  */
 public function updateFromXSLAction($id, $xslFile)
 {
     $xslFilePath = $xslFile['tmp_name'];
     if (!file_exists($xslFilePath)) {
         throw new KalturaAPIException(MetadataErrors::METADATA_FILE_NOT_FOUND, $xslFile['name']);
     }
     $xslData = file_get_contents($xslFilePath);
     @unlink($xslFilePath);
     return kLock::runLocked("metadata_update_xsl_{$id}", array($this, 'updateFromXSLImpl'), array($id, $xslData));
 }