Server : Apache System : Linux indy02.toastserver.com 3.10.0-962.3.2.lve1.5.85.el7.x86_64 #1 SMP Thu Apr 18 15:18:36 UTC 2024 x86_64 User : palandch ( 1163) PHP Version : 7.1.33 Disable Function : NONE Directory : /home/palandch/www/core/model/modx/processors/system/menu/ |
<?php /** * Get a list of menu items * * @param integer $start (optional) The record to start at. Defaults to 0. * @param integer $limit (optional) The number of records to limit to. Defaults * to 10. * @param string $sort (optional) The column to sort by. Defaults to menuindex. * @param string $dir (optional) The direction of the sort. Defaults to ASC. * * @package modx * @subpackage processors.system.menu */ if (!$modx->hasPermission('menus')) return $modx->error->failure($modx->lexicon('permission_denied')); $modx->lexicon->load('action','menu','topmenu'); /* setup default properties */ $isLimit = !empty($scriptProperties['limit']); $start = $modx->getOption('start',$scriptProperties,0); $limit = $modx->getOption('limit',$scriptProperties,10); $sort = $modx->getOption('sort',$scriptProperties,'menuindex'); $dir = $modx->getOption('dir',$scriptProperties,'ASC'); /* get menus */ $c = $modx->newQuery('modMenu'); $c->sortby($scriptProperties['sort'],$scriptProperties['dir']); if ($isLimit) $c->limit($scriptProperties['limit'],$scriptProperties['start']); $menus = $modx->getCollection('modMenu',$c); $count = $modx->getCount('modMenu'); $list = array(); foreach ($menus as $menu) { $menuArray = $menu->toArray(); $menuArray['text_lex'] = $modx->lexicon($menuArray['text']); $list[] = $menuArray; } return $this->outputArray($list,$count);