public function add($param = array()) { $id = $backurl = 0; list($id, $backurl) = $param; $parentMenu = $this->showCategoryModel->getChildCategoryById(0); $categoryModel = new categoryModel(); $trueCategoryList = $categoryModel->getChildCategoryByIdCache(0); $data = array('parentMenu' => $parentMenu, 'id' => $id, 'backurl' => $backurl, 'trueCategoryList' => $trueCategoryList); $this->setView($data); }
<?php $categoryModel = new categoryModel(); if (!empty($_POST)) { #Guardar formulario if ($_POST['act'] == 'save') { $categoryModel->cargarPorId($_POST['idcategory']); $categoryModel->setValues($_POST); $categoryModel->save(); die(json_encode(array('msg' => 'El registro fue guardado correctamente', 'type' => 'success'))); } #Listar datatable if ($_POST['act'] == 'listar') { $pager = $categoryModel->getPager(array('idcategory', 'name')); die($pager->getJSON()); } #Eliminar registro if ($_POST['act'] == 'delete') { $categoryModel->cargarPorId($_POST['id']); $categoryModel->delete(); die(json_encode(array('msg' => 'El registro fue eliminado correctamente', 'type' => 'success'))); } #cargar para editar registro if ($_POST['act'] == 'edit') { die(json_encode(array('data' => $categoryModel->cargarPorId($_POST['id'])))); } } else { echo $engine->render('category', $aParams); exit; }
/** * Editing a category. * * @since 2.0.0 * @param int|string $CategoryID Unique ID of the category to be updated. * @throws Exception when category cannot be found. */ public function editCategory($CategoryID = '') { // Check permission $this->permission(['Garden.Community.Manage', 'Garden.Settings.Manage'], false); // Set up models $RoleModel = new RoleModel(); $PermissionModel = Gdn::permissionModel(); $this->Form->setModel($this->CategoryModel); if (!$CategoryID && $this->Form->authenticatedPostBack()) { if ($ID = $this->Form->getFormValue('CategoryID')) { $CategoryID = $ID; } } // Get category data $this->Category = CategoryModel::categories($CategoryID); if (!$this->Category) { throw notFoundException('Category'); } // Category data is expected to be in the form of an object. $this->Category = (object) $this->Category; $this->Category->CustomPermissions = $this->Category->CategoryID == $this->Category->PermissionCategoryID; $displayAsOptions = categoryModel::getDisplayAsOptions(); // Restrict "Display As" types based on parent. $parentCategory = $this->CategoryModel->getID($this->Category->ParentCategoryID); $parentDisplay = val('DisplayAs', $parentCategory); if ($parentDisplay === 'Flat') { unset($displayAsOptions['Heading']); } // Set up head $this->addJsFile('jquery.alphanumeric.js'); $this->addJsFile('manage-categories.js'); $this->addJsFile('jquery.gardencheckboxgrid.js'); $this->title(t('Edit Category')); $this->setHighlightRoute('vanilla/settings/categories'); // Make sure the form knows which item we are editing. $this->Form->addHidden('CategoryID', $CategoryID); $this->setData('CategoryID', $CategoryID); // Load all roles with editable permissions $this->RoleArray = $RoleModel->getArray(); $this->fireAs('SettingsController'); $this->fireEvent('AddEditCategory'); if ($this->Form->authenticatedPostBack()) { $this->setupDiscussionTypes($this->Category); $Upload = new Gdn_Upload(); $TmpImage = $Upload->validateUpload('PhotoUpload', false); if ($TmpImage) { // Generate the target image name $TargetImage = $Upload->generateTargetName(PATH_UPLOADS); $ImageBaseName = pathinfo($TargetImage, PATHINFO_BASENAME); // Save the uploaded image $Parts = $Upload->saveAs($TmpImage, $ImageBaseName); $this->Form->setFormValue('Photo', $Parts['SaveName']); } $this->Form->setFormValue('CustomPoints', (bool) $this->Form->getFormValue('CustomPoints')); // Enforces tinyint values on boolean fields to comply with strict mode $this->Form->setFormValue('HideAllDiscussions', forceBool($this->Form->getFormValue('HideAllDiscussions'), '0', '1', '0')); $this->Form->setFormValue('Archived', forceBool($this->Form->getFormValue('Archived'), '0', '1', '0')); $this->Form->setFormValue('AllowFileUploads', forceBool($this->Form->getFormValue('AllowFileUploads'), '0', '1', '0')); if ($parentDisplay === 'Flat' && $this->Form->getFormValue('DisplayAs') === 'Heading') { $this->Form->addError('Cannot display as a heading when your parent category is displayed flat.', 'DisplayAs'); } if ($this->Form->save()) { $Category = CategoryModel::categories($CategoryID); $this->setData('Category', $Category); if ($this->deliveryType() == DELIVERY_TYPE_ALL) { $destination = $this->categoryPageByParent($parentCategory); redirect($destination); } elseif ($this->deliveryType() === DELIVERY_TYPE_DATA && method_exists($this, 'getCategory')) { $this->Data = []; $this->getCategory($CategoryID); return; } } } else { $this->Form->setData($this->Category); $this->setupDiscussionTypes($this->Category); $this->Form->setValue('CustomPoints', $this->Category->PointsCategoryID == $this->Category->CategoryID); } // Get all of the currently selected role/permission combinations for this junction. $Permissions = $PermissionModel->getJunctionPermissions(array('JunctionID' => $CategoryID), 'Category', '', array('AddDefaults' => !$this->Category->CustomPermissions)); $Permissions = $PermissionModel->unpivotPermissions($Permissions, true); if ($this->deliveryType() == DELIVERY_TYPE_ALL) { $this->setData('PermissionData', $Permissions, true); } // Render default view $this->setData('Operation', 'Edit'); $this->setData('DisplayAsOptions', $displayAsOptions); $this->render(); }
private function category($num = 0) { $str = null; $category = new categoryModel(); foreach ($category->getAllCategory() as $key => $value) { if ($num == $value->id) { $selected = "selected='selected'"; } else { $selected = ''; } $str .= "<option value='" . $value->id . "' " . $selected . ">" . $value->name . "</option>"; } $this->smarty->assign("category", $str); }
private function mall($num = 0) { $category = new categoryModel(); //Tools::dump($nav->getAllProducts()); $str = null; foreach ($category->getAllCategory() as $value) { //Tools::dump($value); $selected = null; if ($num == $value->id) { $selected = "selected='selected'"; } else { $selected = ""; } $str .= "<option value='" . $value->id . "' " . $selected . ">" . $value->name . "</option>"; } $this->smarty->assign("category", $str); }