/**
  * Get a list of articles from a specific category
  *
  * @param   \Joomla\Registry\Registry  &$params  object holding the models parameters
  *
  * @return  mixed
  *
  * @since  1.6
  */
 public static function getList($start, $limit, $catid, $menuparans, $menu_limit)
 {
     // Get an instance of the generic articles model
     $articles = JModelLegacy::getInstance('Articles', 'ContentModel', array('ignore_request' => true));
     // Set application parameters in model
     $app = JFactory::getApplication();
     $appParams = $app->getParams();
     $articles->setState('params', $appParams);
     // Set the filters based on the module params
     $articles->setState('list.start', (int) $start);
     $articles->setState('list.limit', (int) $limit);
     $articles->setState('filter.published', 1);
     // Access filter
     $access = !JComponentHelper::getParams('com_content')->get('show_noauth');
     $authorised = JAccess::getAuthorisedViewLevels(JFactory::getUser()->get('id'));
     $articles->setState('filter.access', $access);
     $catids = $catid;
     $items = 'nao';
     // Category filter
     if ($catids) {
         if ($menuparans['show_subcategory_content'] > 0 || $menuparans['show_subcategory_content'] == '-1') {
             $categories = JModelLegacy::getInstance('Categories', 'ContentModel', array('ignore_request' => true));
             $categories->setState('params', $appParams);
             $levels = $menuparans['show_subcategory_content'] != '-1' ? $menuparans['show_subcategory_content'] : 99999;
             $categories->setState('filter.subcategories', $levels);
             $categories->setState('filter.max_category_levels', true);
             //$categories->setState('filter.get_children', $levels);
             $categories->setState('filter.published', 1);
             $categories->setState('filter.access', $access);
             $additional_catids = array();
             $categories->setState('filter.parentId', $catids);
             $recursive = true;
             $items = $categories->getItems($recursive);
             $testes = array();
             if ($items) {
                 foreach ($items as $category) {
                     ///$additional_catids[] = $category->id;
                     $condition = $category->level - $categories->getParent()->level <= $levels;
                     //$testes[] = $category->level.' - '.$categories->getParent()->level.'<= '.$levels;
                     if ($condition) {
                         $additional_catids[] = $category->id;
                     }
                 }
             }
             $catids = array($catids);
             $catids = array_unique(array_merge($catids, $additional_catids));
             $items = $catids;
         }
         $articles->setState('filter.category_id', $catids);
     }
     $items = $articles->getItems();
     $testes['menuparans'] = array('orderby_sec' => $menuparans['orderby_sec'], 'order_date' => $menuparans['order_date'], 'orderby_pri' => $menuparans['orderby_pri']);
     $testes['buildContentOrderBy'] = BlogHelper::_buildContentOrderBy($menuparans);
     // Ordering
     $articles->setState('list.ordering', BlogHelper::_buildContentOrderBy($menuparans));
     $listOrder = $app->getUserStateFromRequest('com_content.category.list.' . $catid . '.filter_order_Dir', 'filter_order_Dir', '', 'cmd');
     if (!in_array(strtoupper($listOrder), array('ASC', 'DESC', ''))) {
         $listOrder = 'ASC';
     }
     $articles->setState('list.direction', $listOrder);
     $items = $articles->getItems();
     // Find current Article ID if on an article page
     $option = $app->input->get('option');
     $view = $app->input->get('view');
     if ($option === 'com_content' && $view === 'article') {
         $active_article_id = $app->input->getInt('id');
     } else {
         $active_article_id = 0;
     }
     // Prepare data for display using display options
     foreach ($items as &$item) {
         $item->slug = $item->id . ':' . $item->alias;
         $item->catslug = $item->catid . ':' . $item->category_alias;
         if ($access || in_array($item->access, $authorised)) {
             // We know that user has the privilege to view the article
             $item->link = JRoute::_(ContentHelperRoute::getArticleRoute($item->slug, $item->catid, $item->language));
         } else {
             $app = JFactory::getApplication();
             $menu = $app->getMenu();
             $menuitems = $menu->getItems('link', 'index.php?option=com_users&view=login');
             if (isset($menuitems[0])) {
                 $Itemid = $menuitems[0]->id;
             } elseif ($app->input->getInt('Itemid') > 0) {
                 // Use Itemid from requesting page only if there is no existing menu
                 $Itemid = $app->input->getInt('Itemid');
             }
             $item->link = JRoute::_('index.php?option=com_users&view=login&Itemid=' . $Itemid);
         }
         // Used for styling the active article
         $item->active = $item->id == $active_article_id ? 'active' : '';
         $item->displayDate = '';
         if ($item->catid) {
             $item->displayCategoryLink = JRoute::_(ContentHelperRoute::getCategoryRoute($item->catid));
             //$item->displayCategoryTitle = $show_category ? '<a href="' . $item->displayCategoryLink . '">' . $item->category_title . '</a>' : '';
         } else {
             //$item->displayCategoryTitle = $show_category ? $item->category_title : '';
         }
     }
     return $items;
 }