diff options
Diffstat (limited to 'views/default')
| -rw-r--r-- | views/default/friends/collection.php | 6 | ||||
| -rw-r--r-- | views/default/friends/collectiontabs.php | 19 | ||||
| -rw-r--r-- | views/default/friends/forms/collectionfields.php | 23 | ||||
| -rw-r--r-- | views/default/friends/forms/edit.php | 7 | ||||
| -rw-r--r-- | views/default/friends/picker.php | 69 | 
5 files changed, 94 insertions, 30 deletions
diff --git a/views/default/friends/collection.php b/views/default/friends/collection.php index 8d8afd7d1..438d82e8c 100644 --- a/views/default/friends/collection.php +++ b/views/default/friends/collection.php @@ -36,16 +36,14 @@          	// individual collection panels
          	if($friends = $vars['collection']->entities){
 -        		$members = $vars['collection']->members;
 -        		$implodedmemberslist = implode(',',$members);
 -        		$content = elgg_view('friends/collectiontabs', array('members' => $members, 'friends' => $friends, 'collection' => $vars['collection'], 'friendspicker' => $vars['friendspicker']));
 +        		$content = elgg_view('friends/collectiontabs', array('owner' => $_SESSION['user'], 'collection' => $vars['collection'], 'friendspicker' => $vars['friendspicker']));
  				echo elgg_view('friends/picker',array('entities' => $friends, 'value' => $members, 'content' => $content, 'replacement' => '', 'friendspicker' => $vars['friendspicker']));
  				?>
  <script type="text/javascript">
  $(document).ready(function () {
 -		$('#friends_picker_placeholder<?php echo $vars['friendspicker']; ?>').load('<?php echo $vars['url']; ?>friends/pickercallback.php?username=<?php echo $_SESSION['user']->username; ?>&type=list&members=<?php echo $implodedmemberslist; ?>');
 +		$('#friends_picker_placeholder<?php echo $vars['friendspicker']; ?>').load('<?php echo $vars['url']; ?>friends/pickercallback.php?username=<?php echo $_SESSION['user']->username; ?>&type=list&collection=<?php echo $vars['collection']->id; ?>');
      });
  </script>
 diff --git a/views/default/friends/collectiontabs.php b/views/default/friends/collectiontabs.php index 1e40dd584..cdeb6b798 100644 --- a/views/default/friends/collectiontabs.php +++ b/views/default/friends/collectiontabs.php @@ -2,19 +2,8 @@  	$friendspicker = $vars['friendspicker'];
 -	if (isset($vars['members'])) {
 -		$members = implode(',',$vars['members']);
 -	} else {
 -		$members = "";
 -	}
 -	
 -	$friends = "";
 -	if (isset($vars['friends'])) {
 -		foreach($vars['friends'] as $friend) {
 -			if (!empty($friends)) $friends .= ",";
 -			$friends .= $friend->getGUID();
 -		}
 -	}
 +	$collectionid = $vars['collection']->id;
 +	$ownerid = $vars['owner']->getGUID();
  ?>
 @@ -32,7 +21,7 @@ $(document).ready(function () {  	$('a.collectionmembers<?php echo $friendspicker; ?>').click(function () {
  		// load collection members pane
 -		$('#friends_picker_placeholder<?php echo $friendspicker; ?>').load('<?php echo $vars['url']; ?>friends/pickercallback.php?username=<?php echo $_SESSION['user']->username; ?>&type=list&members=<?php echo $members; ?>');
 +		$('#friends_picker_placeholder<?php echo $friendspicker; ?>').load('<?php echo $vars['url']; ?>friends/pickercallback.php?username=<?php echo $_SESSION['user']->username; ?>&type=list&collection=<?php echo $collectionid; ?>');
  		// remove selected state from previous tab
  		$(this).parent().parent().find("li.selected").removeClass("selected");
 @@ -44,7 +33,7 @@ $(document).ready(function () {  	$('a.editmembers<?php echo $friendspicker; ?>').click(function () {
  		// load friends picker pane
 -		$('#friends_picker_placeholder<?php echo $friendspicker; ?>').load('<?php echo $vars['url']; ?>friends/pickercallback.php?username=<?php echo $_SESSION['user']->username; ?>&type=picker&members=<?php echo $members; ?>&friends=<?php echo $friends; ?>&friendspicker=<?php echo $friendspicker; ?>');
 +		$('#friends_picker_placeholder<?php echo $friendspicker; ?>').load('<?php echo $vars['url']; ?>friends/pickercallback.php?username=<?php echo $_SESSION['user']->username; ?>&type=picker&collection=<?php echo $collectionid; ?>&friendspicker=<?php echo $friendspicker; ?>');
  		// remove selected state from previous tab
  		$(this).parent().parent().find("li.selected").removeClass("selected");
 diff --git a/views/default/friends/forms/collectionfields.php b/views/default/friends/forms/collectionfields.php new file mode 100644 index 000000000..ef3c367e3 --- /dev/null +++ b/views/default/friends/forms/collectionfields.php @@ -0,0 +1,23 @@ +<?php
 +
 +	/**
 +	 * Elgg friend collections required hidden fields for js friends picker form 
 +	 * 
 +	 * @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/
 +	 */
 +
 +		if (isset($vars['collection'])) {
 +?>
 +
 +		<input type="hidden" name="collection_id" value="<?php echo $vars['collection']->id; ?>" />
 +
 +<?php
 +
 +		}
 +
 +?>
\ No newline at end of file diff --git a/views/default/friends/forms/edit.php b/views/default/friends/forms/edit.php index 6ed58d5bf..7c8a3f455 100644 --- a/views/default/friends/forms/edit.php +++ b/views/default/friends/forms/edit.php @@ -3,11 +3,12 @@  	/**
  	 * Elgg friend collections add/edit 
  	 * 
 -	 * @package ElggFriends
 +	 * @package Elgg
 +	 * @subpackage Core
  	 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
 -	 * @author Dave Tosh <dave@elgg.com>
 +	 * @author Curverider Ltd
  	 * @copyright Curverider Ltd 2008
 -	 * @link http://elgg.com/
 +	 * @link http://elgg.org/
  	 * 
  	 * @uses $vars['object'] Optionally, the collection edit
  	 */
 diff --git a/views/default/friends/picker.php b/views/default/friends/picker.php index 94211f49b..d813e6fe7 100644 --- a/views/default/friends/picker.php +++ b/views/default/friends/picker.php @@ -49,6 +49,14 @@  		$users = array();  		$activeletters = array(); +		
 +	// Are we displaying form tags and submit buttons?
 +	// (If we've been given a target, then yes! Otherwise, no.)
 +		if (isset($vars['formtarget'])) {
 +			$formtarget = $vars['formtarget'];
 +		} else {
 +			$formtarget = false;
 +		}
  	// Sort users by letter  		if (is_array($vars['entities']) && sizeof($vars['entities'])) @@ -85,10 +93,40 @@  	}  	if (!isset($vars['replacement'])) { -	 +	
 +		if ($formtarget) {  ?> +
 +	<script language="text/javascript">
 +		$(function() { // onload...do
 +		$('#collectionMembersForm<?php echo $friendspicker; ?>').submit(function() {
 +			var inputs = [];
 +			$(':input', this).each(function() {
 +				inputs.push(this.name + '=' + escape(this.value));
 +			});
 +			jQuery.ajax({
 +				type: "POST",
 +				data: inputs.join('&'),
 +				url: this.action,
 +				success: function(){
 +     				$('a.collectionmembers<?php echo $friendspicker; ?>').click();
 +   				}
 +
 +			});
 +			return false;
 +        })
 +      })
 +
 +	</script>
 - +	<!-- Collection members form -->
 +	<form id="collectionMembersForm<?php echo $friendspicker; ?>" action="<?php echo $formtarget; ?>" method="post"> <!-- action="" method=""> --> +
 +<?php
 +
 +		}
 +
 +?>
  	<div class="friendsPicker_wrapper">  	<div id="friendsPicker<?php echo $friendspicker; ?>"> @@ -171,12 +209,27 @@  		}  ?> -		</div> -		<!-- Collection members form --> -		<form id="collectionMembersForm"> <!-- action="" method=""> --> -		<input type="submit" class="submit_button" value="Save changes" onclick="$('a.collectionmembers<?php echo $friendspicker; ?>').click();"/> -		<input type="button" class="cancel_button" value="Cancel" onclick="$('a.collectionmembers<?php echo $friendspicker; ?>').click();" /> -		</form> +		</div>
 +		
 +<?php
 +
 +	if ($formtarget) {
 +
 +		if (isset($vars['formcontents']))
 +			echo $vars['formcontents'];
 +		
 +?> +		<input type="submit" class="submit_button" value="<?php echo elgg_echo('save'); ?>" />
 +		<!--  onclick="$('a.collectionmembers<?php echo $friendspicker; ?>').click();"  --> +		<input type="button" class="cancel_button" value="<?php echo elgg_echo('cancel'); ?>" onclick="$('a.collectionmembers<?php echo $friendspicker; ?>').click();" /> +		</form>
 +		
 +<?php
 +
 +	}
 +
 +?>
 +		  	</div>  	</div>  | 
