public function getOptionValues() { if (!$this->_values) { parent::getOptionValues(); //build _values up. if ($this->_values) { $optionMap = array(); foreach ($this->getProduct()->getOptions() as $option) { $optionMap[$option->getOptionId()] = array(); $i = 0; foreach ($option->getValues() as $value) { $optionMap[$option->getOptionId()][$i++] = ($value->getIsCustomTag() ?: 0) + 0; } } foreach ($this->_values as $returnValObj) { $optionValues = $returnValObj->getData('optionValues'); if ($optionValues) { foreach ($optionValues as $i => $valArr) { $optionValues[$i]['is_custom_tag'] = $optionMap[$returnValObj->getId()][$i]; } $returnValObj->setData('optionValues', $optionValues); } } } } return $this->_values; }
public function getOptionValues() { parent::getOptionValues(); $optionsArr = array_reverse($this->getProduct()->getOptions(), true); foreach ($optionsArr as $option) { foreach ($this->_values as &$value) { if ($value['id'] == $option->getOptionId()) { $value['validators'] = $option->getValidators(); } } } return $this->_values; }
public function getOptionValues() { $values = parent::getOptionValues(); $optionsArr = array_reverse($this->getProduct()->getOptions(), true); //Add our regex attribute data foreach ($values as $value) { $option = $optionsArr[$value->getOptionId()]; $value->setRegex($option->getRegex()); $value->setRegexMessage($option->getRegexMessage()); } $this->_values = $values; return $this->_values; }