allForGroup() public static method

public static allForGroup ( $group_id )
Ejemplo n.º 1
0
 public static function allForGroup($group_id)
 {
     $categories = static::all();
     $forums = Forum::allForGroup($group_id);
     /*usort($forums, function($forum1, $forum2) {
     			if ($forum1->cat_id == $forum2->cat_id)
     			{
     				// Same category: forum's disp_position value decides
     				return $forum1->disp_position - $forum2->disp_position;
     			}
     			else
     			{
     				// ...else the categories' disp_position values are compared
     				return $categories[$forum1->cat_id]->disp_position - $categories[$forum2->cat_id]->disp_position;
     			}
     		});*/
     // TODO: Handle sorting!
     // FIXME: Yuck!!!
     $forums_by_cat = array();
     foreach ($forums as $forum) {
         if (!isset($forums_by_cat[$forum->cat_id])) {
             $forums_by_cat[$forum->cat_id] = array('category' => $categories[$forum->cat_id], 'forums' => array());
         }
         $forums_by_cat[$forum->cat_id]['forums'][] = $forum;
     }
     return $forums_by_cat;
 }