aboutsummaryrefslogtreecommitdiff
path: root/js/lib/userpicker.js
diff options
context:
space:
mode:
authorCash Costello <cash.costello@gmail.com>2011-11-15 20:03:52 -0500
committercash <cash.costello@gmail.com>2011-11-16 19:53:04 -0500
commit92c1bcd1355c2e4b661d0bb90f5492258815d329 (patch)
treea98f64021b220a441ee955c6b5b9095800343dd0 /js/lib/userpicker.js
parentbd1a206aa44d10531036407d8a0d455bbba96323 (diff)
downloadelgg-92c1bcd1355c2e4b661d0bb90f5492258815d329.tar.gz
elgg-92c1bcd1355c2e4b661d0bb90f5492258815d329.tar.bz2
atleast renaming the ui js libs
Diffstat (limited to 'js/lib/userpicker.js')
-rw-r--r--js/lib/userpicker.js117
1 files changed, 0 insertions, 117 deletions
diff --git a/js/lib/userpicker.js b/js/lib/userpicker.js
deleted file mode 100644
index 8287ba91c..000000000
--- a/js/lib/userpicker.js
+++ /dev/null
@@ -1,117 +0,0 @@
-elgg.provide('elgg.userpicker');
-
-/**
- * Userpicker initialization
- *
- * The userpicker is an autocomplete library for selecting multiple users or
- * friends. It works in concert with the view input/userpicker.
- *
- * @return void
- */
-elgg.userpicker.init = function() {
-
- // binding autocomplete.
- // doing this as an each so we can pass this to functions.
- $('.elgg-input-user-picker').each(function() {
-
- $(this).autocomplete({
- source: function(request, response) {
-
- var params = elgg.userpicker.getSearchParams(this);
-
- elgg.get('livesearch', {
- data: params,
- dataType: 'json',
- success: function(data) {
- response(data);
- }
- });
- },
- minLength: 2,
- html: "html",
- select: elgg.userpicker.addUser
- })
- });
-
- $('.elgg-userpicker-remove').live('click', elgg.userpicker.removeUser);
-};
-
-/**
- * Adds a user to the select user list
- *
- * elgg.userpicker.userList is defined in the input/userpicker view
- *
- * @param {Object} event
- * @param {Object} ui The object returned by the autocomplete endpoint
- * @return void
- */
-elgg.userpicker.addUser = function(event, ui) {
- var info = ui.item;
-
- // do not allow users to be added multiple times
- if (!(info.guid in elgg.userpicker.userList)) {
- elgg.userpicker.userList[info.guid] = true;
- var users = $(this).siblings('.elgg-user-picker-list');
- var li = '<input type="hidden" name="members[]" value="' + info.guid + '" />';
- li += elgg.userpicker.viewUser(info);
- $('<li>').html(li).appendTo(users);
- }
-
- $(this).val('');
- event.preventDefault();
-};
-
-/**
- * Remove a user from the selected user list
- *
- * @param {Object} event
- * @return void
- */
-elgg.userpicker.removeUser = function(event) {
- var item = $(this).closest('.elgg-user-picker-list > li');
-
- var guid = item.find('[name="members[]"]').val();
- delete elgg.userpicker.userList[guid];
-
- item.remove();
- event.preventDefault();
-};
-
-/**
- * Render the list item for insertion into the selected user list
- *
- * The html in this method has to remain synced with the input/userpicker view
- *
- * @param {Object} info The object returned by the autocomplete endpoint
- * @return string
- */
-elgg.userpicker.viewUser = function(info) {
-
- var deleteLink = "<a href='#' class='elgg-userpicker-remove'>X</a>";
-
- var html = "<div class='elgg-image-block'>";
- html += "<div class='elgg-image'>" + info.icon + "</div>";
- html += "<div class='elgg-image-alt'>" + deleteLink + "</div>";
- html += "<div class='elgg-body'>" + info.name + "</div>";
- html += "</div";
-
- return html;
-};
-
-/**
- * Get the parameters to use for autocomplete
- *
- * This grabs the value of the friends checkbox.
- *
- * @param {Object} obj Object for the autocomplete callback
- * @return Object
- */
-elgg.userpicker.getSearchParams = function(obj) {
- if (obj.element.siblings('[name=match_on]').attr('checked')) {
- return {'match_on[]': 'friends', 'term' : obj.term};
- } else {
- return {'match_on[]': 'users', 'term' : obj.term};
- }
-};
-
-elgg.register_hook_handler('init', 'system', elgg.userpicker.init); \ No newline at end of file