public function validateForUsage($sourceObject, $propertiesToSkip = array())
 {
     // Allow null in case of update
     $this->validatePropertyMinLength('systemName', 2, !is_null($sourceObject));
     //Check uniqueness of new object's system name
     $systemNameProfile = ResponseProfilePeer::retrieveBySystemName($this->systemName, $sourceObject && $sourceObject->getId() ? $sourceObject->getId() : null);
     if ($systemNameProfile) {
         throw new KalturaAPIException(KalturaErrors::RESPONSE_PROFILE_DUPLICATE_SYSTEM_NAME, $this->systemName);
     }
     $id = $this->id;
     if ($sourceObject && $sourceObject->getId()) {
         $id = $sourceObject->getId();
     }
     parent::validateForUsage($sourceObject, $propertiesToSkip);
 }
示例#2
0
 public function validateForUsage($sourceObject, $propertiesToSkip = array())
 {
     // Allow null in case of update
     $this->validatePropertyMinLength('systemName', 2, !is_null($sourceObject));
     $id = $this->id;
     if ($sourceObject && $sourceObject->getId()) {
         $id = $sourceObject->getId();
     }
     if (trim($this->systemName) && !$this->isNull('systemName')) {
         $systemNameTemplates = ResponseProfilePeer::retrieveBySystemName($this->systemName, $id);
         if (count($systemNameTemplates)) {
             throw new KalturaAPIException(KalturaErrors::RESPONSE_PROFILE_DUPLICATE_SYSTEM_NAME, $this->systemName);
         }
     }
     parent::validateForUsage($sourceObject, $propertiesToSkip);
 }
示例#3
0
 /**
  * Update response profile status by id
  * 
  * @action updateStatus
  * @param int $id
  * @param KalturaResponseProfileStatus $status
  * @return KalturaResponseProfile
  * 
  * @throws KalturaErrors::RESPONSE_PROFILE_ID_NOT_FOUND
  */
 function updateStatusAction($id, $status)
 {
     $dbResponseProfile = ResponseProfilePeer::retrieveByPK($id);
     if (!$dbResponseProfile) {
         throw new KalturaAPIException(KalturaErrors::RESPONSE_PROFILE_ID_NOT_FOUND, $id);
     }
     if ($status == KalturaResponseProfileStatus::ENABLED) {
         //Check uniqueness of new object's system name
         $systemNameProfile = ResponseProfilePeer::retrieveBySystemName($dbResponseProfile->getSystemName(), $id);
         if ($systemNameProfile) {
             throw new KalturaAPIException(KalturaErrors::RESPONSE_PROFILE_DUPLICATE_SYSTEM_NAME, $dbResponseProfile->getSystemName());
         }
     }
     $dbResponseProfile->setStatus($status);
     $dbResponseProfile->save();
     $responseProfile = new KalturaResponseProfile();
     $responseProfile->fromObject($dbResponseProfile, $this->getResponseProfile());
     return $responseProfile;
 }
 /**
  * @return KalturaDetachedResponseProfile
  */
 public function getResponseProfile($paramName = 'responseProfile')
 {
     if (!isset($this->paramsGrouped[$paramName])) {
         return null;
     }
     $partnerId = kCurrentContext::getCurrentPartnerId();
     myPartnerUtils::addPartnerToCriteria('ResponseProfile', $partnerId, true, "{$partnerId},0");
     $responseProfile = null;
     if (isset($this->paramsGrouped[$paramName]['id'])) {
         $responseProfile = ResponseProfilePeer::retrieveByPK($this->paramsGrouped[$paramName]['id']);
     }
     if (isset($this->paramsGrouped[$paramName]['systemName'])) {
         $responseProfile = ResponseProfilePeer::retrieveBySystemName($this->paramsGrouped[$paramName]['systemName']);
     }
     if ($responseProfile) {
         return new KalturaResponseProfile($responseProfile);
     }
     $typeReflector = KalturaTypeReflectorCacher::get('KalturaDetachedResponseProfile');
     return $this->buildObject($typeReflector, $this->paramsGrouped[$paramName], $paramName);
 }
 /**
  * @return KalturaDetachedResponseProfile
  */
 public function getResponseProfile($paramName = 'responseProfile')
 {
     if (!isset($this->paramsGrouped[$paramName])) {
         return null;
     }
     $responseProfile = null;
     if (isset($this->paramsGrouped[$paramName]['id'])) {
         $responseProfile = ResponseProfilePeer::retrieveByPK($this->paramsGrouped[$paramName]['id']);
     }
     if (isset($this->paramsGrouped[$paramName]['systemName'])) {
         $responseProfile = ResponseProfilePeer::retrieveBySystemName($this->paramsGrouped[$paramName]['systemName']);
     }
     if ($responseProfile) {
         return new KalturaResponseProfile($responseProfile);
     }
     $typeReflector = KalturaTypeReflectorCacher::get('KalturaDetachedResponseProfile');
     return $this->buildObject($typeReflector, $this->paramsGrouped[$paramName], $paramName);
 }