tagged.namespace("modules.multi_selector");tagged.modules.multi_selector={initSelector:function(d){if(!this.apiCalls_init||!this.apiCalls_newPage||!this.apiCalls_send){alert("Error: API calls have not been set");return}var e={animate:true,selected:[],position:"top",itemsPerPage:18,thumbSize:"m"};this.options=YAHOO.lang.merge(e,d);this.thumbSize=this.options.thumbSize;this.itemsPerPage=this.options.itemsPerPage;this.totalSelected=0;this.selectedIDs=[];this.minListItems=3;this.maxListItems=40;this.itemsPerRow=6;var a=D.get("friend_selector");if(!a){var b=this.options.parentEl;var f=document.createElement("div");f.id="invite_wrapper";D.addClass(f,"loading");if(this.options.position=="top"){b.insertBefore(f,b.firstChild)}else{b.appendChild(f)}window.scrollTo(0,D.getXY(f)[1]);var c=this.apiCalls_init();TAGGED.api.call(c)}else{if(a&&D.hasClass(a,"hide_me")){tagged.groups.group.toggleInvitePanel()}}this.selectedIDs.indexOf=function(h){for(var g=0;g<this.length;g++){if(this[g]==h){return g}}return -1}},insertInvitePanel:function(b){if(b.stat=="ok"&&b.results.content){var c=D.get("invite_wrapper");if(D.hasClass(c,"loading")){var a=Math.ceil(b.results.friendCount/this.itemsPerRow);if(a==1){this.panelHeight=265}else{if(a==2){this.panelHeight=355}else{this.panelHeight=415}}this.toggleInvitePanel();c.innerHTML=b.results.content;D.get("friend_selector_title").innerHTML=this.strings.titleTxt;D.get("friend_selector_clear").innerHTML=this.strings.clearTxt;if(typeof(this.options.showCloseLink)=="undefined"||this.options.showCloseLink){D.get("friend_selector_close").innerHTML=this.strings.closeTxt}else{D.addClass("friend_selector_close","hide_me")}document.forms.selection_overview.submit.value=this.strings.buttonTxt;document.forms.selection_overview.submit.setAttribute("alt_text",this.strings.buttonAltTxt);this.initInvitePanel()}else{c.innerHTML=b.results.content}}},toggleInvitePanel:function(c){if(c){E.preventDefault(c)}var g=D.get("invite_wrapper");if(g&&!D.hasClass(g.parentNode,"lightbox")){window.scrollTo(0,D.getXY(g)[1])}if(D.hasClass(g,"loading")||D.hasClass(g,"hide_me")){D.removeClass(g,"loading");D.removeClass(g,"hide_me");var f=function(){if(D.get("friend_selector")){D.removeClass("friend_selector","hide_me")}};if(this.options.animate==true){var b=new YAHOO.util.Anim(g,{height:{to:this.panelHeight}},0.5,YAHOO.util.Easing.easeOut);b.onComplete.subscribe(f);b.animate()}else{f()}}else{var a=function(){D.addClass(g,"hide_me")};D.addClass("friend_selector","hide_me");if(this.options.animate==true){var d=new YAHOO.util.Anim(g,{height:{to:0}},0.5,YAHOO.util.Easing.easeOut);d.onComplete.subscribe(a);d.animate()}else{a()}}},toggleSelectionScroll:function(){var a=D.get("invite_list");if(this.totalSelected>10){D.addClass(a,"scroll");a.scrollTop=a.scrollHeight}else{D.removeClass(a,"scroll")}},initInvitePanel:function(){E.addListener("friend_selector_close","click",this.toggleInvitePanel,"",this);E.addListener("friend_selector_clear","click",this.clickClearList,"",this);E.addListener(document.forms.selection_overview,"submit",this.sendSelection,"",this);this.initPage();this.inviteList=D.get("invite_list");this.inviteListItems=this.inviteList.getElementsByTagName("li");for(var a=0;a<this.options.selected.length;a++){this.selectItem(this.options.selected[a]);var b=D.get(this.options.selected[a].id);if(b){D.addClass(b,"selected")}}for(var a=0;a<this.minListItems-this.options.selected.length;a++){this.addEmptyItem()}},clickAlphabet:function(c,a){E.preventDefault(c);var b=(a.id=="grid_alphabet_all")?"":a.innerHTML;this.getNewPage(b,"0","0")},clickNav:function(d,a){E.preventDefault(d);var b=D.get("grid_alphabet_selection").value;var c=a.getAttribute("p");var f=this.itemsPerPage*c;this.getNewPage(b,f,c)},getNewPage:function(a,g,e){var c=D.get("friends_grid_fs");if(c){var b=document.createElement("div");b.className="loadingmask";b.style.width=c.offsetWidth+"px";b.style.height=c.offsetHeight+"px";c.appendChild(b)}var f={startsWith:a,offset:g,pageNum:e};var d=this.apiCalls_newPage(f);TAGGED.api.call(d)},insertNewPage:function(a){if(a.stat=="ok"&&a.results.content){var b=D.get("friends_grid_fs");b.innerHTML=a.results.content;this.initPage()}},initPage:function(){var h=D.get("grid_alphabet");var b=D.get("gridnav_top_fs");var a=D.get("gridnav_btm_fs");var d=D.get("friends_grid_fs");if(h){var e=D.get("grid_alphabet").getElementsByTagName("a");for(var c=0;c<e.length;c++){E.addListener(e[c],"click",this.clickAlphabet,e[c],this)}}if(b){var f=b.getElementsByTagName("a");for(var c=0;c<f.length;c++){E.addListener(f[c],"click",this.clickNav,f[c],this)}}if(a){var g=a.getElementsByTagName("a");for(var c=0;c<g.length;c++){E.addListener(g[c],"click",this.clickNav,g[c],this)}}if(d){this.boxes=D.getElementsByClassName("box","div",d);for(var c=0;c<this.boxes.length;c++){YAHOO.lang.augmentObject(this.boxes[c],this.boxBehavior,true);E.addListener(this.boxes[c],"click",this.selectItem,this.boxes[c],this);if(this.selectedIDs.length>0&&this.selectedIDs.indexOf(this.boxes[c].id)!=-1){D.addClass(this.boxes[c],"selected")}}}this.notification=new tagged.util.notificationClass("multi_selector_notification",{container:"selection_overview",position:"bottom"});this.notification.onShow.subscribe(function(){D.addClass(document.forms.selection_overview.submit,"hide_me")});this.notification.onHide.subscribe(function(){D.removeClass(document.forms.selection_overview.submit,"hide_me")})},addEmptyItem:function(){var a=document.createElement("li");a.innerHTML="<div></div><span>&nbsp;</span>";D.addClass(a,"empty");this.inviteList.appendChild(a);this.updateNumbering();YAHOO.lang.augmentObject(a,this.liBehavior,true)},selectItem:function(g,f){if(D.hasClass(f,"selected")){D.removeClass(f,"selected");for(var d=0;d<this.inviteListItems.length;d++){if(this.inviteListItems[d].uid==f.id){this.inviteList.removeChild(this.inviteListItems[d]);this.selectedIDs.splice(this.selectedIDs.indexOf(f.id),1);this.totalSelected--}}if(this.inviteListItems.length<this.minListItems){this.addEmptyItem()}this.updateNumbering();this.toggleSelectionScroll()}else{D.addClass(f,"selected");if(this.totalSelected>=this.maxListItems){var h=sprintf(this.strings.maxSelected,this.maxListItems);TAGGED.util.notification.showNotification(h,"selection_overview","failure","top",5000);D.removeClass(f,"selected")}else{if(!this.inviteListItems[this.totalSelected]){var b=document.createElement("li");this.inviteList.appendChild(b);YAHOO.lang.augmentObject(b,this.liBehavior,true)}if(f){this.inviteListItems[this.totalSelected].title=f.title;selectionTitle=f.title;this.inviteListItems[this.totalSelected].uid=f.id}else{this.inviteListItems[this.totalSelected].title=g.title;selectionTitle=g.title;this.inviteListItems[this.totalSelected].uid=g.id}if(selectionTitle.length>21){selectionTitle=selectionTitle.substring(0,20)+"..."}this.inviteListItems[this.totalSelected].innerHTML="<div></div><span>"+selectionTitle+"</span>";D.removeClass(this.inviteListItems[this.totalSelected],"empty");for(var d=0;d<this.inviteListItems.length;d++){D.removeClass(this.inviteListItems[d],"hover")}D.addClass(this.inviteListItems[this.totalSelected],"hover");var c=document.createElement("a");c.innerHTML="&nbsp";E.addListener(c,"click",this.removeItem,"",this);E.addListener(c,"mouseover",function(){c.style.backgroundPosition="0 -11px"});E.addListener(c,"mouseout",function(){c.style.backgroundPosition="0 0"});this.inviteListItems[this.totalSelected].appendChild(c);this.totalSelected++;if(f){this.selectedIDs.push(f.id)}else{this.selectedIDs.push(g.id)}if(this.totalSelected>=this.minListItems&&this.totalSelected<this.maxListItems){this.addEmptyItem()}this.updateNumbering();this.toggleSelectionScroll();D.removeClass("clear_invites","hide_me")}}},removeItem:function(d){E.preventDefault(d);var c=E.getTarget(d);var a=c.parentNode;this.inviteList.removeChild(a);for(var b=0;b<this.boxes.length;b++){if(this.boxes[b].id==a.uid){D.removeClass(this.boxes[b],"selected")}}this.selectedIDs.splice(this.selectedIDs.indexOf(a.uid),1);this.totalSelected--;if(this.inviteListItems.length<this.minListItems){this.addEmptyItem()}this.updateNumbering();if(this.selectedIDs.length==0){D.addClass("clear_invites","hide_me")}},updateNumbering:function(){for(i=0;i<this.inviteListItems.length;i++){if(this.inviteListItems[i].firstChild.nodeName.toLowerCase()=="div"){this.inviteListItems[i].firstChild.innerHTML=i+1+". "}}var b=D.getElementsByClassName("empty","li","invite_list");var a=document.forms.selection_overview.submit;if(b.length==this.minListItems){a.disabled="disabled";D.addClass(a,"btn_disabled");D.addClass("friend_selector_clear","hide_me")}else{a.disabled="";D.removeClass(a,"btn_disabled");D.removeClass("friend_selector_clear","hide_me")}},clickClearList:function(a){E.preventDefault(a);if(confirm(this.strings.clearSelection)){this.clearSelection()}},clearSelection:function(){this.selectedIDs.splice(0,this.selectedIDs.length);this.totalSelected=0;this.inviteList.innerHTML="";for(var a=0;a<this.minListItems;a++){this.addEmptyItem()}for(var a=0;a<this.boxes.length;a++){D.removeClass(this.boxes[a],"selected")}D.addClass("clear_invites","hide_me");this.updateNumbering();this.toggleSelectionScroll()},sendSelection:function(c,a){E.preventDefault(c);var a=document.forms.selection_overview.submit;a.setAttribute("default_value",a.value);a.value=a.getAttribute("alt_text");D.addClass(a,"btn_disabled");var b=this.apiCalls_send();TAGGED.api.call(b)},invitesSent:function(b){var a=document.forms.selection_overview.submit;a.value=a.getAttribute("default_value");D.removeClass(a,"btn_disabled");if(b.stat=="ok"){if(b.results.successMessage){TAGGED.util.notification.showNotification(b.results.successMessage,document.forms.selection_overview,"success","top",5000)}else{if(b.results.errorMessage){TAGGED.util.notification.showNotification(b.results.errorMessage,document.forms.selection_overview,"failure","top",5000)}}}else{if(b.stat=="cancel"){return}else{TAGGED.util.notification.showNotification(tagged.strings.genericError,document.forms.selection_overview,"failure","top",5000)}}this.clearSelection()}};tagged.modules.multi_selector.boxBehavior={onmouseover:function(){D.addClass(this,"hover")},onmouseout:function(){D.removeClass(this,"hover")}},tagged.modules.multi_selector.liBehavior={onmouseover:function(){D.addClass(this,"hover")},onmouseout:function(){D.removeClass(this,"hover")}};tagged.namespace("modules.friendSelector");tagged.modules.friendSelector={init:function(a){YAHOO.lang.augmentObject(tagged.modules.friendSelector,tagged.modules.multi_selector);this.initSelector(a)},apiCalls_init:function(){var a={method:"render.friends.selector",callback:"tagged.modules.friendSelector.insertInvitePanel",tSize:this.thumbSize,offset:0,startsWith:"",numItems:tagged.modules.friendSelector.itemsPerPage,pageNum:0};return a},apiCalls_newPage:function(c){var a=tagged.modules.friendSelector;var b={method:"render.friends.grid",callback:"tagged.modules.friendSelector.insertNewPage",tSize:a.thumbSize,offset:c.offset,startsWith:c.startsWith,numItems:a.itemsPerPage,pageNum:c.pageNum};return b},apiCalls_send:function(){var a={method:"tagged.groups.invites.send",callback:{fn:this.invitesSent,scope:this},gId:tagged.data.groupId,uIds:"["+tagged.modules.friendSelector.selectedIDs+"]"};return a}};