} $zCategory->data['category_name'] = myTrim($category->name); $zCategory->data['category_description'] = $category->desc; if (isset($category->parentid) && $category->parentid > 0) { $parent = new Category($db); $parent->loadByExtId(intval($category->parentid)); if ($parent->is_loaded) { $zCategory->data['category_parent_id'] = $parent->val('category_id'); } } $zCategory->save(); // update alias $a = new Alias($db, $zCategory->val('category_alias_id')); if (!$a->is_loaded) { $a->setUrl($zCategory->getAliasUrl()); $a->data['alias_path'] = $zCategory->getAliasPath(); $a->save(); $zCategory->data['category_alias_id'] = $a->ival('alias_id'); $zCategory->save(); } } $categories_tree = Category::getCategoryTree($db); /* possibly update all stock numbers to zero here? */ /* produkty */ foreach ($xml->products->product as $product) { $save_product = true; $zVariant = null; $prod_total += 1; $prod_id = intval(trim($product->ean));
require_once $home_dir . 'models/alias.m.php'; require_once $home_dir . 'classes/forms.php'; $form = new AdminForm('category'); $page = 'admin/form'; $form->add([['name' => 'category_name', 'label' => 'Name', 'type' => 'text'], ['name' => 'alias_url', 'label' => 'Alias', 'type' => 'text'], ['name' => 'category_parent_id', 'label' => 'Parent Category', 'type' => 'select', 'select_table' => 'categories', 'select_id_field' => 'category_id', 'select_label_field' => 'category_name']]); if (isset($_POST['category_id'])) { $category = new Category($db, $_POST['category_id']); $category->setData($form->processInput($_POST)); $category->data['category_parent_id'] = parseInt($category->val('category_parent_id')); $alias_url = $category->val('alias_url'); unset($category->data['alias_url']); $category->save(); $alias = new Alias($db, $category->ival('category_alias_id')); // save alias if new or changed if ($alias->val('alias_url') != $alias_url || !$alias->is_loaded) { $alias->data['alias_path'] = $category->getAliasPath(); if (isset($alias_url) && strlen(trim($alias_url)) > 0) { $alias->setUrl($alias_url); } else { $alias->setUrl($category->getAliasUrl()); } $alias->save(); } // update category alias if changed if ($alias->ival('alias_id') != $category->ival('category_alias_id')) { $category->data['category_alias_id'] = $alias->ival('alias_id'); $category->save(); } $category->alias = $alias; } elseif (isset($path[2]) && $path[2] == 'edit') { $category = new Category($db, $path[3]);
public function getParentAlias() { if ($this->ival('category_parent_id') > 0) { $p = new Category($this->db, $this->ival('category_parent_id')); $pa = new Alias($this->db, $p->ival('category_alias_id')); if (!$pa->is_loaded) { $pa->setUrl($p->getAliasUrl()); $pa->data['alias_path'] = $p->getAliasPath(); $pa->save(); $p->data['category_alias_id'] = $pa->val('alias_id'); $p->save(); } return $pa; } }