public function add() { //setup max position if not provide //get max position if (!$this->position) { $sql = "SELECT max(position) AS mp FROM " . _DB_PREFIX_ . "feature WHERE id_group=" . intval($this->id_group); $maxP = Db::getInstance()->getRow($sql); $this->position = intval($maxP["mp"]) + 1; } return parent::add(); }
/** * Create a feature from import * * @param int $id_feature Feature id * @param int $id_product Product id * @param array $value Feature Value */ public static function addFeatureImport($name, $position = false) { $rq = Db::getInstance()->getRow(' SELECT `id_feature` FROM ' . _DB_PREFIX_ . 'feature_lang WHERE `name` = \'' . pSQL($name) . '\' GROUP BY `id_feature` '); if (empty($rq)) { // Feature doesn't exist, create it $feature = new Feature(); $feature->name = array_fill_keys(Language::getIDs(), (string) $name); if ($position) { $feature->position = (int) $position; } else { $feature->position = Feature::getHigherPosition() + 1; } $feature->add(); return $feature->id; } elseif (isset($rq['id_feature']) && $rq['id_feature']) { if (is_numeric($position) && ($feature = new Feature((int) $rq['id_feature']))) { $feature->position = (int) $position; if (Validate::isLoadedObject($feature)) { $feature->update(); } } return (int) $rq['id_feature']; } }
public function create() { $obj = new Feature($this->db); echo json_encode($obj->add($this->f3->get("POST.postdata"))); }
/** * Create a feature from import * * @param integer $id_feature Feature id * @param integer $id_product Product id * @param array $value Feature Value */ public static function addFeatureImport($name) { $rq = Db::getInstance()->getRow('SELECT `id_feature` FROM ' . _DB_PREFIX_ . 'feature_lang WHERE `name` = \'' . pSQL($name) . '\' GROUP BY `id_feature`'); if (!empty($rq)) { return (int) $rq['id_feature']; } // Feature doesn't exist, create it $feature = new Feature(); $languages = Language::getLanguages(); foreach ($languages as $language) { $feature->name[$language['id_lang']] = strval($name); } $feature->add(); return $feature->id; }
/** * Create a feature from import * * @param integer $id_feature Feature id * @param integer $id_product Product id * @param array $value Feature Value */ public static function addFeatureImport($name, $position = false) { $rq = Db::getInstance()->getRow(' SELECT `id_feature` FROM ' . _DB_PREFIX_ . 'feature_lang WHERE `name` = \'' . pSQL($name) . '\' GROUP BY `id_feature` '); if (empty($rq)) { // Feature doesn't exist, create it $feature = new Feature(); $languages = Language::getLanguages(); foreach ($languages as $language) { $feature->name[$language['id_lang']] = strval($name); } if ($position) { $feature->position = (int) $position; } else { $feature->position = Feature::getHigherPosition() + 1; } $feature->add(); return $feature->id; } else { if ($position && ($feature = new Feature((int) $rq['id_feature']))) { $feature->position = (int) $position; $feature->update(); } return (int) $rq['id_feature']; } }
<?php if (Tools::P('saveFeature') == 'add') { $feature = new Feature(); $feature->copyFromPost(); $feature->add(); if (is_array($feature->_errors) and count($feature->_errors) > 0) { $errors = $feature->_errors; } else { $_GET['id'] = $feature->id; UIAdminAlerts::conf('商品特征已添加'); } } if (isset($_GET['id'])) { $id = (int) $_GET['id']; $obj = new Feature($id); } if (Tools::P('saveFeature') == 'edit') { if (Validate::isLoadedObject($obj)) { $obj->copyFromPost(); $obj->update(); } if (is_array($obj->_errors) and count($obj->_errors) > 0) { $errors = $obj->_errors; } else { UIAdminAlerts::conf('商品特征已更新'); } } /** 输出错误信息 */ if (isset($errors)) { UIAdminAlerts::MError($errors);
protected function importFeatures() { $this->truncateTables(array('feature', 'feature_lang', 'feature_shop')); $handle = $this->openCsvFile('features.csv'); for ($current_line = 0; $line = fgetcsv($handle, MAX_LINE_SIZE, ';'); $current_line++) { $res = false; $fields = $this->filterFields('Feature', $this->feature_fields, $line); if (!isset($fields['id'])) { $feature = new Feature($line[0]); $feature->id = $line[0]; } else { $feature = new Feature($fields['id']); } foreach ($fields as $key => $field) { if ($key == 'name') { $feature->{$key} = $this->multilFild($field); } else { $feature->{$key} = $field; } } $feature->force_id = true; if (!$res) { $res = $feature->add(); } } $this->closeCsvFile($handle); return true; }