Exemple #1
0
 /**
  * Detect form field class by option
  *
  * @param \XLite\Model\Config $option Option
  *
  * @return string
  */
 protected function detectFormFieldClassByOption(\XLite\Model\Config $option)
 {
     $class = null;
     $type = $option->getType() ?: 'text';
     switch ($type) {
         case 'textarea':
             $class = '\\XLite\\View\\FormField\\Textarea\\Simple';
             break;
         case 'checkbox':
             $class = '\\XLite\\View\\FormField\\Input\\Checkbox\\Simple';
             break;
         case 'country':
             $class = '\\XLite\\View\\FormField\\Select\\Country';
             break;
         case 'state':
             $class = '\\XLite\\View\\FormField\\Select\\State';
             break;
         case 'currency':
             $class = '\\XLite\\View\\FormField\\Select\\Currency';
             break;
         case 'separator':
             $class = '\\XLite\\View\\FormField\\Separator\\Regular';
             break;
         case 'text':
             $class = '\\XLite\\View\\FormField\\Input\\Text';
             break;
         default:
             if (preg_match('/^\\\\?XLite\\\\/Ss', $option->getType())) {
                 $class = $option->getType();
             }
     }
     return $class;
 }
Exemple #2
0
 /**
  * Detect form field class by option
  *
  * @param \XLite\Model\Config $option Option
  *
  * @return string
  */
 protected function detectFormFieldClassByOption(\XLite\Model\Config $option)
 {
     return 'dimensions' === $option->getName() ? 'XLite\\View\\FormField\\Input\\Text\\Dimensions' : parent::detectFormFieldClassByOption($option);
 }
Exemple #3
0
 /**
  * Sanitize option new value
  *
  * @param \XLite\Model\Config $option Config option
  * @param string              $value  New value
  *
  * @return string
  */
 protected function sanitizeOptionValue($option, $value)
 {
     $category = $option->getCategory();
     $name = $option->getName();
     $validationMethod = 'sanitize' . \Includes\Utils\Converter::convertToCamelCase($category) . \Includes\Utils\Converter::convertToCamelCase($name);
     if (method_exists($this, $validationMethod)) {
         $value = $this->{$validationMethod}($value);
     }
     $type = $option->getType();
     if ('checkbox' === $type) {
         $result = empty($value) ? 'N' : 'Y';
     } elseif ('serialized' === $type && null !== $value && is_array($value)) {
         $result = serialize($value);
     } elseif ('text' === $type) {
         $result = null !== $value ? trim($value) : '';
     } elseif ('XLite\\View\\FormField\\Input\\PasswordWithValue' === $type) {
         $result = null !== $value ? $value : null;
     } else {
         $result = null !== $value ? $value : '';
     }
     return $result;
 }
 /**
  * {@inheritDoc}
  */
 public function prepareEntityBeforeCommit($type)
 {
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'prepareEntityBeforeCommit', array($type));
     return parent::prepareEntityBeforeCommit($type);
 }
Exemple #5
0
 /**
  * Detect form field class by option
  *
  * @param \XLite\Model\Config $option Option
  *
  * @return string
  */
 protected function detectFormFieldClassByOption(\XLite\Model\Config $option)
 {
     return $this->isCountriesSelector($option->getName()) ? 'XLite\\Module\\XC\\PitneyBowes\\View\\FormField\\Select\\Country' : parent::detectFormFieldClassByOption($option);
 }
Exemple #6
0
 /**
  * Return true if option is visible
  *
  * @param \XLite\Model\Config $option Option object
  *
  * @return boolean
  */
 protected function isOptionVisible(\XLite\Model\Config $option)
 {
     $result = true;
     $method = 'isOption' . \XLite\Core\Converter::convertToCamelCase($option->getCategory() . '_' . $option->getName()) . 'Visible';
     if (method_exists($this, $method)) {
         // Call method 'isOption<Category><Name>Visible'
         $result = $this->{$method}();
     }
     return $result;
 }