| Server IP : 172.67.178.83 / Your IP : 216.73.217.141 Web Server : Apache System : Linux hosting01.arsenalhost.com 4.18.0-425.13.1.lve.el8.x86_64 #1 SMP Mon Feb 27 15:23:24 EST 2023 x86_64 User : corbizre ( 1013) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /home/corbizre/gotofindhomes.com3/components/Menu/Controllers/ |
Upload File : |
<?php
/**
* Documentation
* @author
* @category
* @package
* @subpackage
* @copyright Copyright (c) 2005-2009 ITCrimea Ukraine Inc. (http://www.itcrimea.com)
* @license
*/
class Menu_ItemController extends System_Controller_Db_Table {
/**
* Documentation
* @author
* @return mixed
*/
function init() {
$helperContextSwitch = Zend_Controller_Action_HelperBroker::getStaticHelper('ContextSwitch');
$helperContextSwitch->addActionContext('itemlist', array('xml', 'json', 'table', 'options', 'ul'));
$helperContextSwitch->addActionContext('itemorder', array('xml', 'json', 'table', 'options', 'ul'));
parent::init();
}
/**
* Documentation
* @author
* @return mixed
*/
function getlistreferencedAction() {
$select = $this->_model->select();
if ($MenuID = $this->getRequest()->getParam('menuid')) {
$select->where('MenuID = ?', $MenuID);
}
$select->order('ID ASC');
$this->view->rows = $this->_model->fetchAll($select)->toArray();
$this->render('getlist');
}
/**
* Индех
* @author [email protected]
* @return mixed
*/
function getlistAction() {
$paramMenuID = $this->getRequest()->getParam('Menu_ID');
if ($paramMenuID === NULL) {
throw new Zend_Exception('Param Menu_ID should be defined for deleteAction');
}
$paramSort = $this->getRequest()->getParam('sort');
$paramDir = $this->getRequest()->getParam('dir');
$paramResults = $this->getRequest()->getParam('results', 20);
$this->getRequest()->setParam('sort', 'Order');
// $this->getRequest()->setParam('dir');
$this->getRequest()->setParam('results', 200);
$this->_selectCount->where('MenuID = ?', $paramMenuID);
$this->_select->where('MenuID = ?', $paramMenuID);
if ($paramSort) {
$this->_select->order($paramSort . ' ' . $paramDir);
}
$this->_select->order('ParentID');
parent::getlistAction();
$this->view->sort = $paramSort;
$this->view->MenuID = $paramMenuID;
$this->view->results = $paramResults;
$this->view->CompanyID = $this->getRequest()->getParam('CompanyID');
}
function changestatusAction() {
$paramID = $this->getRequest()->getParam('ID', $this->getRequest()->getParam('id'));
$paramStatus = $this->getRequest()->getParam('status', 0);
$paramMenuID = $this->getRequest()->getParam('Menu_ID', 0);
if ($paramID === NULL) {
throw new Zend_Exception('Param ID should be defined for changestatusAction');
}
if (is_array($paramID)) {
$paramID = implode(',', $paramID);
}
$this->_select->where('ID IN ?', new Zend_Db_Expr('(' . $paramID . ')'));
$objectMenuItems = $this->_model->fetchAll($this->_select);
if (is_object($objectMenuItems) && $objectMenuItems->count()) {
foreach ($objectMenuItems as $item) {
if ($paramMenuID == 0) {
$paramMenuID = $item->MenuID;
}
$item->Status = $paramStatus;
$item->save();
}
}
$this->view->MenuID = $paramMenuID;
}
function changeorderAction() {
$paramID = $this->getRequest()->getParam('ID', $this->getRequest()->getParam('id'));
$paramOrders = $this->getRequest()->getParam('order', 0);
$paramMenuID = $this->getRequest()->getParam('Menu_ID', 0);
if ($paramID === NULL) {
throw new Zend_Exception('Param ID should be defined for changeorderAction');
}
if (is_array($paramID)) {
$paramID = implode(',', $paramID);
}
$this->_select->where('ID IN ?', new Zend_Db_Expr('(' . $paramID . ')'));
$objectMenuItems = $this->_model->fetchAll($this->_select);
if (is_object($objectMenuItems) && $objectMenuItems->count()) {
foreach ($objectMenuItems as $item) {
if ($paramMenuID == 0) {
$paramMenuID = $item->MenuID;
}
$item->Order = $paramOrders[$item->ID];
$item->save();
}
}
$this->view->MenuID = $paramMenuID;
}
function deleteAction() {
$paramID = $this->getRequest()->getParam('ID', $this->getRequest()->getParam('id'));
$paramMenuID = $this->getRequest()->getParam('Menu_ID', 0);
if ($paramID === NULL) {
throw new Zend_Exception('Param ID should be defined for deleteAction');
}
if (is_array($paramID)) {
$paramID = implode(',', $paramID);
}
$this->_select->where('ID IN ?', new Zend_Db_Expr('(' . $paramID . ')'));
$objectMenuItems = $this->_model->fetchAll($this->_select);
if (is_object($objectMenuItems) && $objectMenuItems->count()) {
foreach ($objectMenuItems as $item) {
if ($paramMenuID == 0) {
$paramMenuID = $item->MenuID;
}
$item->delete();
}
}
$this->view->MenuID = $paramMenuID;
}
/**
* Вывод формы редактирования. Обработка _POST данных.
* @author [email protected]
* @return void
*/
function editAction() {
$paramItemID = $this->getRequest()->getParam('ID', $this->getRequest()->getParam('id'));
$paramSubmit = $this->getRequest()->getParam('submitform');
$paramUserID = $this->getRequest()->getParam('User_ID');
$paramMenuID = $this->getRequest()->getParam('Menu_ID');
if (!$paramItemID) {
$objectMenuItem = $this->_model->createRow();
$objectMenuItem->MenuID = $paramMenuID;
} else {
$objectMenuItem = $this->_model->find($paramItemID)->current();
}
$form = $this->getForm();
$this->view->MenuID = $paramMenuID;
if ($this->getRequest()->isPost()) {
$isValid = $form->isValid($_POST);
$Type = $form->getValue('Type');
if ($Type == 'internal') {
$form->getElement('Module')->setRequired(TRUE);
$form->getElement('Controller')->setRequired(TRUE);
$form->getElement('Action')->setRequired(TRUE);
$form->getElement('Route')->setRequired(TRUE);
}
$isValid = $form->isValid($_POST);
if ($isValid) {
if ($objectMenuItem->User_ID == 0) {
$objectMenuItem->User_ID = $paramUserID;
}
foreach (array_keys($this->_modelMetaData) as $ColumnName) {
if ($form->getValue($ColumnName)) {
$objectMenuItem->$ColumnName = $form->getValue($ColumnName);
}
}
$objectMenuItem->save();
if (!$this->_request->isXmlHttpRequest())
$this->addOkMessage('Menu Item has been successfully saved');
if ($paramSubmit == 'save') {
$this->render('edit-success');
}
} else {
$this->addErrorMessage('Some information is incorrect or missing. Please correct your entries and try again.');
}
} else {
$form->setDefaults($objectMenuItem->toArray());
}
$this->view->MenuItem = $objectMenuItem->toArray();
$this->view->form = $form;
}
function itemlistAction() {
$rows = array();
$paramMenuID = $this->getRequest()->getParam('Menu_ID');
$paramItemID = $this->getRequest()->getParam('ItemID', 0);
$paramItemParentID = $this->getRequest()->getParam('ParentID', 0);
$this->_select->where('MenuID = ?', $paramMenuID);
$this->_select->where('ID != ?', $paramItemID);
$this->_select->order('ParentID');
$this->_select->order('Order');
$objectMenuItem = $this->_model->fetchAll($this->_select);
if (is_object($objectMenuItem) && $objectMenuItem->count()) {
$arrayRows = $objectMenuItem->toArray();
$children = array();
foreach ($arrayRows as $key => $row) {
$pt = $row['ParentID'];
$list = @$children[$pt] ? $children[$pt] : array();
array_push($list, $row);
$children[$pt] = $list;
}
$rows = Menu_Item::treerequrse(0, array(), $children, ' ', 0);
}
$this->view->rows = $rows;
$this->view->ItemParentID = $paramItemParentID;
}
function itemorderAction() {
$paramMenuID = $this->getRequest()->getParam('Menu_ID');
$paramParentID = $this->getRequest()->getParam('ParentID', 0);
$paramItemID = $this->getRequest()->getParam('ItemID', 0);
$this->_select->where('MenuID = ?', $paramMenuID);
$this->_select->where('ParentID = ?', $paramParentID);
$this->_select->order('Order');
$objectItems = $this->_model->fetchAll($this->_select);
$this->view->rows = $objectItems->toArray();
$this->view->ItemID = $paramItemID;
}
function mainmenuAction() {
$paramMenuID = $this->getRequest()->getParam('Menu_ID');
$paramItemID = $this->getRequest()->getParam('ItemID');
$row = array();
if ($paramMenuID) {
$tableMenu = new Menu_Table();
$objectMenu = $tableMenu->find($paramMenuID)->current();
if (is_object($objectMenu)) {
$row = $objectMenu->toArray();
}
} elseif ($paramItemID) {
$objectMenuItem = $this->_model->find($paramItemID)->current();
if (is_object($objectMenuItem)) {
$objectMenu = $objectMenuItem->findParentRow('Menu_Table');
$row = $objectMenu->toArray();
}
} else {
throw new Zend_Exception('Param ItemID or Menu_ID should be defined for mainmenuAction');
}
$this->view->row = $row;
}
}