diff options
Diffstat (limited to 'views/default/core/friends')
| -rw-r--r-- | views/default/core/friends/collection.php | 36 | ||||
| -rw-r--r-- | views/default/core/friends/collections.php | 19 | ||||
| -rw-r--r-- | views/default/core/friends/collectiontabs.php | 33 | ||||
| -rw-r--r-- | views/default/core/friends/picker.php | 329 | ||||
| -rw-r--r-- | views/default/core/friends/tablelist.php | 8 | ||||
| -rw-r--r-- | views/default/core/friends/tablelistcountupdate.php | 2 |
6 files changed, 56 insertions, 371 deletions
diff --git a/views/default/core/friends/collection.php b/views/default/core/friends/collection.php index bfe88a166..1a330af01 100644 --- a/views/default/core/friends/collection.php +++ b/views/default/core/friends/collection.php @@ -1,13 +1,10 @@ <?php /** - * Elgg friends collection - * Lists one of a user's friends collections + * View a friends collection * * @package Elgg * @subpackage Core * - * @see collections.php - * * @uses $vars['collection'] The individual friends collection */ @@ -25,8 +22,10 @@ echo "<li><h2>"; if ($coll->owner_guid == elgg_get_logged_in_user_guid()) { echo "<div class=\"friends_collections_controls\">"; echo elgg_view('output/confirmlink', array( - 'href' => 'action/friends/deletecollection?collection=' . $coll->id, - 'class' => 'delete_collection' + 'href' => 'action/friends/collections/delete?collection=' . $coll->id, + 'class' => 'delete_collection', + 'text' => elgg_view_icon('delete'), + 'encode_text' => false, )); echo "</div>"; } @@ -34,16 +33,27 @@ echo $coll->name; echo " (<span id=\"friends_membership_count{$vars['friendspicker']}\">{$count}</span>) </h2>"; // individual collection panels -if ($friends = $vars['collection']->entities) { - $content = elgg_view('core/friends/collectiontabs', array('owner' => elgg_get_logged_in_user_entity(), 'collection' => $vars['collection'], 'friendspicker' => $vars['friendspicker'])); - - echo elgg_view('core/friends/picker', array('entities' => $friends, 'value' => $members, 'content' => $content, 'replacement' => '', 'friendspicker' => $vars['friendspicker'])); - ?> +$friends = $vars['collection']->entities; +if ($friends) { + $content = elgg_view('core/friends/collectiontabs', array( + 'owner' => elgg_get_logged_in_user_entity(), + 'collection' => $vars['collection'], + 'friendspicker' => $vars['friendspicker'], + )); + echo elgg_view('input/friendspicker', array( + 'entities' => $friends, + 'value' => $vars['collection']->members, + 'content' => $content, + 'replacement' => '', + 'friendspicker' => $vars['friendspicker'], + )); +?> +<?php //@todo JS 1.8: no ?> <script type="text/javascript"> - $(document).ready(function () { + $(function () { - $('#friends-picker_placeholder<?php echo $vars['friendspicker']; ?>').load('<?php echo elgg_get_site_url(); ?>pages/friends/pickercallback.php?username=<?php echo elgg_get_logged_in_user_entity()->username; ?>&type=list&collection=<?php echo $vars['collection']->id; ?>'); + $('#friends-picker_placeholder<?php echo $vars['friendspicker']; ?>').load(elgg.config.wwwroot + 'pages/friends/collections/pickercallback.php?username=<?php echo elgg_get_logged_in_user_entity()->username; ?>&type=list&collection=<?php echo $vars['collection']->id; ?>'); }); </script> diff --git a/views/default/core/friends/collections.php b/views/default/core/friends/collections.php index 6554059b1..c6ee082c8 100644 --- a/views/default/core/friends/collections.php +++ b/views/default/core/friends/collections.php @@ -9,17 +9,16 @@ * @uses $vars['collections'] The array of friends collections */ -if (!isset($friendspicker)) { - $friendspicker = 0; -} - - if (is_array($vars['collections']) && sizeof($vars['collections'])) { echo "<ul id=\"friends_collections_accordian\">"; - foreach($vars['collections'] as $collection) { + $friendspicker = 0; + foreach ($vars['collections'] as $collection) { $friendspicker++; - echo elgg_view('core/friends/collection', array('collection' => $collection, 'friendspicker' => $friendspicker)); + echo elgg_view('core/friends/collection', array( + 'collection' => $collection, + 'friendspicker' => $friendspicker, + )); } echo "</ul>"; @@ -29,11 +28,11 @@ if (is_array($vars['collections']) && sizeof($vars['collections'])) { } ?> - +<?php //@todo JS 1.8: no ?> <script> -$(document).ready(function(){ +$(function(){ $('#friends_collections_accordian h2').click(function () { - $(this.parentNode).children("[class=friends-picker]").slideToggle("fast"); + $(this.parentNode).children("[class=friends-picker-main-wrapper]").slideToggle("fast"); //return false; }); }); diff --git a/views/default/core/friends/collectiontabs.php b/views/default/core/friends/collectiontabs.php index c8d0deb67..bf12e0edb 100644 --- a/views/default/core/friends/collectiontabs.php +++ b/views/default/core/friends/collectiontabs.php @@ -16,38 +16,43 @@ $ownerid = $vars['owner']->getGUID(); ?> -<div id="elgg-tabs"> -<ul> -<li class="selected"><a href="#" class="collectionmembers<?php echo $friendspicker; ?>"><?php echo elgg_echo('friends:collections:members'); ?></a></li> - -<li><a href="#" class="editmembers<?php echo $friendspicker; ?>"><?php echo elgg_echo('friends:collections:edit'); ?></a></li> - +<ul class="elgg-tabs"> + <li class="elgg-state-selected"> + <a href="#" class="collectionmembers<?php echo $friendspicker; ?>"> + <?php echo elgg_echo('friends:collections:members'); ?> + </a> + </li> + <li> + <a href="#" class="editmembers<?php echo $friendspicker; ?>"> + <?php echo elgg_echo('friends:collections:edit'); ?> + </a> + </li> </ul> -</div> +<?php //@todo JS 1.8: no ?> <script type="text/javascript"> -$(document).ready(function () { +$(function () { $('a.collectionmembers<?php echo $friendspicker; ?>').click(function () { // load collection members pane - $('#friends-picker_placeholder<?php echo $friendspicker; ?>').load('<?php echo elgg_get_site_url(); ?>pages/friends/pickercallback.php?username=<?php echo elgg_get_logged_in_user_entity()->username; ?>&type=list&collection=<?php echo $collectionid; ?>&friendspicker=<?php echo $friendspicker; ?>'); + $('#friends-picker_placeholder<?php echo $friendspicker; ?>').load('<?php echo elgg_get_site_url(); ?>pages/friends/collections/pickercallback.php?username=<?php echo elgg_get_logged_in_user_entity()->username; ?>&type=list&collection=<?php echo $collectionid; ?>&friendspicker=<?php echo $friendspicker; ?>'); // remove selected state from previous tab - $(this).parent().parent().find("li.selected").removeClass("selected"); + $(this).parent().parent().find("li.elgg-state-selected").removeClass("elgg-state-selected"); // add selected class to current tab - $(this).parent().addClass("selected"); + $(this).parent().addClass("elgg-state-selected"); return false; }); $('a.editmembers<?php echo $friendspicker; ?>').click(function () { // load friends picker pane - $('#friends-picker_placeholder<?php echo $friendspicker; ?>').load('<?php echo elgg_get_site_url(); ?>pages/friends/pickercallback.php?username=<?php echo elgg_get_logged_in_user_entity()->username; ?>&type=picker&collection=<?php echo $collectionid; ?>&friendspicker=<?php echo $friendspicker; ?>'); + $('#friends-picker_placeholder<?php echo $friendspicker; ?>').load('<?php echo elgg_get_site_url(); ?>pages/friends/collections/pickercallback.php?username=<?php echo elgg_get_logged_in_user_entity()->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"); + $(this).parent().parent().find("li.elgg-state-selected").removeClass("elgg-state-selected"); // add selected class to current tab - $(this).parent().addClass("selected"); + $(this).parent().addClass("elgg-state-selected"); return false; }); diff --git a/views/default/core/friends/picker.php b/views/default/core/friends/picker.php deleted file mode 100644 index 2344d7d94..000000000 --- a/views/default/core/friends/picker.php +++ /dev/null @@ -1,329 +0,0 @@ -<?php -/** - * Elgg friends picker - * Lists the friends picker - * - * @package Elgg - * @subpackage Core - * - * @uses $vars['entities'] The array of ElggUser objects - */ - -$base = elgg_get_site_url(); -$viewtype = elgg_get_viewtype(); -elgg_register_js("{$base}vendors/jquery/jquery.easing.1.3.packed.js", 'jquery.easing'); -$url = elgg_view_get_simplecache_url('js', 'friendsPickerv1'); -elgg_register_js($url, 'friendsPicker'); - -$chararray = elgg_echo('friendspicker:chararray'); - -// Initialise internalname -if (!isset($vars['internalname'])) { - $internalname = "friend"; -} else { - $internalname = $vars['internalname']; -} - -// Are we highlighting default or all? -if (empty($vars['highlight'])) { - $vars['highlight'] = 'default'; -} -if ($vars['highlight'] != 'all') { - $vars['highlight'] = 'default'; -} - -// Initialise values -if (!isset($vars['value'])) { - $vars['value'] = array(); -} else { - if (!is_array($vars['value'])) { - $vars['value'] = (int) $vars['value']; - $vars['value'] = array($vars['value']); - } -} - -// Initialise whether we're calling back or not -if (isset($vars['callback'])) { - $callback = $vars['callback']; -} else { - $callback = false; -} - -// We need to count the number of friends pickers on the page. -if (!isset($vars['friendspicker'])) { - global $friendspicker; - if (!isset($friendspicker)) { - $friendspicker = 0; - } - $friendspicker++; -} else { - $friendspicker = $vars['friendspicker']; -} - -$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'])) { - foreach($vars['entities'] as $user) { - if (is_callable('mb_substr')) { - $letter = strtoupper(mb_substr($user->name,0,1)); - } else { - $letter = strtoupper(substr($user->name,0,1)); - } - - if (!substr_count($chararray,$letter)) { - $letter = "*"; - } - if (!isset($users[$letter])) { - $users[$letter] = array(); - } - $users[$letter][$user->guid] = $user; - } -} - -// sort users in letters alphabetically -foreach ($users as $letter => $letter_users) { - usort($letter_users, create_function('$a, $b', ' - return strcasecmp($a->name, $b->name); - ')); - $users[$letter] = $letter_users; -} - -if (!$callback) { - ?> - - <div class="friends-picker"> - - <?php - - if (isset($vars['content'])) { - echo $vars['content']; - } - ?> - - <div id="friends-picker_placeholder<?php echo $friendspicker; ?>"> - - <?php -} - -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() { - if (this.type != 'checkbox' || (this.type == 'checkbox' && this.checked != false)) { - 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="friends-picker-wrapper"> -<div id="friends-picker<?php echo $friendspicker; ?>"> - <div class="friends-picker-container"> -<?php - -// Initialise letters - $chararray .= "*"; - if (is_callable('mb_substr')) { - $letter = mb_substr($chararray,0,1); - } else { - $letter = substr($chararray,0,1); - } - $letpos = 0; - while (1 == 1) { - ?> - <div class="panel" title="<?php echo $letter; ?>"> - <div class="wrapper"> - <h3><?php echo $letter; ?></h3> - <?php - - if (isset($users[$letter])) { - ksort($users[$letter]); - - echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">"; - $col = 0; - - foreach($users[$letter] as $friend) { - if ($col == 0) { - echo "<tr>"; - } - - //echo "<p>" . $user->name . "</p>"; - $label = elgg_view("profile/icon",array('entity' => $friend, 'size' => 'tiny', 'override' => true)); - $options[$label] = $friend->getGUID(); - - if ($vars['highlight'] == 'all' - && !in_array($letter,$activeletters)) { - - $activeletters[] = $letter; - } - - - if (in_array($friend->getGUID(),$vars['value'])) { - $checked = "checked = \"checked\""; - if (!in_array($letter,$activeletters) && $vars['highlight'] == 'default') { - $activeletters[] = $letter; - } - } else { - $checked = ""; - } - ?> - - <td> - - <input type="checkbox" <?php echo $checked; ?> name="<?php echo $internalname; ?>[]" value="<?php echo $options[$label]; ?>" /> - - </td> - - <td> - - <div style="width: 25px; margin-bottom: 15px;"> - <?php - echo $label; - ?> - </div> - </td> - <td style="width: 200px; padding: 5px;"> - <?php echo $friend->name; ?> - </td> - <?php - $col++; - if ($col == 3){ - echo "</tr>"; - $col = 0; - } - } - if ($col < 3) { - echo "</tr>"; - } - - echo "</table>"; - } - -?> - - </div> - </div> -<?php - //if ($letter == 'Z') break; - - if (is_callable('mb_substr')) { - $substr = mb_substr($chararray,strlen($chararray) - 1,1); - } else { - $substr = substr($chararray,strlen($chararray) - 1,1); - } - if ($letter == $substr) { - break; - } - //$letter++; - $letpos++; - if (is_callable('mb_substr')) { - $letter = mb_substr($chararray,$letpos,1); - } else { - $letter = substr($chararray,$letpos,1); - } - } - -?> - </div> - -<?php - -if ($formtarget) { - - if (isset($vars['formcontents'])) - echo $vars['formcontents']; - -?> - <div class="clearfix"></div> - <div class="friendspicker-savebuttons"> - <input type="submit" class="elgg-button-submit" value="<?php echo elgg_echo('save'); ?>" /> - <input type="button" class="elgg-button-cancel" value="<?php echo elgg_echo('cancel'); ?>" onclick="$('a.collectionmembers<?php echo $friendspicker; ?>').click();" /> - <br /></div> - </form> - -<?php - -} - -?> - -</div> -</div> - -<?php -} else { - echo $vars['replacement']; -} -if (!$callback) { - -?> - -</div> -</div> - - -<?php - -} - -if (!isset($vars['replacement'])) { -?> - -<script type="text/javascript"> - // initialise picker - $("div#friends-picker<?php echo $friendspicker; ?>").friendsPicker(<?php echo $friendspicker; ?>); -</script> -<script> -$(document).ready(function () { -// manually add class to corresponding tab for panels that have content -<?php -if (sizeof($activeletters) > 0) - //$chararray = elgg_echo('friendspicker:chararray'); - foreach($activeletters as $letter) { - $tab = strpos($chararray, $letter) + 1; -?> -$("div#friends-picker-navigation<?php echo $friendspicker; ?> li.tab<?php echo $tab; ?> a").addClass("tabHasContent"); -<?php - } - -?> -}); -</script> - -<?php - -}
\ No newline at end of file diff --git a/views/default/core/friends/tablelist.php b/views/default/core/friends/tablelist.php index 12a0763c9..339b9ab1b 100644 --- a/views/default/core/friends/tablelist.php +++ b/views/default/core/friends/tablelist.php @@ -13,7 +13,7 @@ if (is_array($vars['entities'])) { ?> -<table cellspacing="0" id="collectionMembersTable"> +<table cellspacing="0" id="friendspicker-members-table"> <tr> <?php $column = 0; @@ -25,11 +25,11 @@ if (is_array($vars['entities'])) { if ($entity instanceof ElggEntity) { ?> <td style="width:25px;"> - <div style="width: 25px; margin-bottom: 15px;"> - <?php echo elgg_view("profile/icon",array('entity' => $entity, 'size' => 'tiny')); ?> + <div style="width: 25px;" class="mbl"> + <?php echo elgg_view_entity_icon($entity, 'tiny'); ?> </div> </td> - <td style="width: 200px; padding: 5px;"> + <td style="width: 200px;" class="pas"> <?php echo $entity->name; ?> </td> <?php diff --git a/views/default/core/friends/tablelistcountupdate.php b/views/default/core/friends/tablelistcountupdate.php index 8e2ab637d..7a0da1caa 100644 --- a/views/default/core/friends/tablelistcountupdate.php +++ b/views/default/core/friends/tablelistcountupdate.php @@ -11,7 +11,7 @@ */ ?> - +<?php //@todo JS 1.8: no ?> <script language="text/javascript"> $("#friends_membership_count<?php echo $vars['friendspicker']; ?>").html("<?php echo $vars['count']; ?>"); </script>
\ No newline at end of file |
