Ejemplo n.º 1
0
 /**
  *
  * @service gadget write
  * @param $fields
  * @return Gpf_Rpc_Form
  */
 public function save(Gpf_Rpc_Params $params)
 {
     $form = new Gpf_Rpc_Form($params);
     $dbRow = $this->createDbRowObject();
     $dbRow->setPrimaryKeyValue($this->getId($form));
     try {
         $dbRow->load();
     } catch (Gpf_DbEngine_NoRow $e) {
         $form->setErrorMessage($this->getDbRowObjectName() . $this->_(" does not exist"));
         return $form;
     }
     $dbRow->set(Gpf_Db_Table_Gadgets::NAME, $form->getFieldValue(self::FORM_GADGET_NAME));
     if (!$this->checkBeforeSave($dbRow, $form, self::EDIT)) {
         return $form;
     }
     try {
         $dbRow->save();
         $this->afterSave($dbRow, self::EDIT);
     } catch (Exception $e) {
         $form->setErrorMessage($e->getMessage());
         return $form;
     }
     $form->setField(self::FORM_GADGET_NAME, $dbRow->get(Gpf_Db_Table_Gadgets::NAME));
     $form->setInfoMessage($this->getDbRowObjectName() . $this->_(" saved"));
     $formField = new Gpf_Db_FormField();
     $formField->setFormId($this->gadget->getPreferencesFormId());
     foreach ($formField->loadCollection() as $field) {
         $code = $field->getCode();
         $this->gadget->addProperty($code, $form->getFieldValue($code));
     }
     return $form;
 }
Ejemplo n.º 2
0
 /**
  * @return Gpf_DbEngine_Row_Collection
  */
 protected function getFormFields() {
     $field  = new Gpf_Db_FormField();
     $field->setAccountId(Gpf_Session::getAuthUser()->getAccountId());
     $field->setFormId('affiliateForm');
     return $field->loadCollection();
 }