public static function getRegionsSortParent() { if (!self::$_regions_sort_parent) { self::$_regions_sort_parent = array(); } if (self::$_regions_sort_parent) { return self::$_regions_sort_parent; } $db = JFactory::getDBO(); $query = "SELECT r.*, rr.name as parent_name FROM #__djcf_regions r " . "LEFT JOIN #__djcf_regions rr ON r.parent_id=rr.id " . "ORDER BY r.parent_id, r.name COLLATE utf8_polish_ci "; $db->setQuery($query); $allregions = $db->loadObjectList('id'); //echo '<pre>';print_r($db);print_r($this->_allregions);die(); //echo '<pre>';print_r($this->_allregions); $regions = array(); foreach ($allregions as $reg) { if (!isset($regions[$reg->parent_id])) { $regions[$reg->parent_id] = array(); } $regions[$reg->parent_id][] = $reg; } self::$_regions_sort_parent = $regions; //echo '<pre>';print_r($regions);die(); return $regions; }
public static function getRegionsSortParent() { if (!self::$_regions_sort_parent) { self::$_regions_sort_parent = array(); } if (self::$_regions_sort_parent) { return self::$_regions_sort_parent; } $db = JFactory::getDBO(); $date_now = date("Y-m-d H:i:s"); $query = "SELECT r.*, rr.name as parent_name,IFNULL(i.items_count,0) items_count FROM #__djcf_regions r " . "LEFT JOIN #__djcf_regions rr ON r.parent_id=rr.id " . "LEFT JOIN (SELECT i.region_id, count(i.id) as items_count " . "FROM #__djcf_items i WHERE i.published=1 AND i.date_exp > '" . $date_now . "' GROUP BY i.region_id) i ON i.region_id=r.id " . "ORDER BY r.parent_id, r.name COLLATE utf8_polish_ci "; $db->setQuery($query); $allregions = $db->loadObjectList('id'); //echo '<pre>';print_r($db);print_r($this->_allregions);die(); //echo '<pre>';print_r($allregions);die(); $regions = array(); foreach ($allregions as $reg) { if (!isset($regions[$reg->parent_id])) { $regions[$reg->parent_id] = array(); } $regions[$reg->parent_id][] = $reg; } self::$_regions_sort_parent = $regions; //echo '<pre>';print_r($regions);die(); return $regions; }