/** * Store a new attribute option * @access private * @return string $statusMessage Status message */ function _storeNewAttributeOption() { global $_ARRAYLANG; //DBG::log("Shopmanager::_storeNewAttributeOption(): Post: ".var_export($_POST, true)); if (empty($_POST['attribute_name'][0])) { return $_ARRAYLANG['TXT_DEFINE_NAME_FOR_OPTION']; } if (empty($_POST['option_id'][0]) || !is_array($_POST['option_id'][0])) { return $_ARRAYLANG['TXT_DEFINE_VALUE_FOR_OPTION']; } $arrOptionId = contrexx_input2int($_POST['option_id'][0]); $arrOptionValue = empty($_POST['option_name']) || !is_array($_POST['option_name']) ? array() : contrexx_input2raw($_POST['option_name']); $arrOptionPrice = empty($_POST['option_price']) || !is_array($_POST['option_price']) ? array() : contrexx_input2float($_POST['option_price']); $attribute_name = contrexx_input2raw($_POST['attribute_name'][0]); $attribute_type = empty($_POST['attribute_type'][0]) ? Attribute::TYPE_MENU_OPTIONAL : intval($_POST['attribute_type'][0]); //DBG::log("Attribute name: $attribute_name, type: $attribute_type"); $objAttribute = new Attribute($attribute_name, $attribute_type); //DBG::log("New Attribute: ".var_export($objAttribute, true)); $i = 0; foreach ($arrOptionId as $option_id) { $objAttribute->addOption(isset($arrOptionValue[$option_id]) ? $arrOptionValue[$option_id] : '', $arrOptionPrice[$option_id], ++$i); } //DBG::log("New Options: ".var_export($objAttribute, true)); if (!$objAttribute->store()) { return \Message::error($_ARRAYLANG['TXT_SHOP_ERROR_INSERTING_PRODUCTATTRIBUTE']); } return true; }