aboutsummaryrefslogtreecommitdiff
path: root/mod/groups/all.php
blob: 8036abc94d539a918e74a5489f9a3b2af7b3fadb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<?php
	/**
	 * Elgg groups plugin
	 * 
	 * @package ElggGroups
	 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
	 * @author Curverider Ltd
	 * @copyright Curverider Ltd 2008-2009
	 * @link http://elgg.com/
	 */

	require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php");

	$limit = get_input("limit", 10);
	$offset = get_input("offset", 0);
	$tag = get_input("tag");
	$filter = get_input("filter");
	if(!$filter)
		$filter = "newest";
	
	
	// Get objects
	$context = get_context();
	
	set_context('search');
	if ($tag != "")
		$objects = list_entities_from_metadata('tags',$tag,'group',"","", $limit, false);
	else{
		switch($filter){
			case "newest":
			$objects = list_entities('group',"", 0, $limit, false);
			break;
			case "pop":
			$objects = list_entities_by_relationship_count('member');
			break;
			case "active":
			$objects = list_entities_from_annotations("object", "groupforumtopic", "group_topic_post", "", 40, 0, 0, false, true);
			break;
			case 'default':
			$objects = list_entities('group',"", 0, $limit, false);
			break;
		}
	}
	
	//get a group count
	$group_count = get_entities("group", "", 0, "", 10, 0, true, 0, null);
		
	//find groups
	$area1 = elgg_view("groups/find");
	
	//menu options
	$area1 .= elgg_view("groups/side_menu");
	
	//featured groups
	$featured_groups = get_entities_from_metadata("featured_group", "yes", "group", "", 0, 10, false, false, false);	
	$area1 .= elgg_view("groups/featured", array("featured" => $featured_groups));
		
		
	set_context($context);
	
	$title = sprintf(elgg_echo("groups:all"),page_owner_entity()->name);
	$area2 = elgg_view_title($title);
	$area2 .= "<div class='contentWrapper groups'>" . elgg_view("groups/group_sort_menu", array("count" => $group_count, "filter" => $filter));
	$area2 .= $objects . "</div>";
	$body = elgg_view_layout('sidebar_boxes',$area1, $area2);
	
	// Finally draw the page
	page_draw($title, $body);



?>