public function postProcess() { global $cookie; $this->tabAccess = Profile::getProfileAccess($cookie->profile, $this->id); if (Tools::isSubmit('submitAdd' . $this->table)) { if ($id_category = intval(Tools::getValue('id_category'))) { if (!Category::checkBeforeMove($id_category, intval(Tools::getValue('id_parent')))) { $this->_errors[] = Tools::displayError('category cannot be moved here'); return false; } // Updating customer's group if ($this->tabAccess['edit'] !== '1') { $this->_errors[] = Tools::displayError('You do not have permission to edit anything here.'); } else { $object = new $this->className($id_category); if (Validate::isLoadedObject($object)) { $object->updateGroup(Tools::getValue('groupBox')); } else { $this->_errors[] = Tools::displayError('an error occurred while updating object') . ' <b>' . $this->table . '</b> ' . Tools::displayError('(cannot load object)'); } } } } parent::postProcess(); }
public function processAdd() { $id_category = (int) Tools::getValue('id_category'); $id_parent = (int) Tools::getValue('id_parent'); // if true, we are in a root category creation if (!$id_parent && !Tools::isSubmit('is_root_category')) { $_POST['is_root_category'] = $_POST['level_depth'] = $_POST['id_parent'] = $id_parent = 1; } if ($id_category) { if ($id_category != $id_parent) { if (!Category::checkBeforeMove($id_category, $id_parent)) { $this->errors[] = Tools::displayError($this->l('Category cannot be moved here')); } } else { $this->errors[] = Tools::displayError($this->l('Category cannot be parent of itself.')); } } $object = parent::processAdd(); //if we create a you root category you have to associate to a shop before to add sub categories in. So we redirect to AdminCategories listing if ($object && Tools::getValue('is_root_category')) { Tools::redirectAdmin(self::$currentIndex . '&token=' . Tools::getAdminTokenLite('AdminCategories') . '&conf=3'); } return $object; }
public function postProcess($token = NULL) { global $cookie, $currentIndex; $this->tabAccess = Profile::getProfileAccess($cookie->profile, $this->id); if (Tools::isSubmit('submitAdd' . $this->table)) { if ($id_category = (int) Tools::getValue('id_category')) { if (!Category::checkBeforeMove($id_category, (int) Tools::getValue('id_parent'))) { $this->_errors[] = Tools::displayError('Category cannot be moved here'); return false; } } } elseif (isset($_GET['status']) and Tools::getValue($this->identifier)) { if ($this->tabAccess['edit'] === '1') { if (Validate::isLoadedObject($object = $this->loadObject())) { if ($object->toggleStatus()) { $target = ''; if ($id_category = (int) Tools::getValue('id_category') and Tools::getValue('id_product')) { $target = '&id_category=' . (int) $id_category; } else { $referrer = Tools::secureReferrer($_SERVER['HTTP_REFERER']); if (preg_match('/id_category=(\\d+)/', $referrer, $matches)) { $target = '&id_category=' . (int) $matches[1]; } } Module::hookExec('categoryUpdate'); Tools::redirectAdmin($currentIndex . '&conf=5' . $target . '&token=' . Tools::getValue('token')); } else { $this->_errors[] = Tools::displayError('An error occurred while updating status.'); } } else { $this->_errors[] = Tools::displayError('An error occurred while updating status for object.') . ' <b>' . $this->table . '</b> ' . Tools::displayError('(cannot load object)'); } } else { $this->_errors[] = Tools::displayError('You do not have permission to edit here.'); } } elseif (isset($_GET['delete' . $this->table])) { if ($this->tabAccess['delete'] === '1') { if (Validate::isLoadedObject($object = $this->loadObject()) and isset($this->fieldImageSettings)) { // check if request at least one object with noZeroObject if (isset($object->noZeroObject) and sizeof($taxes = call_user_func(array($this->className, $object->noZeroObject))) <= 1) { $this->_errors[] = Tools::displayError('You need at least one object.') . ' <b>' . $this->table . '</b><br />' . Tools::displayError('You cannot delete all of the items.'); } else { if ($this->deleted) { $object->deleteImage(); $object->deleted = 1; if ($object->update()) { Tools::redirectAdmin($currentIndex . '&conf=1&token=' . Tools::getValue('token') . '&id_category=' . (int) $object->id_parent); } } elseif ($object->delete()) { Tools::redirectAdmin($currentIndex . '&conf=1&token=' . Tools::getValue('token') . '&id_category=' . (int) $object->id_parent); } $this->_errors[] = Tools::displayError('An error occurred during deletion.'); } } else { $this->_errors[] = Tools::displayError('An error occurred while deleting object.') . ' <b>' . $this->table . '</b> ' . Tools::displayError('(cannot load object)'); } } else { $this->_errors[] = Tools::displayError('You do not have permission to delete here.'); } } elseif (isset($_GET['position'])) { if ($this->tabAccess['edit'] !== '1') { $this->_errors[] = Tools::displayError('You do not have permission to edit here.'); } elseif (!Validate::isLoadedObject($object = new Category((int) Tools::getValue($this->identifier, Tools::getValue('id_category_to_move', 1))))) { $this->_errors[] = Tools::displayError('An error occurred while updating status for object.') . ' <b>' . $this->table . '</b> ' . Tools::displayError('(cannot load object)'); } if (!$object->updatePosition((int) Tools::getValue('way'), (int) Tools::getValue('position'))) { $this->_errors[] = Tools::displayError('Failed to update the position.'); } else { Tools::redirectAdmin($currentIndex . '&' . $this->table . 'Orderby=position&' . $this->table . 'Orderway=asc&conf=5' . (($id_category = (int) Tools::getValue($this->identifier, Tools::getValue('id_category_parent', 1))) ? '&' . $this->identifier . '=' . $id_category : '') . '&token=' . Tools::getAdminTokenLite('AdminCatalog')); } } elseif (Tools::getValue('submitDel' . $this->table)) { if ($this->tabAccess['delete'] === '1') { if (isset($_POST[$this->table . 'Box'])) { $category = new Category(); $result = true; $result = $category->deleteSelection(Tools::getValue($this->table . 'Box')); if ($result) { $category->cleanPositions((int) Tools::getValue('id_category')); Tools::redirectAdmin($currentIndex . '&conf=2&token=' . Tools::getAdminTokenLite('AdminCatalog') . '&id_category=' . (int) Tools::getValue('id_category')); } $this->_errors[] = Tools::displayError('An error occurred while deleting selection.'); } else { $this->_errors[] = Tools::displayError('You must select at least one element to delete.'); } } else { $this->_errors[] = Tools::displayError('You do not have permission to delete here.'); } return; } parent::postProcess(); }
public function processAdd() { $id_category = (int) Tools::getValue('id_category'); $id_parent = (int) Tools::getValue('id_parent'); // if true, we are in a root category creation if (!$id_parent) { $_POST['is_root_category'] = $_POST['level_depth'] = 1; $_POST['id_parent'] = $id_parent = (int) Configuration::get('PS_ROOT_CATEGORY'); } if ($id_category) { if ($id_category != $id_parent) { if (!Category::checkBeforeMove($id_category, $id_parent)) { $this->errors[] = $this->trans('The category cannot be moved here.', array(), 'Admin.Catalog.Notification'); } } else { $this->errors[] = $this->trans('The category cannot be a parent of itself.', array(), 'Admin.Catalog.Notification'); } } $object = parent::processAdd(); //if we create a you root category you have to associate to a shop before to add sub categories in. So we redirect to AdminCategories listing if ($object && Tools::getValue('is_root_category')) { Tools::redirectAdmin(self::$currentIndex . '&id_category=' . (int) Configuration::get('PS_ROOT_CATEGORY') . '&token=' . Tools::getAdminTokenLite('AdminCategories') . '&conf=3'); } return $object; }
public function postProcess($token = NULL) { global $cookie, $currentIndex; $this->tabAccess = Profile::getProfileAccess($cookie->profile, $this->id); if (Tools::isSubmit('submitAdd' . $this->table)) { if ($id_category = intval(Tools::getValue('id_category'))) { if (!Category::checkBeforeMove($id_category, intval(Tools::getValue('id_parent')))) { $this->_errors[] = Tools::displayError('category cannot be moved here'); return false; } // Updating customer's group if ($this->tabAccess['edit'] !== '1') { $this->_errors[] = Tools::displayError('You do not have permission to edit anything here.'); } else { $object = new $this->className($id_category); if (Tools::getValue('groupBox') != NULL) { if (Validate::isLoadedObject($object)) { $object->updateGroup(Tools::getValue('groupBox')); } else { $this->_errors[] = Tools::displayError('an error occurred while updating object') . ' <b>' . $this->table . '</b> ' . Tools::displayError('(cannot load object)'); } } else { $this->_errors[] = Tools::displayError('you must select at least one group'); } } } } elseif (isset($_GET['status']) and Tools::getValue($this->identifier)) { if ($this->tabAccess['edit'] === '1') { if (Validate::isLoadedObject($object = $this->loadObject())) { if ($object->toggleStatus()) { $target = ''; if ($id_category = intval(Tools::getValue('id_category')) and Tools::getValue('id_product')) { $target = '&id_category=' . $id_category; } else { $referrer = Tools::secureReferrer($_SERVER['HTTP_REFERER']); if (preg_match('/id_category=(\\d+)/', $referrer, $matches)) { $target = '&id_category=' . $matches[1]; } } Tools::redirectAdmin($currentIndex . '&conf=5' . $target . '&token=' . Tools::getValue('token')); } else { $this->_errors[] = Tools::displayError('an error occurred while updating status'); } } else { $this->_errors[] = Tools::displayError('an error occurred while updating status for object') . ' <b>' . $this->table . '</b> ' . Tools::displayError('(cannot load object)'); } } else { $this->_errors[] = Tools::displayError('You do not have permission to edit anything here.'); } } elseif (isset($_GET['delete' . $this->table])) { if ($this->tabAccess['delete'] === '1') { if (Validate::isLoadedObject($object = $this->loadObject()) and isset($this->fieldImageSettings)) { // check if request at least one object with noZeroObject if (isset($object->noZeroObject) and sizeof($taxes = call_user_func(array($this->className, $object->noZeroObject))) <= 1) { $this->_errors[] = Tools::displayError('you need at least one object') . ' <b>' . $this->table . '</b>' . Tools::displayError(', you cannot delete all of them'); } else { $this->deleteImage($object->id); if ($this->deleted) { $object->deleted = 1; if ($object->update()) { Tools::redirectAdmin($currentIndex . '&conf=1&token=' . Tools::getValue('token') . '&id_category=' . intval($object->id_parent)); } } elseif ($object->delete()) { Tools::redirectAdmin($currentIndex . '&conf=1&token=' . Tools::getValue('token') . '&id_category=' . intval($object->id_parent)); } $this->_errors[] = Tools::displayError('an error occurred during deletion'); } } else { $this->_errors[] = Tools::displayError('an error occurred while deleting object') . ' <b>' . $this->table . '</b> ' . Tools::displayError('(cannot load object)'); } } else { $this->_errors[] = Tools::displayError('You do not have permission to delete here.'); } } elseif (Tools::getValue('submitDel' . $this->table)) { if ($this->tabAccess['delete'] === '1') { if (isset($_POST[$this->table . 'Box'])) { $object = new $this->className(); if (isset($object->noZeroObject) and (sizeof(call_user_func(array($this->className, $object->noZeroObject))) <= 1 or sizeof($_POST[$this->table . 'Box']) == sizeof(call_user_func(array($this->className, $object->noZeroObject))))) { $this->_errors[] = Tools::displayError('you need at least one object') . ' <b>' . $this->table . '</b>' . Tools::displayError(', you cannot delete all of them'); } else { $result = true; if ($this->deleted) { foreach (Tools::getValue($this->table . 'Box') as $id) { $toDelete = new $this->className($id); $toDelete->deleted = 1; $result = $result and $toDelete->update(); } } else { $result = $object->deleteSelection(Tools::getValue($this->table . 'Box')); } if ($result) { $target = ''; $referrer = Tools::secureReferrer($_SERVER['HTTP_REFERER']); if (preg_match('/id_category=(\\d+)/', $referrer, $matches)) { $target = '&id_category=' . $matches[1]; } Tools::redirectAdmin($currentIndex . '&conf=2&token=' . Tools::getValue('token') . $target); } $this->_errors[] = Tools::displayError('an error occurred while deleting selection'); } } else { $this->_errors[] = Tools::displayError('you must select at least one element to delete'); } } else { $this->_errors[] = Tools::displayError('You do not have permission to delete here.'); } } parent::postProcess(); }