﻿function BoutonDroit(e)
{
    if (document.all){
		if (event.button==2||event.button==3||event.button==4) {
			alert('© Aphrodite.fr');
      		return false;
		}
	}else {
		if (e.button==2||e.button==3||e.button==4){
			e.preventDefault();
			e.stopPropagation();
			alert('© Aphrodite.fr');
			return false;
		}
	}
}


if (document.all) // for IE
	document.onmousedown=BoutonDroit;

else // for FF
	document.onclick=BoutonDroit;

function trimLength(textarea, maxChars) {
    if (textarea.value.length <= maxChars) return;

    textarea.value = textarea.value.substr(0, maxChars)
}

function canAddCharacter(textarea, maxChars) {
    if (typeof (textarea.onkeypress.arguments[0]) != 'undefined')
        var keyCode = textarea.onkeypress.arguments[0].keyCode;
    else {
        if (document.selection.createRange().text.length != 0) return true;
        var keyCode = event.keyCode;
    }

    var allowedChars = new Array(8, 37, 38, 39, 40, 46); //Backspace, delete and arrow keys
    for (var x = 0; x < allowedChars.length; x++) if (allowedChars[x] == keyCode) return true;

    if (textarea.value.length < maxChars) return true;

    return false;
}


function showhover(login,ville,dept,pays, photo, elt, sexualite, ageM, ageF)
{
	document.getElementById('hover_img').src = photo;
	document.getElementById('hover_pseudo').innerHTML = login;
	document.getElementById('hover_pays').innerHTML = pays;
	document.getElementById('hover_ville').innerHTML = ville + ' (' + dept + ')';
	document.getElementById('hover_sexualite').innerHTML = sexualite;
	if(ageM=='-')
	    document.getElementById('hover_age_mr').innerHTML = ageM;
	else
	    document.getElementById('hover_age_mr').innerHTML = 'M:' + ageM + 'ans';
    if(ageF=='-')
	    document.getElementById('hover_age_mme').innerHTML = ageF;
	else
	    document.getElementById('hover_age_mme').innerHTML = 'Mme:' + ageF + 'ans';
	document.getElementById('hoverDiv').style.display = 'inline';
	document.getElementById('hoverDiv').style.top = (findPositionWithScrolling(document.getElementById(elt))[1]+20)+'px';
	document.getElementById('hoverDiv').style.left = (findPositionWithScrolling(document.getElementById(elt))[0]-20)+'px';
	
}
function hidehover()
{
	document.getElementById('hoverDiv').style.display = 'none';
}
		

function letternumber(e)
{
    var key;
    var keychar;

    if (window.event)
       key = window.event.keyCode;
    else if (e)
       key = e.which;
    else
       return true;
    
    keychar = String.fromCharCode(key);
    keychar = keychar.toLowerCase();

    // control keys
    if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) )
       return true;

    // alphas and numbers
    else if ((("abcdefghijklmnopqrstuvwxyz0123456789-_").indexOf(keychar) > -1))
       return true;
    else
       return false;
}


		
function findPositionWithScrolling( oElement ) {
  if( typeof( oElement.offsetParent ) != 'undefined' ) {
    var originalElement = oElement;
    for( var posX = 0, posY = 0; oElement; oElement = oElement.offsetParent ) {
      posX += oElement.offsetLeft;
      posY += oElement.offsetTop;
      if( oElement != originalElement && oElement != document.body && oElement != document.documentElement ) {
        posX -= oElement.scrollLeft;
        posY -= oElement.scrollTop;
      }
    }
    return [ posX,posY ];
  } else {
    return [ oElement.x,oElement.y ];
  }
}



