public function configureAction() { $this->_helper->layout->disableLayout(); $partnerId = $this->_getParam('partner_id'); $client = Infra_ClientHelper::getClient(); $systemPartnerPlugin = Kaltura_Client_SystemPartner_Plugin::get($client); $partner = Zend_Registry::get('config')->partner; $allowNonePackage = isset($partner->enableNonePackage) ? $partner->enableNonePackage : false; $client->startMultiRequest(); $systemPartnerPlugin->systemPartner->getPackages(); $systemPartnerPlugin->systemPartner->getPackagesVertical(); $systemPartnerPlugin->systemPartner->getPackagesClassOfService(); $systemPartnerPlugin->systemPartner->getPlayerEmbedCodeTypes(); $systemPartnerPlugin->systemPartner->getPlayerDeliveryTypes(); list($packages, $packagesVertical, $packagesClassOfService, $playerEmbedCodeTypes, $playerDeliveryTypes) = $client->doMultiRequest(); $systemDefaults = new Kaltura_Client_Type_PlayerEmbedCodeType(); $systemDefaults->id = ''; $systemDefaults->label = 'Use System Defaults'; $playerEmbedCodeTypes[] = $systemDefaults; $systemDefaults = new Kaltura_Client_Type_PlayerDeliveryType(); $systemDefaults->id = ''; $systemDefaults->label = 'Use System Defaults'; $playerDeliveryTypes[] = $systemDefaults; $form = new Form_PartnerConfiguration(array('playerDeliveryTypes' => $playerDeliveryTypes)); Form_PackageHelper::addPackagesToForm($form, $packages, 'partner_package', $allowNonePackage); Form_PackageHelper::addPackagesToForm($form, $packagesVertical, 'vertical_clasiffication'); Form_PackageHelper::addPackagesToForm($form, $packagesClassOfService, 'partner_package_class_of_service'); Form_PackageHelper::addOptionsToForm($form, $playerEmbedCodeTypes, 'default_embed_code_type', 'label'); Form_PackageHelper::addOptionsToForm($form, $playerDeliveryTypes, 'default_delivery_type', 'label'); $request = $this->getRequest(); $this->view->errMessage = false; if ($request->isPost()) { if ($form->isValid($request->getPost())) { $this->view->formValid = true; $form->populate($request->getPost()); $config = $form->getObject("Kaltura_Client_SystemPartner_Type_SystemPartnerConfiguration", $request->getPost()); $config->extendedFreeTrailExpiryDate = strtotime($this->_getParam('extended_free_trail_expiry_date')); try { $systemPartnerPlugin->systemPartner->updateConfiguration($partnerId, $config); } catch (Exception $e) { if ($e->getCode() == 'PARTNER_AUDIO_THUMB_ENTRY_ID_ERROR') { $this->view->formValid = false; $form->populate($request->getPost()); $form->getElement('audio_thumb_entry_id')->addError('wrong entry id or not a \'ready\' image entry'); } elseif ($e->getCode() == 'PARTNER_LIVE_THUMB_ENTRY_ID_ERROR') { $this->view->formValid = false; $form->populate($request->getPost()); $form->getElement('live_thumb_entry_id')->addError('wrong entry id or not a \'ready\' image entry'); } else { $this->view->errMessage = $e->getMessage(); } } $extentFreeTrail = $this->_getParam('extended_free_trail'); if (isset($extentFreeTrail) && $extentFreeTrail) { $status = Kaltura_Client_Enum_PartnerStatus::ACTIVE; $client = Infra_ClientHelper::getClient(); $systemPartnerPlugin = Kaltura_Client_SystemPartner_Plugin::get($client); $systemPartnerPlugin->systemPartner->updateStatus($partnerId, $status, "Activated due to trial extension"); } } else { $this->view->formValid = false; $form->populate($request->getPost()); } } else { $client->startMultiRequest(); $systemPartnerPlugin->systemPartner->get($partnerId); $systemPartnerPlugin->systemPartner->getConfiguration($partnerId); try { $result = $client->doMultiRequest(); $partner = $result[0]; $config = $result[1]; $form->populateFromObject($config); } catch (Exception $e) { $this->view->errMessage = $e->getMessage(); } $form->getElement('monitor_usage_history')->setAttrib('onClick', 'openViewHistory(' . $partnerId . ')'); $monitorUsageDataElement = $form->getElement('extended_free_trail_expiry_date'); $monitorUsageDataElement->setValue(date("m/d/y", $monitorUsageDataElement->getValue())); } $this->view->form = $form; $this->view->partnerId = $partnerId; }