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
|
<?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-2010
* @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 = "active";
// 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 = elgg_list_entities(array('types' => 'group', 'owner_guid' => 0, 'limit' => $limit, 'full_view' => false));
break;
case "pop":
$objects = list_entities_by_relationship_count('member', true, "", "", 0, $limit, false);
break;
case "active":
$objects = list_entities_from_annotations("object", "groupforumtopic", "group_topic_post", "", 40, 0, 0, false, true);
break;
case 'default':
$objects = elgg_list_entities(array('types' => 'group', 'limit' => $limit, 'full_view' => FALSE));
break;
}
}
//get a group count
$group_count = elgg_get_entities(array('types' => 'group', 'limit' => 10, 'count' => TRUE));
//find groups
$area1 = elgg_view("groups/find");
//menu options
$area1 .= elgg_view("groups/side_menu");
//featured groups
$featured_groups = elgg_get_entities_from_metadata(array('metadata_name' => 'featured_group', 'metadata_value' => 'yes', 'types' => 'group', 'limit' => 10));
$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 .= elgg_view('groups/contentwrapper', array('body' => elgg_view("groups/group_sort_menu", array("count" => $group_count, "filter" => $filter)) . $objects));
$body = elgg_view_layout('sidebar_boxes',$area1, $area2);
// Finally draw the page
page_draw($title, $body);
?>
|