﻿var debug=false;var pageTitle="Tchat";function addEvent(obj,type,fn){if(obj.addEventListener){obj.addEventListener(type,fn,false);}else{if(obj.attachEvent){obj["e"+type+fn]=fn;obj[type+fn]=function(){obj["e"+type+fn](window.event);};obj.attachEvent("on"+type,obj[type+fn]);}}}function removeEvent(obj,type,fn){if(obj.removeEventListener){obj.removeEventListener(type,fn,false);}else{if(obj.detachEvent){obj.detachEvent("on"+type,obj[type+fn]);obj[type+fn]=null;obj["e"+type+fn]=null;}}}var inhibitList=new Array();function limitFrequency(id,func,timer,message){if(inhibitList[id]==true){if(message){alert(message);}}else{inhibitList[id]=true;setTimeout("clearInhibit('"+id+"')",timer);eval(func);}}function clearInhibit(id){if(inhibitList[id]==true){inhibitList[id]=null;}}function DisplayPanel(panelName){var panel=$(panelName);if(context.DisplayedPanel!=null){Element.hide(context.DisplayedPanel);}else{Element.hide(PANEL_DEFAULT);}context.DisplayedPanel=panel;context.DisplayedPanelName=panelName;if(panelName!=PANEL_WAITING){UpdateAdvertisements("DisplayPanel");}Element.show(panelName);}function GetSmiles(){SmileyManager.GetSmileys(DisplaySmileysCallBack);}function DisplaySmileysCallBack(res){if(res.error!=undefined){HandleError(res,DisplaySmileysCallBack);}if(context.SmileyCollection==null){context.SmileyCollection=res.value;}context.SmileyCollection.DataBind(TEMPLATE_SMILEY);}function AddSmiley(smiley){var dom=$(MESSAGE_TEXTAREA);if(dom!=null){dom.value+=smiley;dom.focus();}Element.hide(SMILEY_LIST);}function DisplayContactBook(){UserManager.GetContactBook(DisplayContactBookCallBack);}function DisplayContactBookCallBack(res){if(res.error!=undefined){HandleError(res,DisplayContactBookCallBack);}res.value.DataBind(ContactBookTemplateSelector);Effects.BlindDown(CONTACT_LIST,{duration:0.75,fps:50,transition:Effect.Transitions.linear});}function ContactBookTemplateSelector(usr){if(usr==null){return[TEMPLATE_CONTACT_SEPERATOR,TEMPLATE_CONTACT];}if(usr.Type<10){return TEMPLATE_CONTACT;}return TEMPLATE_CONTACT_SEPERATOR;}function FirstPage(){if(context.CurrentPage>0){LoadList(0);}context.CurrentPage=0;}function PreviousPage(){if(context.CurrentPage>0){LoadList(--context.CurrentPage);}}function NextPage(){if(context.CurrentPage<context.PageCount-1){LoadList(++context.CurrentPage);}}function LastPage(){if(context.CurrentPage<context.PageCount-1){LoadList(context.PageCount-1);}context.CurrentPage=context.PageCount-1;}function LoadList(pageIndex){context.CurrentPage=pageIndex;if(context.IsSearch){UserManager.SearchUsers(context.SearchCriteria,pageIndex,context.PageSize,LoadListCallBack);}else{UserManager.GetConnectedUsers(pageIndex,context.PageSize,LoadListCallBack);}}function LoadListCallBack(res){if(res.error!=undefined){HandleError(res,LoadListCallBack);}res.value.DataBind(TEMPLATE_CONNECTED);context.PageCount=res.value.pageCount;BindNode(USER_COUNT_TOTAL,res.value.totalLength);BindNode(USER_COUNT_LOCAL,res.value.totalLocalizedLength);BindNode(USER_COUNT_SEARCH,res.value.totalLength);BindNode(PAGING_TOTAL,context.PageCount);var idx=0;if(context.PageCount>0){idx=context.CurrentPage+1;}BindNode(PAGING_INDEX,idx);$(CONNECTED_LIST).scrollTop=0;}function DisplayUser(userId){ResetElements("DisplayUser");DisplayPanel(PANEL_WAITING);if(context.CurrentUser==null||context.CurrentUser.Id!=userId){UserManager.GetUser(userId,DisplayUserCallBack);}else{if(context.CurrentUser.Id==userId&&context.DisplayedPanelName!=PANEL_CONVERSATION){DisplayPanel(PANEL_CONVERSATION);GetMessages(context.CurrentUser.Id);}}}function DisplayUserCallBack(res){if(res.error!=undefined){HandleError(res,DisplayUserCallBack);}context.CurrentUser=res.value;if(res.value==undefined){DisplayPanel(PANEL_DISCONNECTED);}else{GetMessages(res.value.Id);if(res.value.IsAd){DisplayPanel(PANEL_AD);}else{DisplayPanel(PANEL_CONVERSATION);res.value.DataBind(TEMPLATE_PROFILE);BindNode(MESSAGE_CONTROLS_PSEUDO,res.value.Pseudo);$(MESSAGE_CONTROLS).style.display="block";$(MESSAGE_TEXTAREA).focus();}}}function ResetElements(caller){Element.hide(SMILEY_LIST);Effects.BlindUp(CONTACT_LIST,{duration:0.75,fps:50,transition:Effect.Transitions.linear});Effects.BlindUp(MESSAGE_LIST_UNREAD,{duration:0.75,fps:50,transition:Effect.Transitions.linear});$(MESSAGE_TEXTAREA).value="";}function BlockUser(){if(context.CurrentUser!=null){UserManager.BlockUser(context.CurrentUser.Id);ReadMessage();}ShowNextMessage();}function GetCurrentUser(){UserManager.GetCurrentUser(GetCurrentUserCallBack);}function GetCurrentUserCallBack(res){if(!res.error){context.User=res.value;BindNode(PROFILE_NICKNAME,context.User.Pseudo);}}function GetSupervisor(){UserManager.GetSupervisor(GetSupervisorCallBack);}function GetSupervisorCallBack(res){if(res.error){return;}if(res.value==null){return;}res.value.DataBind(TEMPLATE_SUPERVISOR);}function UpdateAvatar(avatarId){UserManager.UpdateAvatar(avatarId,UpdateAvatarCallBack);}function UpdateAvatarCallBack(res){if(res.error!=undefined){HandleError(res,SyncronizeCallBack);}LoadList(0);}function ShowUserOptions(){optionsWin=window.open("/content/option.aspx","options","height=500,width=500,scrollbars=no,status=yes").focus();if(optionsWin){optionsWin.focus();}}function FlashMP(doCallBack){return;var flashvars={MPCallBack:doCallBack};var params={allowScriptAccess:"always"};var attributes={id:VAR_MP};swfobject.embedSWF("http://www.babel.com/common/_images/imm-lib.swf",TEMPLATE_MP,"1","1","9.0.0","/common/_images/expressInstall.swf",flashvars,params,attributes);}function DisplayLastUser(){return;setTimeout(function(){try{$(VAR_MP).SetData(VAR_MP,null);}catch(e){}context.MP=false;Element.hide(PANEL_MP);DisplayUser(context.MsgLastId);},1500);}function GetMessages(userId,force){if(userId==undefined){userId=context.CurrentUser.Id;}if(context.MsgBlock&&context.MsgLastId==userId&&!force){return;}ConversationManager.GetMessages(userId,20,DisplayMessagesCallBack);context.MsgBlock=true;context.MsgLastId=userId;setTimeout("context.MsgBlock=false",5000);ResetElements("GetMessages");}function DisplayMessagesCallBack(res){if(res.error!=undefined){HandleError(res,DisplayMessagesCallBack);}res.value.DataBind(MessageItemTemplateSelector);if(res.value.length>0){$(MESSAGE_CONTROL_UNDO).style.display="none";$(MESSAGE_CONTROL_NOREPLY).style.display="inline";$(USER_MESSAGES).scrollTop=$(USER_MESSAGES).scrollHeight;}else{$(MESSAGE_CONTROL_NOREPLY).style.display="none";$(MESSAGE_CONTROL_UNDO).style.display="inline";}try{$(MESSAGE_TEXTAREA).focus();}catch(e){}GetMessageCount();}function MessageItemTemplateSelector(msg){if(msg==null){return[TEMPLATE_MESSAGE_READ,TEMPLATE_MESSAGE_UNREAD,TEMPLATE_MESSAGE_SENT,TEMPLATE_MESSAGE_AD];}if(msg.Type==0){if(msg.HasBeenRead){return TEMPLATE_MESSAGE_READ;}else{return TEMPLATE_MESSAGE_UNREAD;}}if(msg.Type==2){return TEMPLATE_MESSAGE_AD;}return TEMPLATE_MESSAGE_SENT;}function AutoRefreshMessageCount(){ConversationManager.GetConversations(AutoDisplayMessageCountCallBack);}function GetMessageCount(force){if(context.BlockMessageCount&&!force){return;}else{context.BlockMessageCount=true;setTimeout("context.BlockMessageCount=false",2000);}ConversationManager.GetConversations(DisplayMessageCountCallBack);}function AutoDisplayMessageCountCallBack(res){DisplayMessageCountCallBack(res);if(context.MessagesCount==0){setTimeout(AutoRefreshMessageCount,15000);}else{if(context.MessagesCount==1){setTimeout(AutoRefreshMessageCount,40000);}else{setTimeout(AutoRefreshMessageCount,60000);}}}function DisplayMessageCountCallBack(res){if(res.error!=undefined){HandleError(res,DisplayMessageCountCallBack);}if(res.value==0){context.MessagesCount=0;NewMessages=new Array(0);}else{context.MessagesCount=res.value.length;NewMessages=res.value;}if(context.MessagesCount==0){$(MESSAGE_WAITING_NONE).style.display="block";$(MESSAGE_WAITING_ONE).style.display="none";$(MESSAGE_WAITING_MORE).style.display="none";}else{if(context.MessagesCount==1){$(MESSAGE_WAITING_NONE).style.display="none";$(MESSAGE_WAITING_ONE).style.display="block";$(MESSAGE_WAITING_MORE).style.display="none";}else{$(MESSAGE_WAITING_NONE).style.display="none";$(MESSAGE_WAITING_ONE).style.display="none";$(MESSAGE_WAITING_MORE).style.display="block";$(MESSAGE_WAITING_COUNT).innerHTML=context.MessagesCount;}}if(NewMessages.length>0){NewMessages.DataBind(TEMPLATE_MESSAGE_WAIT);$(MESSAGE_STACK_NONE).style.display="none";$(MESSAGE_STACK_MORE).style.display="block";if(NewMessages.length==1){document.title=NewMessages.length+" Message : "+pageTitle;}else{document.title=NewMessages.length+" Messages : "+pageTitle;}}else{$(MESSAGE_STACK_NONE).style.display="block";$(MESSAGE_STACK_MORE).style.display="none";document.title=pageTitle;}}function ShowNewMessages(){if(context.MessagesCount==0){DisplayPanel(PANEL_DEFAULT);return;}Effects.BlindDown(MESSAGE_LIST_UNREAD,{duration:0.75,fps:50,transition:Effect.Transitions.linear});}function ShowNextMessage(){ShowFirstMessage(true);GetMessageCount(true);ResetElements("ShowNextMessage");}function ShowFirstMessage(force){if(context.MessagesCount==0){if(!force){GetMessageCount();}DisplayPanel(PANEL_DEFAULT);return;}for(i=0;i<NewMessages.length;i++){if(NewMessages.get(i).IsAd){if(force&&context.CurrentUser!=null&&NewMessages.get(i).Id==context.CurrentUser.Id){continue;}else{DisplayUser(NewMessages.get(i).Id);return;}}}if(force&&context.CurrentUser!=null&&NewMessages.get(0).Id==context.CurrentUser.Id){if(context.MessagesCount>1){DisplayUser(NewMessages.get(1).Id);}else{DisplayPanel(PANEL_DEFAULT);}}else{DisplayUser(NewMessages.get(0).Id);}if(!force){GetMessageCount();}}var oldText=" ";function PasteControl(){var newText=$(MESSAGE_TEXTAREA).value;if(newText.length>(oldText.length+6)){$(MESSAGE_TEXTAREA).value=oldText;}else{oldText=newText;}}function OnMessageKeyDown(e){PasteControl();if(e.keyCode==13){PostMessage();e.cancelBubble=true;e.returnValue=false;return false;}}function ReadMessage(){if(context.CurrentUser!=null){ConversationManager.ReadMessage(context.CurrentUser.Id);}}function PostMessage(){input=$(MESSAGE_TEXTAREA);if(input.value!=""){ReadMessage();ConversationManager.PostMessage(context.CurrentUser.Id,input.value,PostMessageCallBack);if(!$(MESSAGE_AUTONEXT).checked){UpdateAdvertisements("PostMessage");}}ResetElements("PostMessage");}function PostMessageCallBack(res){if(res.error!=undefined){HandleError(res,PostMessageCallBack);}if($(MESSAGE_AUTONEXT).checked){ShowNextMessage();}else{GetMessages(undefined,true);}}function UpdateAdvertisements(caller){if($("pubmain").offsetHeight!=0){$("pubmain").src="/content/pubmain.aspx";}if($("pubbanner").offsetHeight!=0){$("pubbanner").src="/content/pubbanner.aspx";}}function DoSearch(e){if(e.keyCode==13){Search();e.cancelBubble=true;e.returnValue=false;return false;}}function Search(){context.IsSearch=true;context.SearchCriteria=$(SEARCH_PSEUDO).value+";";context.SearchCriteria+=$(SEARCH_PROFILE).value+";";context.SearchCriteria+="0;";var agemin=new Number($(SEARCH_AGEMIN).value);if(isNaN(agemin)){agemin="0";}var agemax=new Number($(SEARCH_AGEMAX).value);if(isNaN(agemax)){agemax="99";}context.SearchCriteria+=agemin+";";context.SearchCriteria+=agemax+";";var hasOneCountry=false;var inputCountries=$(SEARCH_COUNTRY);for(j=0;j<inputCountries.options.length;j++){if(inputCountries.options[j].selected&&inputCountries.options[j].value!="0"){if(hasOneCountry){context.SearchCriteria+=",";}context.SearchCriteria+=inputCountries.options[j].value;hasOneCountry=true;}}context.SearchCriteria+=";";var hasOneDept=false;var inputDept=$(SEARCH_DEPT);for(j=0;j<inputDept.options.length;j++){if(inputDept.options[j].selected&&inputDept.options[j].value!="0"){if(hasOneDept){context.SearchCriteria+=",";}context.SearchCriteria+=inputDept.options[j].value;hasOneDept=true;}}if($("searchfield-sex-all").checked){context.SearchCriteria+=";";}if($("searchfield-sex-hommes").checked){context.SearchCriteria+=";0";}if($("searchfield-sex-femmes").checked){context.SearchCriteria+=";1";}LoadList(0);context.CurrentPage=0;$(CONNECTED_SEARCHHEADER).style.display="block";$(CONNECTED_HEADER).style.display="none";}function EndSearch(){context.IsSearch=false;context.CurrentPage=0;LoadList(0);$(SEARCH_PSEUDO).value="";$(SEARCH_PROFILE).value="";$("searchfield-sex-all").checked=true;$(SEARCH_AGEMIN).value="";$(SEARCH_AGEMAX).value="";$(SEARCH_COUNTRY).selectedIndex=0;$(SEARCH_DEPT).selectedIndex=0;Element.hide(SEARCH_DEPT);$(PAGEING_RESET).style.display="none";$(PAGEING_COUNTS).style.display="block";$(CONNECTED_SEARCHHEADER).style.display="none";$(CONNECTED_HEADER).style.display="block";}function Quit(msg){if(confirm(msg)){UserManager.Quit();document.location="/content/quit.aspx";}}function cancelRefreshFirefox(e){if(!e||window.navigator.userAgent.indexOf("AppleWebKit")>0){return true;}if(e.keyCode==116){e.cancelBubble=true;e.returnValue=false;return false;}return true;}function cancelRefresh(){if(!window.event){return true;}if(window.event.keyCode==116){window.event.keyCode=0;window.event.cancelBubble=true;window.event.returnValue=false;return false;}return true;}var errWin=null;function HandleError(response,method){if(!response){return;}if(response.error==NOT_AUTHED){UserManager.Quit();if(context.User.Type!=0){document.location="/content/quit.aspx";}else{document.location="/content/quit.aspx";}return;}if(response.error==ERROR_GOPS){UserManager.Quit();if(context.User.Type!=0){document.location="/content/quit.aspx";}else{document.location="/content/errorgops.aspx";}return;}if(response.error==ERROR_FREEMIUM){ResetElements(PANEL_MP);DisplayPanel(PANEL_MP);context.MP=true;$("premium").src="/content/micropaiement.aspx?"+new Date().getMilliseconds();return;}if(response.request.status==401||response.request.status==302){window.location.reload();}if(debug&&errWin==null){errWin=window.open("","error","height=500,width=700,scrollbars=yes,resizable=yes,status=yes");if(errWin){errWin.document.write("<pre>"+response.error+"\n\n"+method+"\n\n"+response.request+"</pre>");}}}window.onerror=errorHandler;function errorHandler(msg,url,line){var alertmsg="Erreur:"+msg+" ,Url: "+url+" ,Line: "+line;if(debug){alert(alertmsg);}return true;}function Initialize(){document.onkeydown=cancelRefresh;document.onkeypress=cancelRefreshFirefox;setTimeout("LoadList(0)",3000);setTimeout(AutoRefreshMessageCount,15000);self.focus();GetCurrentUser();resizeElements();}