Esempio n. 1
0
 /**
  * Prepare request data for mapping profile object
  *
  * @return array
  */
 protected function prepareDataForMapping()
 {
     $data = parent::prepareDataForMapping();
     if (isset($data['membership_id']) && 0 < (int) $data['membership_id']) {
         $membership = \XLite\Core\Database::getRepo('XLite\\Model\\Membership')->find($data['membership_id']);
         if (isset($membership)) {
             $data['membership'] = $membership;
         }
     }
     if (!isset($data['membership'])) {
         $data['membership'] = null;
     }
     return $data;
 }
Esempio n. 2
0
 /**
  * prepareDataForMapping
  *
  * @return array
  */
 protected function prepareDataForMapping()
 {
     $data = parent::prepareDataForMapping();
     foreach ($data as $key => $value) {
         $newKey = preg_replace('/^([^_]*_)(.*)$/', '\\2', $key);
         $data[$newKey] = $value;
         unset($data[$key]);
     }
     if (isset($data['country_code'])) {
         $data['country'] = \XLite\Core\Database::getRepo('XLite\\Model\\Country')->findOneByCode($data['country_code']);
         $data['state'] = null;
         if (isset($data['state_id'])) {
             $state = \XLite\Core\Database::getRepo('XLite\\Model\\State')->find($data['state_id']);
             if (isset($state) && $state->getCountry()->getCode() == $data['country_code']) {
                 $data['state'] = $state;
                 $data['custom_state'] = '';
             }
             unset($data['state_id']);
         }
         if (!isset($data['state'])) {
             $data['state'] = $data['custom_state'];
         }
         unset($data['country_code']);
     }
     return $data;
 }
Esempio n. 3
0
 /**
  * Prepare request data for mapping into model object.
  * Model object is provided with methods:
  * prepareObjectForMapping <- getModelObject <- getDefaultModelObject (or getParam(self::PARAM_MODEL_OBJECT))
  *
  * @return array
  */
 protected function prepareDataForMapping()
 {
     $data = parent::prepareDataForMapping();
     // Update trailing zeroes config option value
     // TODO? move it to separated method ?
     $trailingZeroes = \XLite\Core\Database::getRepo('XLite\\Model\\Config')->findOneBy(array('name' => 'trailing_zeroes', 'category' => 'General'));
     \XLite\Core\Database::getRepo('XLite\\Model\\Config')->update($trailingZeroes, array('value' => '1' == $data['trailing_zeroes']));
     // We do not map "trailing zeroes" - it is a config option.
     unset($data['trailing_zeroes']);
     if (isset($data['format'])) {
         // Data format is divided into thousand and decimal separator (or any other if it would be necessary)
         $data = $data + $this->getFormatInfo($data);
         unset($data['format']);
     }
     return $data;
 }
Esempio n. 4
0
 /**
  * Prepare posted data for mapping to the object
  *
  * @return array
  */
 protected function prepareDataForMapping()
 {
     $data = parent::prepareDataForMapping();
     list($valid) = $this->getFormField('default', 'dateRangeBegin')->validate();
     if ($valid) {
         $data['dateRangeBegin'] = $this->getFormField('default', 'dateRangeBegin')->getValue();
     }
     list($valid) = $this->getFormField('default', 'dateRangeEnd')->validate();
     if ($valid) {
         $data['dateRangeEnd'] = $this->getFormField('default', 'dateRangeEnd')->getValue();
     }
     return $data;
 }