
function userSelector(){}
userSelector.prototype.setlist=function(id){this.user_list=ge(id);}
userSelector.prototype.key_handle=function(event){var filterEl=ge('selector_name');if(!filterEl){return;}
var filter=filterEl.value.toLowerCase();if(!this.user_list){return;}
var regex=new RegExp("^"+filter+"|\\s"+filter,"i");var len=this.user_list.childNodes.length;for(var i=0;i<len;i++){var childEl=this.user_list.childNodes[i];if(!childEl){continue;}
var name=childEl.getAttribute('u_name');var id=childEl.getAttribute('u_id');childEl.style.display='';if(regex.exec(name)){childEl.style.display='';}else{childEl.style.display='none';}}}
userSelector.prototype.add=function(id,name){var childEl=this.user_list.childNodes[0];var el=document.createElement('span');el.id="u_"+id;el.setAttribute('u_id',id);el.setAttribute('u_name',name);el.innerHTML='<input u_id="'+id+'" name="'+id+'" u_name="'+name+'" type="checkbox" onclick="addToPending(\''+id+'\',\''+escape(name)+'\')"><label>'+name+'</label><br>';if(childEl){this.user_list.insertBefore(el,childEl);}else{this.user_list.appendChild(el);}}
userSelector.prototype.remove=function(id){idEl=ge('u_'+id);return this.user_list.removeChild(idEl);}
function pending_list(perm){this.use_permanent_list=perm;}
pending_list.prototype.is_permanent_list=function(){return this.use_permanent_list;}
pending_list.prototype.setList=function(id){this.elList=ge(id);}
pending_list.prototype.update_pending_count=function(){num_pending=this.elList.childNodes.length;if(num_pending==0){hide('invitation_list');}else if(num_pending==1){$('pending_count').innerHTML="1 person has not been sent an invitation yet.";show('invitation_list');}else{$('pending_count').innerHTML=(num_pending+" people have not been sent invitations yet.");show('invitation_list');}}
pending_list.prototype.add=function(id,name){li=document.createElement("li");li.id="p_"+id;nameEl=document.createElement("div");nameEl.className='name_row';nameEl.innerHTML='<a href="/profile.php?id='+id+'">'+name+'</a>';removeEl=document.createElement("div");removeEl.innerHTML='<a href="#" u_id="'+id+'" u_name="'+name+'" onclick="removeFromPending(\''+id+'\',\''+escape(name)+'\'); return false;">Remove</a>';li.appendChild(nameEl);li.appendChild(removeEl);this.elList.insertBefore(li,this.elList.firstChild);this.update_pending_count();}
pending_list.prototype.remove=function(id){old_child=this.elList.removeChild(ge('p_'+id));this.update_pending_count();return old_child;}
function addToPending(id,name){var ajax=new Ajax();ajax.onFail=function(ajax_obj,response_text){(new pop_dialog()).show_message('Unable to add User.','please try again later.');}
ajax.onDone=function(ajax_obj,response_text){eval('response_text = '+response_text+';');if(response_text['st']=='OK'){user_removed=friendSelector.remove(id);PendingList.add(id,unescape(name));return false;}else{(new pop_dialog()).show_message(response_text['title'],response_text['msg']);}}
if(PendingList.is_permanent_list()){ajax.post('/ajax/invitetoolpro_actions_ajax.php','oid='+invite_oid+'&uid='+id+'&action=add_pending');}else{$('invite_id_list').value+=id+',';friendSelector.remove(id);PendingList.add(id,unescape(name));}}
function removeFromPending(id,name){var ajax=new Ajax();ajax.onFail=function(ajax_obj,response_text){(new pop_dialog()).show_message('An error occurred.','please try again later.');}
ajax.onDone=function(ajax_obj,response_text){eval('response = '+response_text);if(response['st']=='OK'){PendingList.remove(id);friendSelector.add(id,unescape(name));return false;}else{(new pop_dialog()).show_message('An error occurred.',response_text['msg']);}}
if(PendingList.is_permanent_list()){ajax.post('/ajax/invitetoolpro_actions_ajax.php','oid='+invite_oid+'&uid='+id+'&action=remove_pending');}else{$('invite_id_list').value=ge('invite_id_list').value.replace(new RegExp('\\b'+id+','),'');PendingList.remove(id);friendSelector.add(id,unescape(name));}
return false;}
function invitetool_decrement_count_text(){if(ge('invite_count_phrase')){if($('invite_count_phrase').innerHTML=='the only'){if(ge('invite_summary')){var invite_summary=ge('invite_summary');invite_summary.innerHTML='There are no people in this category.';}}else{if(ge('invite_total_count')&&ge('invite_view_count')){var view_count=ge('invite_view_count');var total_count=ge('invite_total_count');if(total_count.innerHTML>2){view_count.innerHTML=view_count.innerHTML-1;total_count.innerHTML=total_count.innerHTML-1;}else{var count_phrase=ge('invite_count_phrase');count_phrase.innerHTML='the only';var type_label=ge('invite_type_label');type_label.innerHTML=type_label.innerHTML.replace(/s$/,"");}}}}}
function invitetool_dialog(oid,uid,action,label,msg,left_buttons_msg){var ban=0;var invite_dialog=new pop_dialog();fnc_remove=function(){var ajax=new Ajax();ajax.onDone=function(ajax_obj,response_text){eval('response = '+response_text);if(response['st']=='OK'){$('invite_list').removeChild(ge('member_'+uid));invitetool_decrement_count_text();}else{(new pop_dialog()).show_message('An error occurred.',response['msg']);}}
if(ge('ban_user')&&$('ban_user').checked){ban=1;}
ajax.post('/ajax/invitetoolpro_actions_ajax.php','oid='+oid+'&uid='+uid+'&ban='+ban+'&action=remove');invite_dialog.hide();return false;}
fnc_make_admin=function(){var ajax=new Ajax();ajax.onFail=function(ajax_obj,response_text){(new pop_dialog()).show_message('An error occurred.','please try again later');}
ajax.onDone=function(ajax_obj,response_text){eval('response = '+response_text);if(response['st']=='OK'){var anchor=ge('a_make_admin_'+uid);$('member_'+uid).removeChild(anchor);$('member_'+uid).innerHTML+=decodeURIComponent(response['link']);}else{(new pop_dialog()).show_message('An error occurred.',response['msg']);}}
ajax.post('/ajax/invitetoolpro_actions_ajax.php','oid='+oid+'&uid='+uid+'&action=makeadmin');invite_dialog.hide();return false;}
fnc_remove_admin=function(){var ajax=new Ajax();ajax.onDone=function(ajax_obj,response_text){eval('response = '+response_text);if(response['st']=='OK'){var anchor=ge('a_remove_admin_'+uid);$('member_'+uid).removeChild(anchor);$('member_'+uid).innerHTML+=decodeURIComponent(response['link']);}else{(new pop_dialog()).show_message('An error occurred.',response['msg']);}}
ajax.post('/ajax/invitetoolpro_actions_ajax.php','oid='+oid+'&uid='+uid+'&action=removeadmin');invite_dialog.hide();return false;}
fnc_remove_fbpage_admin=function(){var ajax=new Ajax();ajax.onDone=function(ajax_obj,response_text){eval('response = '+response_text);if(response['redirect_url']){window.location=response['redirect_url'];}else if(response['st']=='OK'){$('invite_list').removeChild(ge('member_'+uid));invitetool_decrement_count_text();if(response['markup']){$('member_'+response['user']).innerHTML=response['markup'];}}else{(new pop_dialog()).show_message('An error occurred.',response['msg']);}}
ajax.post('/ajax/invitetoolpro_actions_ajax.php','oid='+oid+'&uid='+uid+'&action=removefbpageadmin');invite_dialog.hide();return false;}
switch(action){case'make_admin':fnc=fnc_make_admin;break;case'remove_admin':fnc=fnc_remove_admin;break;case'remove_member':fnc=fnc_remove;break;case'remove_fbpage_admin':fnc=fnc_remove_fbpage_admin;break;default:return false;}
invite_dialog.show_choice(label,msg,label,fnc,'Cancel',function(){invite_dialog.hide();return false;},left_buttons_msg);return false;}
