/**
  * Add application action
  */
 public function addAction()
 {
     if ($this->_aUserInfo['role'] == 'admin') {
         $iClientId = $this->_getParam('cid');
     } else {
         $iClientId = $this->_aUserInfo['client'];
     }
     if (!$iClientId) {
         throw new AM_Controller_Exception_BadRequest('Invalid parameters');
     }
     $iApplicationId = intval($this->_getParam('aid'));
     if ($iApplicationId && !AM_Model_Db_Table_Abstract::factory('application')->checkAccess($iApplicationId, $this->_aUserInfo)) {
         throw new AM_Controller_Exception_Forbidden('Access denied');
     }
     $sClass = AM_Component_Record_Database_Application_Abstract::getClassByApplicationId($iApplicationId);
     /* @var string */
     $oComponent = new $sClass($this, 'application', $iApplicationId, $iClientId);
     if ($oComponent->operation()) {
         $oApplication = AM_Model_Db_Table_Abstract::factory('application')->findOneBy('id', $oComponent->getPrimaryKeyValue());
         /* @var $oApplication AM_Model_Db_Application */
         $lstIssues = $oApplication->getIssues();
         foreach ($lstIssues as $oIssue) {
             /* @var $oIssue AM_Model_Db_Issue */
             $oIssue->exportRevisions();
         }
         if (is_a($oComponent, 'AM_Component_Record_Database_Application_Add')) {
             return $this->_redirect("/application/edit/aid/{$oApplication->id}/cid/{$iClientId}");
         } else {
             return $this->_redirect('/application/list/cid/' . $iClientId);
         }
     }
     $oComponent->show();
 }
Example #2
0
 public function show()
 {
     if (!$this->isSubmitted) {
         if (!$this->controls['preview']->getValue()) {
             $this->controls['preview']->setValue(0);
         }
     }
     parent::show();
 }
Example #3
0
 public function show()
 {
     if (!$this->isSubmitted) {
         if (!$this->controls['preview']->getValue()) {
             $this->controls['preview']->setValue(0);
         }
     }
     if ($this->primaryKeyValue) {
         $oApplication = AM_Model_Db_Table_Abstract::factory('application')->findOneBy('id', $this->primaryKeyValue);
         if ($oApplication->newsstand_cover_image) {
             $sIssueImageUri = AM_Tools::getImageUrl('270-150', AM_Model_Db_Application::PRESET_APPLICATION_IMAGE, $this->primaryKeyValue, $oApplication->newsstand_cover_image, 'png');
             if (!empty($oApplication->updated)) {
                 $sIssueImageUri .= '?' . strtotime($oApplication->updated);
             }
         }
     }
     $aRecord = array('imageUri' => isset($sIssueImageUri) ? $sIssueImageUri : null);
     if (isset($this->view->{$this->getName()})) {
         $aRecord = array_merge($aRecord, $this->view->{$this->getName()});
     }
     $this->view->{$this->getName()} = $aRecord;
     parent::show();
 }
Example #4
0
 /**
  * @return boolean
  */
 public function validate()
 {
     if (!parent::validate()) {
         return false;
     }
     // Check state
     if (array_search($this->controls['type']->getValue(), self::$_aValidTypes) === false) {
         $this->errors[] = $this->actionController->__('Not valid type');
         return false;
     }
     return true;
 }