public function addAction() { $request = $this->getRequest(); $this->view->defaultModule = $this->_defaultModule; $sourceId = $request->getParam('source_id'); $sourceCategory = null == $sourceId ? null : Modules_Category_Services_Category::getById($sourceId); $this->view->sourceCategory = $sourceCategory; $this->view->lang = $request->getParam('lang'); $conn = Gio_Db_Connection::getConnection(); $categoryDao = new Modules_Category_Models_Mysql_Category(); $categoryDao->setConnection($conn); $this->view->categoryDao = $categoryDao; if ($request->isPost()) { $user = Gio_Core_Session::getUser(); $categoryData = $request->getPost('category'); $categoryData = Modules_Category_Services_Category::validate($categoryData); if (isset($categoryData['messages_error']) && $categoryData['messages_error']) { $this->view->errorMessages = $categoryData['messages']; $this->view->categoryData = $categoryData; return; } $parentCategory = null; if ($categoryData['parent_id']) { $parentCategory = Modules_Category_Services_Category::getById($categoryData['parent_id']); } $path = $parentCategory && $parentCategory['category_path'] ? $parentCategory['category_path'] . '/' . $categoryData['slug'] : $categoryData['slug']; $category = array('name' => $this->view->STRING->escape($categoryData['name']), 'slug' => $this->view->STRING->escape($categoryData['slug']), 'category_path' => $this->view->STRING->escape($path), 'meta' => $this->view->STRING->escape($categoryData['meta']), 'status' => $this->view->STRING->escape($categoryData['status']), 'module_id' => $this->view->STRING->escape($categoryData['module_id']), 'parent_id' => $this->view->STRING->escape($categoryData['parent_id']), 'language' => $this->view->STRING->escape($categoryData['language']), 'status' => $this->view->STRING->escape($categoryData['status']), 'created_date' => date('Y-m-d H:i:s'), 'modified_date' => date('Y-m-d H:i:s'), 'user_id' => $user['user_id']); $sourceItem = isset($categoryData['source_item']) ? $categoryData['source_item'] : null; $categoryId = Modules_Category_Services_Category::add($category, $sourceItem); Gio_Core_Messenger::getInstance()->addMessage($this->view->TRANSLATOR->translator('category_actions_add_success')); $this->redirect($this->view->url('category_category_add')); } }
public static function getSource($category) { $conn = Gio_Db_Connection::getConnection(); $dao = new Modules_Category_Models_Mysql_Category(); $dao->setConnection($conn); return $dao->getSource($category); }