var PostServicesClass=Class.create();PostServicesClass.prototype={initialize:function(){this.action='';this.pars='';this.iduser=0;this.typeuser='';this.idcontact=0;this.currUserId='';this.userName='';this.userEmail='';},switchPostType:function(type){$('post-result').style.display='none';var curr=document.getElementsByClassName("post-current","post-tool");for(i=0;i<curr.length;i++){curr[i].className="note-link";}switch(type){case 'public':$('post-sendto-area').style.display='none';$('post-link-area').style.display='none';$('post-event-area').style.display='none';$('id_post_type').value='public';break;case 'msg':$('post-sendto-area').style.display='';$('post-link-area').style.display='none';$('post-event-area').style.display='none';if($('attach-link').style.display!='none')$('id_post_type').value='msg';else $('id_post_type').value='link';break;case 'link':$('post-link-area').style.display='block';$('post-event-area').style.display='none';$('id_post_type').value='link';break;case 'video':$('post-link-area').style.display='block';$('id_post_type').value='video';break;case 'file':$('post-link-area').style.display='block';$('id_post_type').value='file';break;case 'event':$('post-sendto-area').style.display='';$('post-link-area').style.display='none';$('post-event-area').style.display='block';$('id_post_type').value='event';break;}$('post-type-'+type).className='post-current';},selectTo:function(){switch($F('post-sendto-select')){case '0':case '1':$('post-sendto-personal').style.display='none';$('recList').style.display='none';break;case '2':$('post-sendto-personal').style.display='';$('recList').style.display='';$('selector').focus();break;}},addLink:function(){$('attach-link').style.display='none';$('attach-link-div').style.display='block';if($F('id_post_type')=='msg')$('id_post_type').value='link';$('id_post_link').focus();},removeLink:function(){$('attach-link').style.display='block';$('attach-link-div').style.display='none';$('id_post_link').value='http://';if($F('id_post_type')=='link')$('id_post_type').value='msg';},applyFilter:function(pars){var filter='';var filter_count=0;for(i=1;i<=5;i++){if($('filter_by_'+i).checked){filter+=(filter==''?'':' ')+this._filterType(i);filter_count++;}}if(filter_count==5)window.location=DEFAULT_ROOT+'home/'+(pars!=''?'?'+pars:'');else window.location=DEFAULT_ROOT+'home/?filter='+filter+(pars!=''?'&'+pars:'');},applyPublicFilter:function(pars){var filter='';var filter_count=0;for(i=1;i<=3;i++){if($('filter_by_'+i).checked){filter+=(filter==''?'':' ')+this._filterType(i);filter_count++;}}if(filter_count==3)window.location=DEFAULT_ROOT+'public/'+this.userName+(pars!=''?'/'+pars:'')+'/';else window.location=DEFAULT_ROOT+'public/'+this.userName+(pars!=''?'/'+pars:'')+'/?filter='+filter;},filterSelect:function(id){for(i=1;i<=5;i++){if(id!=i)$('filter_by_'+i).checked='';}$('filter_by_'+id).checked='checked';},filterPublicSelect:function(id){for(i=1;i<=3;i++){if(id!=i)$('filter_by_'+i).checked='';}$('filter_by_'+id).checked='checked';},_filterType:function(idfilter){switch(idfilter){case 1:return 'msg';case 2:return 'link';case 3:return 'event';case 4:return 'reply';case 5:return 'connect';}},addContact:function(){this.addUser(0,this.userName,this.iduser);},showContactInfo:function(){var id=this.idcontact;if(this.iduser==this.currUserId)window.location=DEFAULT_ROOT+'account/?show=card';else window.location=DEFAULT_ROOT+'contact/'+id;},showPostsByContact:function(){var uid=this.iduser;if(this.typeuser=='user'){if(uid==this.currUserId)window.location=DEFAULT_ROOT+'home/';else window.location=DEFAULT_ROOT+'home/?uid='+uid+'&utype=user';}else{window.location=DEFAULT_ROOT+'home/?uid='+this.idcontact+'&utype=contact';}},sendPostByContact:function(){var idcontact=this.idcontact;if($('selector')){$('post-sendto-select').selectedIndex=2;$('post-sendto-personal').style.display='';$('recList').style.display='';AjaxSelector.options.each(function(item,index){if(item[1]=='2'&&item[2]==idcontact){AjaxSelector.addItem(item);return;}});window.location.href="#top-page";$('id_post_body').focus();}else{$('id_sendto').value=idcontact;$('frm_send_to').submit();}},showPublicProfile:function(){var uid=this.iduser;if(this.typeuser=='user'){window.location=DEFAULT_ROOT+'public/'+uid;}else{alert(_("Sorry, this user does not have a Public Profile."));}},openMenu:function(event,id,type,status,name,idcontact,silentmode){this.iduser=id;this.idcontact=idcontact;this.typeuser=type;this.userName=name;if(silentmode)return;$('BtnMenuUpdateInfo').hide();if(type=='contact'){if(this.currUserId=='')return;$('BtnMenuPublicProfile').hide();if(status==1){alert(_("This is not an Anywr user."));return;}}else{$('BtnMenuPublicProfile').show();if(this.currUserId==id){status=0;$('BtnMenuUpdateInfo').show();}}switch(status){case 1:$('BtnMenuContactAdd').show();$('BtnMenuContactInfo').hide();$('BtnMenuPostsByContact').hide();$('BtnMenuSendPost').hide();break;case 2:$('BtnMenuContactAdd').hide();$('BtnMenuContactInfo').show();$('BtnMenuPostsByContact').show();$('BtnMenuSendPost').show();break;default:$('BtnMenuContactAdd').hide();$('BtnMenuContactInfo').hide();$('BtnMenuPostsByContact').hide();$('BtnMenuSendPost').hide();if((type=='user'&&this.iduser!=this.currUserId)||type=='contact'){this.showPublicProfile();return;}break;}BtnMenu.openContext(event,'menu_User');},openCalMenu:function(event){BtnMenuCal.openContext(event,'menu_Calendar');$('body').onmousedown=null;},checkCalSync:function(){if(!$('event_add_to').checked){$('event_sync').checked=false;$('event_sync').disabled=true;}else $('event_sync').disabled=false;},changeAllDay:function(){if($('event_allday').checked){$('id_event_time').style.display='none';$('id_event_end_time').style.display='none';}else{$('id_event_time').style.display='';$('id_event_end_time').style.display='';}},applyCalMenu:function(){var advHtml='';if($('event_sync').checked)advHtml+='<img src="'+DEFAULT_FASTSERVER+'images/sync.gif" title="'+_("Sync with mobile")+'" />';$('event_advance').innerHTML=advHtml+' ';$('menu_Calendar').style.display='none';},changeEndDate:function(){var dtStart=$F('id_event_date').split('-');var dttStart=$F('id_event_time').split(':');dtEnd=new Date(dtStart[2],dtStart[1]-1,dtStart[0],eval(dttStart[0])+1,dttStart[1]);$('id_event_end_date').value=_genPrintDate(dtEnd);$('id_event_end_time').value=_genPrintTime(dtEnd);},sendPost:function(){$('post-note').disabled=true;$('post-result').style.display='none';var error=0;var default_note=$('default_note').innerHTML;var type=$F('id_post_type');switch(type){case 'msg':if($('id_post_body').value==''||$('id_post_body').value==default_note){this.showStatusPost('error',_("Message is required."));error=1;}break;case 'link':if($F('id_post_link')==''||$F('id_post_link')=='http://'){this.showStatusPost('error',_("The URL is required."));error=1;}else{if($('id_post_body').value==default_note)$('id_post_body').value='';}break;case 'event':if($F('id_event_name')==_("what?")||$F('id_event_location')==_("where?")||$F('id_event_date')==_("when?")){this.showStatusPost('error',_("Subject, location and date are required."));error=1;}else{$('id_event_advance').value=($('event_sync').checked==true?'1':'0');if($('id_post_body').value==default_note)$('id_post_body').value='';}break;case 'video':case 'file':this.showStatusPost('error',"Function not implemented yet =(");error=1;break;}var recType=$('post-sendto-select').selectedIndex;var isPublic=0;if(($('id_public_post').checked&&$('post-sendto-select').selectedIndex==2)||recType==0)isPublic=1;var sendToGroup='';var sendToContact='';var sendToNew='';AjaxSelector.selected.each(function(item){switch(item[1]){case '1':sendToGroup+=sendToGroup==''?item[2]:','+item[2];break;case '2':sendToContact+=sendToContact==''?item[2]:','+item[2];break;case '3':sendToNew+=sendToNew==''?item[2]:','+item[2];break;}});if(AjaxSelector.selected.length<=0&&recType==2&&isPublic==0){this.showStatusPost('error',_("Select a recipient."));error=1;}if(recType==2)$('id_post_to').value='2|'+isPublic+'|'+sendToGroup+'|'+sendToContact+'|'+sendToNew;else if(recType==1){$('id_post_to').value='1|0|||';}else{$('id_post_to').value='0|1|||';isPublic=1;}if(isPublic==0&&sendToGroup==''&&sendToContact==''&&sendToNew==''&&error==0&&recType!=1){this.showStatusPost('error',_("Select a recipient."));error=1;}if(error==1){$('post-note').disabled=false;return false;}$('new-post').submit();return true;},deletePost:function(idpost){Dialog.confirm("<div style='margin:5px'><img src='"+DEFAULT_FASTSERVER+"images/warn.gif' />&nbsp;&nbsp;"+_("Are you sure that you want to remove the selected post?")+"</div>",{id:"dlgPostRemove",windowParameters:{buttonClass:"linkMenu",draggable:false,className:"alphacube",width:350,height:100,showEffect:Element.show,hideEffect:Element.hide},okLabel:_("Yes"),cancelLabel:_("No"),onload:function(){ButtonExtend('dlgPostRemove');},ok:function(){var objAjax=new Ajax.Request(DEFAULT_ROOT+'xml_post',{method:'post',parameters:'action=delete_post&idpost='+idpost,onComplete:function(objReturn){if($('replies-title')){window.location.href=DEFAULT_ROOT+'home/';return;}var xmlDoc=objReturn.responseXML;var objResponse=xmlDoc.getElementsByTagName("response");ids=objResponse[0].getAttribute("id").split(',');for(i=0;i<ids.length;i++){Effect.Fade($('post-'+ids[i]));}}});Windows.close('dlgPostRemove');}});},removeFromList:function(idpost){Dialog.confirm("<div style='margin:5px'><img src='"+DEFAULT_FASTSERVER+"images/warn.gif' />&nbsp;&nbsp;"+_("Are you sure that you want to be removed from the selected post?")+"</div>",{id:"dlgGuestRemove",windowParameters:{buttonClass:"linkMenu",draggable:false,className:"alphacube",width:350,height:130,showEffect:Element.show,hideEffect:Element.hide},okLabel:_("Yes"),cancelLabel:_("No"),onload:function(){ButtonExtend('dlgGuestRemove');},ok:function(){var objAjax=new Ajax.Request(DEFAULT_ROOT+'xml_post',{method:'post',parameters:'action=remove_guest&idpost='+idpost,onComplete:function(objReturn){var xmlDoc=objReturn.responseXML;var objResponse=xmlDoc.getElementsByTagName("response");ids=objResponse[0].getAttribute("id").split(',');for(i=0;i<ids.length;i++){Effect.Fade($('post-'+ids[i]));}}});Windows.close('dlgGuestRemove');}});},sendReply:function(idpost){$('post-reply').disabled=true;var error=0;var replyBody=encodeURIComponent($('id_post_body').value);var rsvp='';if($('rsvp_none')){if($('rsvp_attending').checked)rsvp=1;else if($('rsvp_maybe_attending').checked)rsvp=2;else if($('rsvp_not_attending').checked)rsvp=3;else rsvp=0;}if(rsvp==0)rsvp='';if(replyBody==''){error=1;this.showStatusPost('error',_("You have not entered a message!"));}if(this.currUserId==''){error=1;this.showStatusPost('error',_("Please <a href='%s' %s>signup</a> or <a onclick='%s' %s>login</a> in order to post a reply.").s(DEFAULT_ROOT+'?action=register',"style='color:yellow'","$(\"header-sign-in\").style.display=\"none\"; $(\"header-login\").style.display=\"\"; $(\"username_login\").focus();","style='color:yellow'"));}if(error==0){var objAjax=new Ajax.Request(DEFAULT_ROOT+'xml_post',{method:'post',parameters:'action=post_reply&idpost='+idpost+'&body='+replyBody+'&rsvp='+rsvp+'&post_hash='+$F('idhash'),onComplete:this._processReply.bindAsEventListener(this)});}else $('post-reply').disabled=false;return false;},deleteReply:function(idreply){var objTmp=this;Dialog.confirm("<div style='margin:5px'><img src='"+DEFAULT_FASTSERVER+"images/warn.gif' />&nbsp;&nbsp;"+_("Are you sure that you want to remove the selected reply?")+"</div>",{id:"dlgReplyRemove",windowParameters:{buttonClass:"linkMenu",draggable:false,className:"alphacube",width:350,height:100,showEffect:Element.show,hideEffect:Element.hide},okLabel:_("Yes"),cancelLabel:_("No"),onload:function(){ButtonExtend('dlgReplyRemove');},ok:function(){var objAjax=new Ajax.Request(DEFAULT_ROOT+'xml_post',{method:'post',parameters:'action=delete_post&idpost='+idreply+'&post_hash='+$F('idhash'),onComplete:objTmp._processReply.bindAsEventListener(this)});Windows.close('dlgReplyRemove');}});},_processReply:function(objReturn){var xmlDoc=objReturn.responseXML;var objResponse=xmlDoc.getElementsByTagName("response");var reply=objResponse[0];if(reply.getAttribute("result")=="success"){var replyId=reply.getAttribute('id');switch(reply.getAttribute("action")){case 'post_reply':var li=Builder.node('li',{id:'post'+replyId,style:'display:none;'});var rsvp=reply.getAttribute('rsvp');li.innerHTML='<div class="reply-sender">'+(rsvp!=''?'<div class="rsvp '+this._getRsvpClassById(rsvp)+'">'+this._getRsvpById(rsvp)+'</div>':'')+'<a>'+'<img src="'+DEFAULT_ROOT+'fetch_image/?path='+reply.getAttribute('picture')+'&size=normal&post=1" alt="'+reply.getAttribute('fullname')+'" class="user-image" height="24" width="24">'+_("by")+' '+reply.getAttribute('fullname')+'</a> '+reply.getAttribute('timestamp')+'</div>'+'<div class="reply-body">'+reply.getAttribute('body')+'</div>'+'<input src="'+DEFAULT_ROOT+'images/trash.gif" class="remove-reply" onclick="return PostServices.deleteReply('+replyId+');" value="delete" title="'+_("Delete reply permanently")+'" type="image">';$('replies').appendChild(li);Effect.Appear(li);var replies_title='<span id="replies-count">'+reply.getAttribute('count')+'</span>';if(reply.getAttribute('count')>=2)replies_title+=' '+_("Replies");else replies_title+=' '+_("Reply");$('replies-title').innerHTML=replies_title;$('id_post_body').value='';$('post-reply').disabled=false;if($('rsvp_none'))$('rsvp_none').checked=true;break;case 'delete_post':ids=replyId.split(',');for(i=0;i<ids.length;i++){Effect.Fade($('post'+ids[i]));}var replies_count=parseInt($('replies-count').innerHTML);replies_count--;var replies_title='<span id="replies-count">'+(replies_count==0?'':replies_count)+'</span>';if(replies_count==1)replies_title+=' '+_("Reply");else if(replies_count>0)replies_title+=' '+_("Replies");else replies_title+=_("Add a Reply");$('replies-title').innerHTML=replies_title;break;}}else{alert(reply.getAttribute("msg"));return;}},_getRsvpById:function(id){switch(id){case '1':return _("Attending");case '2':return _("Maybe Attending");case '3':return _("Not Attending");default:return '('+_("none")+')';}},_getRsvpClassById:function(id){switch(id){case '1':return 'attending';case '2':return 'maybe-attending';case '3':return 'not-attending';default:return '';}},showAllRecipients:function(kind){$('showAllRecipients'+kind).style.display='none';$('moreRecipients'+kind).style.display='';},showLessRecipients:function(kind){$('moreRecipients'+kind).style.display='none';$('showAllRecipients'+kind).style.display='';},showAllFriends:function(){$('showAllFriends').style.display='none';$('moreFriends').style.display='';},showStatusPost:function(type,msg){$('post-result').className='post-result-'+type;$('post-result').innerHTML=msg;$('post-result').style.display='block';},openContactSelect:function(){if($('contact-select').style.display==''||$('contact-select').style.display=='none')$('contact-select').style.display='block';else selectToDone();},changePrivacy:function(usersystem,type,objImg,contact){if(type==0){defaultPrivacy=DEFAULT_PERSONAL_PRIVACY;icon='house';}else if(type==1){defaultPrivacy=DEFAULT_BUSINESS_PRIVACY;icon='briefcase';}else{defaultPrivacy=DEFAULT_POST_PRIVACY;icon='post';}if(objImg.getAttribute('auth')==0){newPrivacy=1;objImg.setAttribute('auth',1);imgName=icon+'.gif';}else{imgName=icon+'_gray.gif';newPrivacy=0;if((defaultPrivacy==0)||(defaultPrivacy==1&&contact==0&&objImg.getAttribute("contact")!=1)){objImg.setAttribute('auth',0);}else{var thisObj=this;Dialog.confirm("<div style='margin:10px'>"+_("You would need to change this feature's  <a href='%s'>privacy settings</a> to Private in order to disable this option.").s(DEFAULT_ROOT+"account/?show=privacy")+"</div><div style='margin:5px'>&nbsp;<img src='"+DEFAULT_ROOT+"images/question.png' width='27' height='28' class='ContactCardViewIcon' />&nbsp;&nbsp;"+_("Would you like to make this change?").s("<strong>"+name+"</strong>")+"</div>",{id:"dlgPrivacyAlert",windowParameters:{buttonClass:"linkMenu",draggable:false,className:"alphacube",width:370,height:170,showEffect:Element.show,hideEffect:Element.hide},okLabel:_("Yes"),cancelLabel:_("No"),onload:function(){ButtonExtend('dlgPrivacyAlert');},ok:function(){objImg.setAttribute('auth',0);objImg.src=DEFAULT_ROOT+'images/'+imgName;thisObj.changePrivacyForced(usersystem,type,newPrivacy);Windows.close('dlgPrivacyAlert');}});return;}}objImg.src=DEFAULT_ROOT+'images/'+imgName;this.action='privacy_change';this.pars='usersystem='+usersystem+'&type='+type+'&value='+newPrivacy+'&force=0';this._doajax();},changePrivacyForced:function(usersystem,type,newPrivacy){this.action='privacy_change_forced';this.pars='usersystem='+usersystem+'&type='+type+'&value='+newPrivacy+'&force=1';this._doajax();},addUser:function(idpost,name,username){var thisObj=this;Dialog.confirm("<div style='margin:5px'>&nbsp;<img src='"+DEFAULT_ROOT+"images/question.png' width='27' height='28' class='ContactCardViewIcon' />&nbsp;&nbsp;"+_("Would you like to add %s (username: %s) to your address book?").s("<strong>"+name+"</strong>","<strong>"+username+"</strong>")+"</div>",{id:"dlgUserAdd",windowParameters:{buttonClass:"linkMenu",draggable:false,className:"alphacube",width:350,height:120,showEffect:Element.show,hideEffect:Element.hide},okLabel:_("Yes"),cancelLabel:_("No"),onload:function(){ButtonExtend('dlgUserAdd');},ok:function(){thisObj._adduser(idpost,name,username);Windows.close('dlgUserAdd');}});},_adduser:function(idpost,name,username){this.action='adduser';this.pars='idpost='+idpost+'&name='+name+'&username='+username;this._doajax();},checkFriend:function(){var username=$('friend_inputbox').value;if(username.length==0){$('add_friend_result').innerHTML=_("Please enter a valid username or e-mail address.");$('friend_inputbox').focus();return;}this.action='search_friend';this.pars='username='+username;$('add_friend_result').innerHTML='';$('friends_loading').style.display='';this._doajax();},addFriend:function(){var name=$('friend_name_add').value;var username=$('friend_username_add').value;this._adduser(0,name,username);Windows.close('dlgAddFriends');},addEvent:function(idpost,name){var thisObj=this;Dialog.confirm("<div style='margin:5px'>&nbsp;<img src='"+DEFAULT_ROOT+"images/question.png' width='27' height='28' class='ContactCardViewIcon' />&nbsp;&nbsp;"+_("Would you like to add the event %s to your calendar?").s("<strong>"+name+"</strong>")+"</div>",{id:"dlgEventAdd",windowParameters:{buttonClass:"linkMenu",draggable:false,className:"alphacube",width:350,height:120,showEffect:Element.show,hideEffect:Element.hide},okLabel:_("Yes"),cancelLabel:_("No"),onload:function(){ButtonExtend('dlgEventAdd');},ok:function(){thisObj._addevent(idpost);Windows.close('dlgEventAdd');}});},_addevent:function(idpost){this.action='addevent';this.pars='idpost='+idpost;this._doajax();},_doajax:function(){var objAjax=new Ajax.Request(DEFAULT_ROOT+'xml_post',{method:'post',parameters:this.pars==''?'action='+this.action:'action='+this.action+'&'+this.pars,onComplete:this._ajaxresponse.bindAsEventListener(this)});},_ajaxresponse:function(objReturn){var xmlDoc=objReturn.responseXML;var objResponse=xmlDoc.getElementsByTagName("response");strMsg=objResponse[0].getAttribute("msg");var thisObj=this;var action=objResponse[0].getAttribute("action");var result=objResponse[0].getAttribute("result");var idpost=objResponse[0].getAttribute("id");switch(action){case 'adduser':case 'addevent':case 'privacy_change_forced':window.location.href=window.location.href;return;break;case 'search_friend':$('friends_loading').style.display='none';if(result=='success'){$('friend_name').innerHTML=objResponse[0].getAttribute("fullname");$('friend_username').innerHTML=idpost+' <a href="'+DEFAULT_ROOT+'public/'+idpost+'">('+_("public profile")+')</a>';$('friend_found').style.display='';$('friend_not_found').style.display='none';if(objResponse[0].getAttribute("timestamp")!=''){$('friend_already').style.display='';$('btnAddFriend').style.display='none';}else{$('friend_already').style.display='none';$('btnAddFriend').style.display='';}$('friend_username_add').value=idpost;$('friend_name_add').value=objResponse[0].getAttribute("fullname");}else{if($F('friend_inputbox').match('@')!=null){INVITATION_EMAIL=$F('friend_inputbox');$('friend_invite').style.display='';}else{$('friend_invite').style.display='none';}$('friend_found').style.display='none';$('friend_not_found').style.display='';}break;default:}}};var PostServices=new PostServicesClass; 