aboutsummaryrefslogtreecommitdiff
path: root/friends/pickercallback.php
blob: 26a8718a00ccf8ef9daa52d0a55d4c3c288eb7e1 (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
<?php

	/**
	 * Elgg friends picker callback
	 * 
	 * @package Elgg
	 * @subpackage Core
	 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
	 * @author Curverider Ltd
	 * @copyright Curverider Ltd 2008
	 * @link http://elgg.org/
	 */

	// Load Elgg engine
		require_once(dirname(dirname(__FILE__)) . "/engine/start.php");
		global $CONFIG;

	// Get callback type (list or picker)
		$type = get_input('type','picker');
		
	// Get list of members if applicable
		/*$members = get_input('members','');
		if (!empty($members)) {
			$members = explode(',',$members);
		} else {
			$members = array();
		}*/
		$collection = (int) get_input('collection',0);
		$members = get_members_of_access_collection($collection, true);
		if (!$members) $members = array();
		
		$friendspicker = (int) get_input('friendspicker',0);
		
	// Get page owner (bomb out if there isn't one)
		$pageowner = page_owner_entity();
		if (!$pageowner) { forward(); exit; }
		
	// Depending on the view type, launch a different view
		switch($type) {
			
			case 'list':		
								$js_segment = elgg_view('friends/tablelistcountupdate',array('friendspicker' => $friendspicker, 'count' => sizeof($members)));
								$content = elgg_view('friends/tablelist',array('entities' => $members, 'content' => $js_segment));
								break;
			default:			$friends = $pageowner->getFriends('',9999);
								$content = elgg_view('friends/picker',array(
												'entities' => $friends,
												'value' => $members,
												'callback' => true,
												'friendspicker' => $friendspicker,
												'formcontents' => elgg_view('friends/forms/collectionfields',array('collection' => get_access_collection($collection))),
												'formtarget' => $CONFIG->wwwroot . 'action/friends/editcollection', 
																			));
								break;
			
		}
		
	// Output the content
		echo $content;
		
?>