function slideSideBar(){
	new Effect.toggle('sideBarContents', 'blind', {scaleX: 'true', scaleY: 'true;', scaleContent: false});
    if(isExtended==0){
        $('sideBarTab').childNodes[0].src = $('sideBarTab').childNodes[0].src;//.replace(/(\.[^.]+)$/, '-active$1');
        new Effect.Fade('sideBarContents', { duration:1.0, from:0.0, to:1.0 });
        isExtended++;
        aphrodite.fr.IMService.ExpandSideBar();
    }else{
        $('sideBarTab').childNodes[0].src = $('sideBarTab').childNodes[0].src.replace(/-active(\.[^.]+)$/, '$1');
        new Effect.Fade('sideBarContents',{ duration:1.0, from:1.0, to:0.0 });
        isExtended=0;
        aphrodite.fr.IMService.ExpandSideBar();
    }	
}
function init(){
    Event.observe('sideBarTab', 'click', slideSideBar, true);
}


var currentChatRoom;
        var curId;
        var refreshUserRate=300000;          // 300 secondes raffraichissement list utilisateurs
        var refreshMessageRate=7000;        // 7 secondes raffraichissement messages
        var refreshMessageSalonRate=4000;        // 4 secondes raffraichissement messages
        var refreshRoomsRate=20000;         // 20 secondes raffraichissement infos
        var refreshUserLastSeenRate=30000;  // 30 secondes raffraichissement lastseen
        
        function UpdateUserList() {
            __doPostBack('ctl00$BT_Refresh','');
            setTimeout('UpdateUserList()',refreshUserRate);
        }
        
        function UpdateUserLastSeen()
        {
            if (curId!=''){
                aphrodite.fr.IMService.UpdateLastSeen();
                setTimeout('UpdateUserLastSeen()',refreshUserLastSeenRate);
            }
        }
        
        function InitRoom(roomId,UserId,pnl,msg)
        {
            if (curId!=''){
                aphrodite.fr.IMService.InitRoom(roomId, UserId);
            }
        }
        function InitRoomSalon(roomId,pnl,msg)
        {
            if (curId!=''){
                aphrodite.fr.IMService.InitRoomSalon(roomId);
            }
        }
        function SendMessage(roomId,idUserDest,pnl,msg)
        {
            if (curId!='' && msg.value.length>0){
                aphrodite.fr.IMService.SendMessage(roomId, idUserDest, msg.value, SendMessages_OnComplete, SendMessages_OnError, pnl);
                msg.value='';
                msg.focus();
            }
        }
        function SendMessageSalon(roomId,pnl,msg)
        {
            if (curId!='' && msg.value.length>0){
                aphrodite.fr.IMService.SendMessageSalon(roomId, msg.value, SendMessagesSalon_OnComplete, SendMessagesSalon_OnError, pnl);
                msg.value='';
                msg.focus();
            }
        }
        function GetMessages(roomId,pnl)
        {
            if (curId!=''){
                aphrodite.fr.IMService.GetMessages(roomId, GetMessages_OnComplete, GetMessages_OnError, pnl);
                setTimeout('GetMessages(\'' + roomId + '\',$get(\''+ pnl.id + '\'))',refreshMessageRate);
            }
        }
        function GetHistoriqueMessages(roomId,pnl)
        {
            if (curId!=''){
                aphrodite.fr.IMService.GetAllMessages(roomId, GetHistoriqueMessages_OnComplete, GetHistoriqueMessages_OnError, pnl);
            }
        }
        function GetMessagesSalon(roomId,pnl)
        {
            if (curId!=''){
                aphrodite.fr.IMService.GetMessagesSalon(roomId, GetMessagesSalon_OnComplete, GetMessagesSalon_OnError, pnl);
                setTimeout('GetMessagesSalon(\'' + roomId + '\',$get(\''+ pnl.id + '\'))',refreshMessageSalonRate);
            }
        }
        function CanAccess()
        {
            if (curId!=''){
                aphrodite.fr.IMService.CanAccess(curId, CanAccess_OnComplete, CanAccess_OnError);
                setTimeout('CanAccess()',refreshMessageRate);
            }
        }
        function GetConversations(roomId,pnl)
        {
            if (curId!=''){
                aphrodite.fr.IMService.GetConversations(roomId, GetConversations_OnComplete, GetConversations_OnError, pnl);
                setTimeout('GetConversations(\'' + roomId + '\',$get(\''+ pnl.id + '\'))',refreshMessageRate);
            }
        }
        function GetChatters(roomId,pnl)
        {
            if (curId!=''){
                aphrodite.fr.IMService.GetChatters(roomId, GetChatters_OnComplete, GetChatters_OnError, pnl);
                setTimeout('GetChatters(\'' + roomId + '\',$get(\''+ pnl.id + '\'))',refreshMessageRate);
            }
        }
        function BanUserSalon(pUserId)
        {
            if (curId!=''){
                var pnl=$get('ctl00_ContentPlaceHolder1_Pnl_TabList');
                aphrodite.fr.IMService.BanUserSalon(pUserId, GetChatters_OnComplete, GetChatters_OnError,pnl);
            }
        }
        function LogOffSalon(pUserId)
        {
            if (curId!=''){
                aphrodite.fr.IMService.LogOffSalon(pUserId, LogOffSalon_OnComplete, LogOffSalon_OnError);
            }
        }
        function LogInSalon()
        {
            if (curId!=''){
                var pnl=$get('ctl00_ContentPlaceHolder1_Pnl_TabList');
                aphrodite.fr.IMService.LogInSalon(GetChatters_OnComplete, GetChatters_OnError,pnl);
            }
        }
        function LogInSalonVisitor()
        {
            if (curId!=''){
                aphrodite.fr.IMService.LogInSalonVisitor();
            }
        }
        function GetNewInfos()
        {
            if (curId!=''){
                aphrodite.fr.IMService.GetNewInfos(GetNewInfos_OnComplete, GetNewInfos_OnError);
                setTimeout('GetNewInfos()',refreshRoomsRate);
            }
        }
        function GetNewRooms()
        {
            if (curId!=''){
                aphrodite.fr.IMService.GetTotalMessages(GetTotalMessages_OnComplete, GetTotalMessages_OnError);
                //IMService.GetNewRooms(GetNewRooms_OnComplete,GetNewRooms_OnError);
                setTimeout('GetNewRooms()',refreshRoomsRate);
            }
        }          
            
            
            
        /*function GetNewRooms_OnComplete(result)
        {
            if (curId!=''){
                if (result!=null){
                    if (currentChatRoom==''){
                        $get('ib_MessagesTchat').src='/images/tchat.gif';
                        $get('a_MessagesTchat').href="javascript:document.location='/chat.aspx?r="+ result[0] +"';";
                    }
                    else
                    {
                        $get('ib_MessagesTchat').src='/images/tchat_off.gif';
                        $get('a_MessagesTchat').href='#';
                    }
                }
            }
        }*/
        function GetTotalMessages_OnComplete(result)
        {
            if (curId!=''){
                if (result != null) {

                    if (currentChatRoom==''){
                        $get('ctl00_Login1_lb_messagesTchat').innerHTML=result[0];
                        $get('ib_MessagesTchat').src = '/images/tchat.gif';
                        $get('imgIncomingChat').src = '/images/newChatMessage.gif';

                        $get('a_MessagesTchat').href = "javascript:document.location='/chat.aspx?r=" + result[1] + "';";
                        $get('a_imgIncomingChat').href = "javascript:document.location='/chat.aspx?r=" + result[1] + "';";
                        //soundManager.play('sndNewDial');
                    }
                    else
                    {
                        $get('ib_MessagesTchat').src = '/images/tchat_off.gif';
                        $get('imgIncomingChat').src = '/blank.gif';

                        $get('a_MessagesTchat').href = '#';
                        $get('a_imgIncomingChat').href = '#';
                    }
                }
            }
        }
        function GetNewInfos_OnComplete(result)
        {
            if (curId!=''){
                if (result!=null){
                    $get("ctl00_Login1_Lbl_Courrier").innerHTML= "<a href='/Courrier/Courrier.aspx' class='link'><strong>" + result[0].toString() + "</strong></a>";
                    $get("ctl00_Login1_Lbl_Wizz").innerHTML = "<a href='/MonCompte/Stats.aspx?wizz=1' class='link'><strong>" + result[1].toString() + "</strong></a>";
                    $get("ctl00_Login1_Lbl_Consultation").innerHTML = "<a href='/MonCompte/Stats.aspx?vues=1' class='link'><strong>" + result[2].toString() + "</strong></a>";
                    $get("ctl00_Login1_Lbl_Confidences").innerHTML = "<a href='/MonCompte/Confidences.aspx' class='link'><strong>" + result[3].toString() + "</strong></a>";
                }
            }
        }
        function SendMessages_OnComplete(result,pnl)
        {
            if (curId!='' && result!=''){
                var isBottom=((pnl.scrollHeight-pnl.scrollTop)<=pnl.clientHeight);
                pnl.innerHTML+=result;
                if(isBottom){pnl.scrollTop = pnl.scrollHeight;}
            }
        }  
        function SendMessagesSalon_OnComplete(result,pnl)
        {
            if (curId!='' && result!=''){
                var isBottom=((pnl.scrollHeight-pnl.scrollTop)<=pnl.clientHeight);
                pnl.innerHTML+=result;
                if(isBottom){pnl.scrollTop = pnl.scrollHeight;}
            }
        }  
        function GetMessages_OnComplete(result,pnl)
        {
            if (curId!='' && result!=''){
                var isBottom=((pnl.scrollHeight-pnl.scrollTop)<=pnl.clientHeight);
                pnl.innerHTML+=result;
                if(isBottom){pnl.scrollTop = pnl.scrollHeight;}
                //soundManager.play('sndNewMsg');
            }
        }  
        function GetHistoriqueMessages_OnComplete(result,pnl)
        {
            if (curId!='' && result!=''){
                var isBottom=((pnl.scrollHeight-pnl.scrollTop)<=pnl.clientHeight);
                pnl.innerHTML+=result;
                if(isBottom){pnl.scrollTop = pnl.scrollHeight;}
                //soundManager.play('sndNewMsg');
            }
        }  
        function CanAccess_OnComplete(result)
        {
            if (curId!=''){
                if (result==false){ 
                    window.document.location='/membreRequis.aspx';
                }
            }
        }  
        function GetMessagesSalon_OnComplete(result,pnl)
        {
            if (curId!='' && result!=''){
                var isBottom=((pnl.scrollHeight-pnl.scrollTop)<=pnl.clientHeight);
                pnl.innerHTML+=result;
                if(isBottom){pnl.scrollTop = pnl.scrollHeight;}
                //soundManager.play('sndNewMsg');
            }
        }  
        function LogOffSalon_OnComplete()
        {
        }  
        function BanUserSalon_OnComplete()
        {
        }  
        function LogInSalon_OnComplete(result,pnl)
        {
        } 
        function GetConversations_OnComplete(result,pnl)
        {
            
            if (curId!=''){
                pnl.innerHTML='<table width="100%" border="0" cellpadding="0" cellspacing="0">' + result + '</table>';
            }
        }     
        function GetChatters_OnComplete(result,pnl)
        {
            
            if (curId!=''){
                pnl.innerHTML='<table width="100%" border="0" cellpadding="1" cellspacing="1">' + result + '</table>';
            }
        }   
           
            
        /*function GetNewRooms_OnError(result){
        //alert(result.get_message());
        }*/
        function GetTotalMessages_OnError(result){
        //alert(result.get_message());
        }
        function GetNewInfos_OnError(result){
        //alert(result.get_message());
        }
        function GetMessages_OnError(result){
        //alert(result.get_message());
        }
        function GetHistoriqueMessages_OnError(result){
        //alert(result.get_message());
        }
        function GetMessagesSalon_OnError(result){
        //alert(result.get_message());
        }
        function SendMessages_OnError(result){
        //alert(result.get_message());
        }
        function SendMessagesSalon_OnError(result){
        //alert(result.get_message());
        }
        function GetConversations_OnError(result){
        //alert(result.get_message());
        }
        function GetChatters_OnError(result){
        //alert(result.get_message());
        }
        function LogOffSalon_OnError(result)
        {
        }  
        function LogInSalon_OnError(result)
        {
        } 
        function BanUserSalon_OnError(result)
        {
        } 
        function CanAccess_OnError(result)
        {
        //alert(result.get_message());
        } 
         function insertAtCursor(myField, myValue) {
          //IE support
          if (document.selection) {
            myField.focus();
            sel = document.selection.createRange();
            sel.text = myValue;
          }
          //MOZILLA/NETSCAPE support
          else if (myField.selectionStart || myField.selectionStart == '0') {
            var startPos = myField.selectionStart;
            var endPos = myField.selectionEnd;
            myField.value = myField.value.substring(0, startPos)
                          + myValue
                          + myField.value.substring(endPos, myField.value.length);
          } else {
            myField.value += myValue;
          }
        }
 
        function insertSmiley(id,msg)
        {
            switch (id)
            {
            case '01':insertAtCursor(msg,'>:)');break;
            case '02':insertAtCursor(msg,'|-()');break;
            case '03':insertAtCursor(msg,':-&');break;
            case '04':insertAtCursor(msg,'(doh)');break;
            case '05':insertAtCursor(msg,':-@');break;
            case '06':insertAtCursor(msg,'(wasntme)');break;
            case '07':insertAtCursor(msg,'(party)');break;
            case '08':insertAtCursor(msg,':-S');break;
            case '09':insertAtCursor(msg,':-x');break;
            case '10':insertAtCursor(msg,'(hi)');break;
            case '11':insertAtCursor(msg,'(call)');break;
            case '12':insertAtCursor(msg,'(devil)');break;
            case '13':insertAtCursor(msg,'(angel)');break;
            case '14':insertAtCursor(msg,'(giggle)');break;
            case '15':insertAtCursor(msg,'(clap)');break;
            case '16':insertAtCursor(msg,':-?');break;
            case '17':insertAtCursor(msg,'(whew)');break;
            case '18':insertAtCursor(msg,'(h)');break;
            case '19':insertAtCursor(msg,'(u)');break;
            case '20':insertAtCursor(msg,'(mooning)');break;
            case '21':insertAtCursor(msg,'(smoking)');break;
            case '22':insertAtCursor(msg,'(fubar)');break;
            case '23':insertAtCursor(msg,'(coffee)');break;
            case '24':insertAtCursor(msg,'(mp)');break;
            case '25':insertAtCursor(msg,':-)');break;
            case '26':insertAtCursor(msg,':-(');break;
            case '27':insertAtCursor(msg,':-D');break;
            case '28':insertAtCursor(msg,'8-)');break;
            case '29':insertAtCursor(msg,';-)');break;
            case '30':insertAtCursor(msg,':\'(');break;
            case '31':insertAtCursor(msg,':-*');break;
            case '32':insertAtCursor(msg,':-P');break;
            case '33':insertAtCursor(msg,':-$');break;
            case '34':insertAtCursor(msg,':^)');break;
            case '35':insertAtCursor(msg,'|-)');break;
            case '36':insertAtCursor(msg,'|-(');break;
            case '37':insertAtCursor(msg,'(inlove)');break;
            case '38':insertAtCursor(msg,'(f)');break;
            case '39':insertAtCursor(msg,':-|');break;
            case '40':insertAtCursor(msg,'(sweat)');break;
            }
        }
function showhoverAR(elt,_text)
{
	document.getElementById('hoverAR').innerHTML = _text;
	document.getElementById('hoverAR').style.display = 'inline';
	
	document.getElementById('hoverAR').style.top = (findPositionWithScrolling(document.getElementById(elt))[1])+'px';
	document.getElementById('hoverAR').style.left = (findPositionWithScrolling(document.getElementById(elt))[0]+270)+'px';
	
}

function hidehoverAR()
{
	document.getElementById('hoverAR').style.display = 'none';
}

