var currentActiveTab = 'fiche';
var idFirstVideo = 0;
var NAVTHUMB = "navThumb-";
var NAVTHUMBDESC = "navThumbDesc-";
var currentThumbItem = 0;

var playerActive = false;
var mediaCalled = false;
var albumCalled = false;

var fontSizeables = ["batisseTitle", "batisseItem1", "batisseItem2", "batisseItem3", "dimensionsTitle", "dimensionsListItem1", "dimensionsListItem2", "dimensionsListItem3", "fraisTitle", "fraisItem1", "fraisItem2", "fraisItem3", "descriptionTitle", "descriptionParagraph", "supplementairesTitle", "caracteristiquesTitle", "piecesTitle"];

var currentPop = null;
var currentBulle = null;

var bulleWidth = 437;
var bulleHeight = 212;

var ym = 0;
var xm = 0;

var winWidth = 0;
var winHeight = 0;

var mapLoaded = false;

var jsResourceToUse = "";

// http('GET', contextPath + '/' + lang + '/addToFavorites.rmx?codechambre=' + codeChambre + "&idinscr=" + idinscr, toggleFavoritesBtn);
function addToFavoritesFromFiche(idinscr, codechambre){
    http('GET', contextPath + '/' + lang + '/addToFavoritesFiche.rmx?codechambre=' + codechambre + "&idinscr=" + idinscr, toggleFavoriteLinkFiche);
}

// http('GET', contextPath + '/' + lang + '/removeFromFavorites.rmx?codechambre=' + codeChambre + "&idinscr=" + idinscr, toggleFavoritesBtn);
function removeFromFavoritesFromFiche(idinscr, codechambre){
    var msg = "";
    if(lang == "en"){
        msg = "Do you want to remove this listing from your list of favorites ?";
    }else{
        msg = "Voulez-vous retirer cette inscription de votre liste de favoris ?";
    }
    if(confirm(msg)){
        http('GET', contextPath + '/' + lang + '/removeFromFavoritesFiche.rmx?codechambre=' + codechambre + "&idinscr=" + idinscr, toggleFavoriteLinkFiche);
    }
}

function toggleFavoriteLinkFiche(obj){
    document.getElementById("favoritesAction").innerHTML = obj;
}

function setFontSize(size, nbCaractSupplementaires, nbPieces){
    for(var i = 0 ; i < fontSizeables.length ; i++){
        if(isIE() || isSafari()){
            document.getElementById(fontSizeables[i]).style.fontSize = size + "px";
        }else{
            document.getElementById(fontSizeables[i]).style.fontSize = size + "px";
        }
    }
    for(var cpt = 0 ; cpt < nbCaractSupplementaires ; cpt++){
        if(isIE() || isSafari()){
            document.getElementById("caractSuppl-" + cpt).style.fontSize = size + "px";
        }else{
            document.getElementById("caractSuppl-" + cpt).style.fontSize = size + "px";
        }
    }
    for(var cpt = 0 ; cpt < nbPieces ; cpt++){
        if(isIE() || isSafari()){
            document.getElementById("detailPieceNom-" + cpt).style.fontSize = size + "px";
            document.getElementById("detailPieceNiveau-" + cpt).style.fontSize = size + "px";
            document.getElementById("detailPieceDim-" + cpt).style.fontSize = size + "px";
            document.getElementById("detailPiecePlancher-" + cpt).style.fontSize = size + "px";
            document.getElementById("detailPieceDesc-" + cpt).style.fontSize = size + "px";
        }else{
            document.getElementById("detailPieceNom-" + cpt).style.fontSize = size + "px";
            document.getElementById("detailPieceNiveau-" + cpt).style.fontSize = size + "px";
            document.getElementById("detailPieceDim-" + cpt).style.fontSize = size + "px";
            document.getElementById("detailPiecePlancher-" + cpt).style.fontSize = size + "px";
            document.getElementById("detailPieceDesc-" + cpt).style.fontSize = size + "px";
        }
    }
}

if ((n4 || n6) && !isFirefox()){
    //alert('n4 or n6');
    window.captureEvents(Event.MOUSEMOVE);
    function mouseNS(e){
        ym = e.pageY-window.pageYOffset;
        xm = e.pageX;
        //document.getElementById("teste").innerHTML = xm + " : " + ym;
        setWindowSizes();
        try{
            if(currentPop != null){
                getThumbnailPopup(currentPop);
            }else if(currentBulle != null){
                getInfobulle(currentBulle);
            }
        }catch(err){}
    }
    if (n4){
        window.onMouseMove=mouseNS;
    }
    if (n6){
        document.onmousemove=mouseNS;
    }
}else if (isIE() || isOpera()){
    function mouseIEO(){
        ym = (ie)?event.clientY:event.clientY-window.pageYOffset;
        xm = event.clientX;
        //document.getElementById("teste").innerHTML = xm + " : " + ym;
        setWindowSizes();
        try{
            if(currentPop != null){
                getThumbnailPopup(currentPop);
            }else if(currentBulle != null){
                getInfobulle(currentBulle);
            }
        }catch(err){}
    }
    document.onmousemove=mouseIEO;
}else if(isFirefox()){
    document.onmousemove = function(e){
        xm = getX(e);
        ym = getY(e);
        //document.getElementById("teste").innerHTML = xm + " : " + ym;
        setWindowSizes();
        try{
            if(currentPop != null){
                getThumbnailPopup(currentPop);
            }else if(currentBulle != null){
                getInfobulle(currentBulle);
            }
        }catch(err){}
    }
}

function nextThumbnailItem(mediaLength, hasalbum){
    var elm = document.getElementById(NAVTHUMB + currentThumbItem);
    elm.style.borderColor = '#FFFFFF';
    
    currentThumbItem = currentThumbItem + 1;
    if(currentThumbItem == mediaLength){
        currentThumbItem = 0;
    }
    
    var prov = document.getElementById("navThumbProv-" + currentThumbItem).value;
    /*
    if (prov == 10 && mediaLength > 1) {
        
        var autreProv = document.getElementById("navThumbProv-1").value;
        prov = autreProv;
    }
    */

    displayMedia(hasalbum, prov);
}

function prevThumbnailItem(mediaLength, hasalbum){
    var elm = document.getElementById(NAVTHUMB + currentThumbItem);
    elm.style.borderColor = '#FFFFFF';
    
    if(currentThumbItem == 0){
        currentThumbItem = mediaLength -1;
    }else{
        currentThumbItem = currentThumbItem - 1;
    }
    
    // ici, il faut passer la provenance 
    var prov = document.getElementById("navThumbProv-" + currentThumbItem).value;
    
    // Hack pour que la photo principale soit de la m�me grosseur que le reste
    // des photos de Centris
    /*
    if (prov == 10 && mediaLength > 1) {
        
        var autreProv = document.getElementById("navThumbProv-1").value;
        prov = autreProv;
    }
    */
    displayMedia(hasalbum, prov);
}

function setCurrentThumbItem(current, hasalbum){
    try {
        var elm = document.getElementById(NAVTHUMB + currentThumbItem);
        elm.style.borderColor = '#FFFFFF';
    }
    catch (e) {
    }
    
    currentThumbItem = current;

    displayMedia(hasalbum);
}


function setCurrentThumbItem(current, hasalbum, prov){

    try {
        var elm = document.getElementById(NAVTHUMB + currentThumbItem);
        elm.style.borderColor = '#FFFFFF';
    }
    catch (e) {
    }
    
    currentThumbItem = current;
    
    displayMedia(hasalbum, prov);
}


function displayMedia(hasalbum, prov){

    var elm = document.getElementById(NAVTHUMB + currentThumbItem);
    elm.style.borderColor = '#4E87BC';
    
    var cName = elm.className;
    if(cName == 'mediaPhotoThumb'){
    
        playerActive = false;
        var imgs = elm.getElementsByTagName("img");
        var src = imgs[0].src;
        
        src = src.replace(/thumbs/, "stage");
                
        var inner = '';
        if (prov == 1){
            // inner = '<img height="315" style="border: solid #D83634 1px;" src="' + src + '" alt="" title=""/>';
            inner = '<img style="border: solid #D83634 1px;" src="' + src + '" alt="" title=""/>';
        }else{
            inner = '<img style="border: solid #D83634 1px;" src="' + src + '" alt="" title=""/>';
        }
        
        document.getElementById("mediaDisplay").innerHTML = "";
        document.getElementById("mediaDisplay").innerHTML = inner;
        
        var description = document.getElementById(NAVTHUMBDESC + currentThumbItem).innerHTML;
        document.getElementById("mediaDisplayDesc").innerHTML = description;
    
    }else if(cName == 'mediaPanoThumb'){
        
        playerActive = true;
        var spans = elm.getElementsByTagName("span");
        var src = "";
        var desc = "";
        for(var i = 0 ; i < spans.length ; i++){
            if(spans[i].id == 'navPanoPath-' + currentThumbItem){
                src = spans[i].innerHTML;
            }else{
                desc = spans[i].innerHTML;
            }
        }
        
        document.getElementById("mediaDisplayDesc").innerHTML = desc;
        
        var panotag = '<applet code="ptviewer.class" archive="' + contextPath + '/applet/ptviewer.jar" width="739" height="400">';
        panotag += '<param name=file value="/pano/' + src + '.rmx">';
        panotag += '<param name=cursor value="MOVE">';
        panotag += '<param name=showToolbar value="false">';
        panotag += '<param name=fov value="165">';
        panotag += '<param name=quality value="3">';
        panotag += '<param name=auto value="0.25">';
        panotag += '<param name=pan value="90">';
        panotag += '<param name=oversampling value="2.4">';
        panotag += '<param name=imgLoadFeedback value="true">';
        panotag += '</applet>';
        document.getElementById("mediaDisplay").innerHTML = panotag;
        
    }else if(cName == 'mediaVideoThumb'){
        
        playerActive = true;
        var spans = elm.getElementsByTagName("span");
        var src = "";
        var desc = "";
        for(var i = 0 ; i < spans.length ; i++){
            if(spans[i].id == 'navVideoPath-' + currentThumbItem){
                src = spans[i].innerHTML;
            }else{
                desc = spans[i].innerHTML;
            }
        }
        var videoContent = "";
        if(isIE()){
            videoContent = VIDEOTAG2[0] + src + VIDEOTAG2[1];
        }else{
            videoContent = VIDEOTAG[0] + src + VIDEOTAG[1] + src + VIDEOTAG[2];
        }
        document.getElementById("mediaDisplay").innerHTML = videoContent;
        document.getElementById("mediaDisplayDesc").innerHTML = desc;
        
    }
    
}

function fillPanoramicImageTag(obj){
    document.getElementById("mediaDisplay").innerHTML = obj;
}

function toggleVideoTabState(elm, tabName, current, hasalbum){
    
    toggleTabState(elm, tabName);

    if(!mediaCalled){
        mediaCalled = true;
        setTimeout('setCurrentThumbItem(' + current + ', ' + hasalbum + ')', 750);
    }else{
        setCurrentThumbItem(current, hasalbum);
    }
}


function displayMainImageLayer(){
    showElement("mainImageLayer");
}

function hideMainImageLayer(){
    hideElement("mainImageLayer");
}

function pause(numberMillis) {
        var now = new Date();
        var exitTime = now.getTime() + numberMillis;
        while (true) {
            now = new Date();
            if (now.getTime() > exitTime)
                return;
        }
    }

function toggleTabState(elm, tabName){

    if(bodyLoaded){ // failsafe pour eviter de montrer l'erreur unsupported browser detected ... 

        if(tabName == 'other'){

            toggleTabState(document.getElementById(currentActiveTab + "Tab"), currentActiveTab);

        }else{

            if(tabName == "video" || tabName == "media"){

                if(!mediaCalled){
                    if(tabName === "media"){
                        mediaCalled = true;
                    }
                    var codechambre = document.getElementById("hidCodeChambre").value;
                    var idinscr = document.getElementById("hidIdinscr").value;
                    var nomPhoto = document.getElementById("hidNomPhoto").value;
                    var hasalbum = document.getElementById("hidHasalbum").value;
                    http('GET', contextPath + '/' + lang + '/getMediaContent.rmx?codechambre=' + codechambre + "&idinscr=" + idinscr + "&nomphoto=" + nomPhoto + "&hasalbum=" + hasalbum, fillMediaStage);
                }

            }

            if(tabName == "album"){

                if(!albumCalled){
                    if(tabName == 'album'){
                        albumCalled = true;
                    }
                    var codechambre = document.getElementById("hidCodeChambre").value;
                    var idinscr = document.getElementById("hidIdinscr").value;
                    var nomPhoto = document.getElementById("hidNomPhoto").value;
                    var hasalbum = document.getElementById("hidHasalbum").value;
                    http('GET', contextPath + '/' + lang + '/getAlbumContent.rmx?codechambre=' + codechambre + "&idinscr=" + idinscr + "&nomphoto=" + nomPhoto + "&hasalbum=" + hasalbum, fillAlbumStage);


                }

            }

            if(tabName == "video"){
                showElement('mediaStage');
            }else if(tabName != 'media' && tabName != 'fiche'){
                showElement(tabName + 'Stage');
            }

            if(tabName == 'media'){

                hideElement("ficheStageLeft");
                hideElement("ficheStageRight");
                hideElement("roomContainer");
                showElement("mediaStage")

            }

            if (tabName != currentActiveTab) {

                if( (currentActiveTab == "video" && tabName == "media") || (currentActiveTab == "media" && tabName == "video") ){
                    // on fait rien !!!
                }else{

                    if(tabName == 'album'){
                        showElement(tabName + 'Stage');
                    }

                    if(tabName == 'fiche'){

                        showElement("ficheStageLeft");
                        showElement("ficheStageRight");
                        showElement("roomContainer");
                        hideElement("mediaStage");
                    }

                    if(tabName == 'carte'){
                        showElement("carteStage");
                    }

                    if(currentActiveTab == 'carte'){
                        hideElement("carteStage");
                    }

                    if(currentActiveTab == 'album'){
                        hideElement("albumStage");
                    }

                    if(currentActiveTab == 'media'){
                        hideElement("mediaStage");
                    }

                    if(currentActiveTab == 'fiche'){
                        hideElement("ficheStageLeft");
                        hideElement("ficheStageRight");
                        hideElement("roomContainer");
                    }

                    if(currentActiveTab == "video"){
                        hideElement('mediaStage');
                    }

                }

            }

            document.getElementById(currentActiveTab + 'Tab').className = 'ficheOnglet';
            elm.className = 'ficheOngletActive';
            currentActiveTab = tabName;
        }
        
    }
    
}


function fillMediaStage(obj){
    document.getElementById("mediaStage").innerHTML = obj;
}

var mediaArray = new Array();

function fillAlbumStage(obj){

    document.getElementById("albumStage").innerHTML = obj;
    
    var count = count = document.getElementById("countMedia").innerHTML;
    
    for (i = 0; i < count; i++) {
        var data = document.getElementById("infoMedia-" + i).innerHTML;
        
        var med = new Media(data);
        mediaArray[i] = med;
    }
    
    for (i = 0; i < 4; i++) {
        
        try {
            var singleMedia = mediaArray[i];
            var fullPath = 'http://media.remax-quebec.com/img/album/' + singleMedia.getImagePath();
            // document.getElementById("img-" + i).src = fullPath;
            document.getElementById("img-" + i).style.backgroundImage = "url(" + fullPath + ")";
            document.getElementById("desc-" + i).innerHTML = singleMedia.getImageDesc();
            document.getElementById("imgAlbum-" + i).style.display = "block";
        }
        catch (e) {}

    }   
    
}


var currentAlbumPage = 1;
var nbPerpage = 4;

function previousAlbumPage(nbMedias){
    var nbPages = getNbPages(nbMedias, nbPerpage);
    var newPage = 0;
    if(currentAlbumPage == 1){
        newPage = nbPages;
    }else{
        newPage = currentAlbumPage - 1;
    }
    hideOldAlbumPage(currentAlbumPage, nbMedias);
    showCurrentPage(newPage, nbMedias);
    currentAlbumPage = newPage;
    setPagerTitle(currentAlbumPage, nbMedias);
}

function nextAlbumPage(nbMedias){
    var nbPages = getNbPages(nbMedias, nbPerpage);
    var newPage = 0;
    if(currentAlbumPage == nbPages){
        newPage = 1;
    }else{
        newPage = currentAlbumPage + 1;
    }
    hideOldAlbumPage(currentAlbumPage, nbMedias);
    showCurrentPage(newPage, nbMedias);
    currentAlbumPage = newPage;
    setPagerTitle(currentAlbumPage, nbMedias);
}

function setPagerTitle(currentPage, nbmedias){
    var str = "Page " + currentPage + "&nbsp;" + ((lang == 'fr') ? "de" : "of") + "&nbsp;" + getNbPages(nbmedias, nbPerpage);
    document.getElementById("albumPager").innerHTML = str;
}

function hideOldAlbumPage(page, nbMedias){
    var start = (page - 1) * nbPerpage;
    for(var cpt = start ; cpt < (start + nbPerpage) ; cpt++){
        if(cpt < nbMedias){
            hideElement("imgAlbum-" + cpt);
        }
    }
}

function showCurrentPage(page, nbMedias){
    var start = (page - 1) * nbPerpage;
    var i = 0;
    for(var cpt = start ; cpt < (start + nbPerpage) ; cpt++){
        if(cpt < nbMedias){
            
            var singleMedia = mediaArray[cpt];
            var fullPath = 'http://media.remax-quebec.com/img/album/' + singleMedia.getImagePath();
            // document.getElementById("img-" + i).src = fullPath;
            document.getElementById("img-" + i).style.backgroundImage = "url(" + fullPath + ")";
            document.getElementById("desc-" + i).innerHTML = singleMedia.getImageDesc();
            document.getElementById("imgAlbum-" + i).style.display = "block";
        }
        else {
            document.getElementById("imgAlbum-" + i).style.display = "none";
        }
        
        i++;
    }
}

function getNbPages(nbMedias, nbPerpage){
   return Math.ceil(nbMedias / nbPerpage);
}

function toggleToCarte(elm, tabName, lat, lng) {
    toggleTabState(elm, tabName);
    // loading de la map ici...
    if (!mapLoaded) {
        loadGMap(lat, lng, null, null);
        mapLoaded = true;
    }   
}

function getThumbnailPopup(id){
    /*
    currentPop = id;
    
    var elmid = "navThumb-" + id.substring(id.indexOf("-") + 1);
    findPos(document.getElementById(elmid));
    
    if(playerActive){
        curtop = curtop + 58;
        document.getElementById(id).style.backgroundImage =  "url(" + contextPath + "/images/fiche/philacteredown.gif)";
        document.getElementById(id).style.backgroundPosition = "top";
    }else{
        curtop = curtop - 146;
        document.getElementById(id).style.backgroundImage =  "url(" + contextPath + "/images/fiche/philactere.gif)";
        document.getElementById(id).style.backgroundPosition = "bottom";
    }
    
    curleft = curleft - 36;
    showElement(id);
    place(document.getElementById(id), curleft, curtop);    
    */
}

function resumeState(id){
    currentPop = null;
    hideElement(id);
}

var curleft = 0;
var curtop = 0;
function findPos(obj) {
    if (obj.offsetParent) {
        curleft = obj.offsetLeft
	curtop = obj.offsetTop
	while (obj = obj.offsetParent) {
            curleft += obj.offsetLeft
            curtop += obj.offsetTop
	}
    }
}

function getInfobulle(id){
    
    var agt = navigator.userAgent;
    // if(agt.indexOf('MSIE 6') != -1){
    if(true){
        
        findPos(document.getElementById(id.substring(6)));
        var pLeft = (curleft + 102);
        var pTop = (curtop + 68);
        
        var left = "left";
        if(pLeft + bulleWidth > winWidth){
            pLeft = pLeft - bulleWidth - 64;
            left = "right";
        }
        var top = "top";
        if(pTop + bulleHeight > winHeight){
            pTop = pTop - bulleHeight - 32;
            top = "bottom";
        }
        
        document.getElementById(id).style.backgroundImage = "url(" + contextPath + "/images/results/infobulle-" + top + "-" + left + ".gif)";
        place(document.getElementById(id), pLeft, pTop);
        showElement(id);
                
    }else{
        
        currentBulle = id;
        showElement(id);
        xm = xm + 5;
        ym = ym + 5;
        var left = "left";
        if(xm + bulleWidth > (winWidth - 24)){
            xm = xm - bulleWidth - 5;
            left = "right";
        }
        var top = "top";
        if(ym + bulleHeight > (winHeight - 14)){
            ym = ym - bulleHeight - 5;
            top = "bottom"
        }
        document.getElementById(id).style.backgroundImage = "url(" + contextPath + "/images/results/infobulle-" + top + "-" + left + ".gif)";
        place(document.getElementById(id), xm, ym);    
        
    }
}

function resetBulleState(id){
    currentBulle = null;
    hideElement(id);
}

function setWindowSizes() {
    if( typeof( window.innerWidth ) == 'number' ) {
        //Non-IE
        winWidth = window.innerWidth;
        winHeight = window.innerHeight;
    } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
        //IE 6+ in 'standards compliant mode'
        winWidth = document.documentElement.clientWidth;
        winHeight = document.documentElement.clientHeight;
    } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
        //IE 4 compatible
        winWidth = document.body.clientWidth;
        winHeight = document.body.clientHeight;
    }
    // document.getElementById("teste").innerHTML = "Width : " + winWidth + " <br/>Height : " + winHeight;
}

function displayCalculette() {
    
    showElement('layerCalculette');
}

function sendLinkToFriend(langue, codechambre, idinscr, jsResource) {
    jsResourceToUse = jsResource;
    var bundle = new Bundle(jsResourceToUse);
    
    var firstname = document.getElementById("firstnameAmis").value;
    var lastname = document.getElementById("lastnameAmis").value;
    var emailsender = document.getElementById("emailsenderAmis").value;
    var emailrec = document.getElementById("emailrecAmis").value;
    var commentaires = document.getElementById("commentairesAmis").value;
    var captchaTxt = document.getElementById("captchaTxt").value;
    
    if (firstname == '') {
        alert(unescape(bundle.getString("error.general.firstname")));
    }
    else if (lastname == '') {
        alert(unescape(bundle.getString("error.general.lastname")));
    }
    else if (!isValidEmail(emailsender)) { 
        alert(unescape(bundle.getString("error.general.email.sender")));
    }
    else if (!isValidEmail(emailrec)) { 
        alert(unescape(bundle.getString("error.general.email.recipient")));
    }
    else if (!isAlphanumeric(commentaires)) {
        alert(unescape(bundle.getString("error.general.invalid.caracter")));
    }
    else if (captchaTxt == '') {
        alert(unescape(bundle.getString("error.general.captcha.empty")));
    }
    else {
        document.getElementById("formEnvoiAmi").submit();

    }
    
}

function sendLinkToFriendCallback(obj){
    
    var bundle = new Bundle(jsResourceToUse);
    
    if (obj == 1) {
        alert(unescape(bundle.getString("email.sent.success")));
        hideElement('envoisami');
    }
    else if (obj == 2){
        alert(unescape(bundle.getString("error.captcha.text")));
    }
    else {
        alert(unescape(bundle.getString("email.error")));
    }
}

function sendRenseignements(langue, codechambre, idinscr, jsResource) {
    
    jsResourceToUse = jsResource;
    var bundle = new Bundle(jsResourceToUse);
    
    var firstname = document.getElementById("firstname").value;
    var lastname = document.getElementById("lastname").value;
    var email = document.getElementById("email").value;
    var telephoneJour = document.getElementById("telephoneJour").value;
    var telephoneSoir = document.getElementById("telephoneSoir").value;
    var commentaires = document.getElementById("commentaires").value;
    //var captcha = document.getElementById("captchaTxtInfos").value;
    
    if (firstname == '') {
        alert(unescape(bundle.getString("error.general.firstname")));
    }
    else if (lastname == '') {
        alert(unescape(bundle.getString("error.general.lastname")));
    }
    else if (!isValidEmail(email)) {
        alert(unescape(bundle.getString("error.general.email.sender")));
    }
    else if (telephoneJour != '' && !isPhoneValid(telephoneJour)) {
        alert(unescape(bundle.getString("error.general.phone.day")));
    }
    else if (telephoneSoir != '' && !isPhoneValid(telephoneSoir)) {
        alert(unescape(bundle.getString("error.general.phone.evening")));
    }   
    else if (!isAlphanumeric(commentaires)) {
        alert(unescape(bundle.getString("error.general.invalid.caracter")));
    }
    
    /*
    else if (captcha == '') {
        alert(unescape(bundle.getString("error.general.captcha.empty")));
    }
    */
    else {
        document.getElementById("formRenseignements").submit();
    }
    
}

function sendRenseignementsCallback(obj){
    var bundle = new Bundle(jsResourceToUse);
    
    if (obj == 1) {
        alert(unescape(bundle.getString("email.sent.success")));
        hideElement('renseignement');
    }else if(obj == 2){
        alert(unescape(bundle.getString("error.captcha.text")));
    }
    else {
        alert(unescape(bundle.getString("email.error")));
    }
}

function sendEmailAgent(idagent, langue, jsResource) {
    
    jsResourceToUse = jsResource;
    var bundle = new Bundle(jsResourceToUse);
    
    var firstname = document.getElementById("firstname").value;
    var lastname = document.getElementById("lastname").value;
    var emailsender = document.getElementById("emailsender").value;
    var subject = document.getElementById("subject").value;
    var commentaires = document.getElementById("commentaires").value;

    //alert("Firstname : " + firstname);
    //alert("Lastname : " + lastname);
    //alert("emailsender : " + emailsender);
    //alert("subject : " + subject);
    //alert("commentaires : " + commentaires);

    if (firstname == '') {
        alert(unescape(bundle.getString("error.general.firstname")));
    }
    else if (lastname == '') {
        alert(unescape(bundle.getString("error.general.lastname")));
    }
    else if (!isValidEmail(emailsender)) {
        alert(unescape(bundle.getString("error.general.email.sender")));
    }
    else if (subject == '') {
         alert(unescape(bundle.getString("error.general.subject")));
    }
    else if (commentaires == '') {
         alert(unescape(bundle.getString("error.general.comments")));
    }
    else if (!isAlphanumeric(commentaires)) {
        alert(unescape(bundle.getString("error.general.invalid.caracter")));
    }    
    else {
        window.location.href = "http://www.remax-quebec.com/" + langue + "/contactAgent.rmx?idagent=" + idagent + "&prenom=" + firstname +"&nom=" + lastname + "&email=" + emailsender + "&subject=" + subject + "&commentaires=" + commentaires;
    }
    
}

function sendEmailAgentCallBack(obj) {
    var bundle = new Bundle(jsResourceToUse);
    
    if (obj == 1) {
        alert(unescape(bundle.getString("email.sent.success")));
        hideElement('courriel');
    }
    else {
        alert(unescape(bundle.getString("email.error")));
    }
}

function openDemandeRenseignements(lng, codeChambre, idinscr) {
    var path = contextPath + "/" + lng + "/showRenseignements.rmx?codeChambre=" + codeChambre + "&idinscr=" + idinscr;
    var newWin = window.open(path, "titre", "width=605,height=720,resizable");
}
 
function openEnvoisAmis(lng, codeChambre, idinscr) {
    var path = contextPath + "/" + lng + "/showEnvoisAmis.rmx?codeChambre=" + codeChambre + "&idinscr=" + idinscr;
    var newWin = window.open(path, "titre", "width=605,height=650,resizable");
}



function checkMaxlength(obj) {
    var mlength=obj.getAttribute? parseInt(obj.getAttribute("maxlength")) : ""
    
    if (obj.getAttribute && obj.value.length>mlength) {
        obj.value=obj.value.substring(0,mlength)    
    }
}

String.prototype.getNumberOfOccurences = function(char) {

    var count = 0;
    
    for (var i = 0; i < this.length; i++) {
        
        if (this[i] == char) {
            count = count + 1;   
        }
    }
    
    return count;
}

function isAlphanumeric(element) {

    var parsed = true;
    var exclusionlist = "#$%{}&<>[]";   //"//"$%&{}[]";
    
    for (var i=0; i < element.length; i++) {
        var letter = element.charAt(i).toLowerCase();
        
        if (exclusionlist.indexOf(letter) != -1) {
            parsed = false;
            break;
        }
        
    }
  
    return parsed;
}

function isValidEmail(email, required) {
    if (required == undefined) {
        required = true;
    }
    
    if (email == null) {
        if (required) {
            return false;
        }
        return true;
    }
    
    if (email.length == 0) {  
        if (required) {
            return false;
        }
        return true;
    }
    
    if (!allValidChars(email)) {  // check to make sure all characters are valid
        return false;
    }
    
    if (email.indexOf("@") < 1) { //  must contain @, and it must not be the first character
        return false;
    } 
    else if (email.lastIndexOf(".") <= email.indexOf("@")) {  // last dot must be after the @
        return false;
    } 
    else if (email.indexOf("@") == email.length) {  // @ must not be the last character
        return false;
    } 
    else if (email.indexOf("..") >= 0) { // two periods in a row is not valid
	return false;
    } 
    else if (email.indexOf(".") == email.length) {  // . must not be the last character
	return false;
    }
    else if (email.getNumberOfOccurences('@') > 1) {
        return false;        
    }
    
    return true;
}

function allValidChars(email) {
  var parsed = true;
  var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-_";
  for (var i=0; i < email.length; i++) {
    var letter = email.charAt(i).toLowerCase();
    if (validchars.indexOf(letter) != -1)
      continue;
    parsed = false;
    break;
  }
  return parsed;
}

function isPhoneValid(phone) {
    
    if (phone.length < 12) {
        return false;
    }
    
    try {
        
        var firstPart = phone.substring(0, 3);
        var firstSep = phone.substring(3, 4);
        var secondPart = phone.substring(4, 7);
        var secondSep = phone.substring(7, 8);
        var thirdPart = phone.substring(8, 11); 
        
    }
    catch (err) {
        return false;
    }
    
    if (isNaN(firstPart) || isNaN(secondPart) || isNaN(thirdPart)) {
        return false;
    }
    else if (firstSep != '-' || secondSep != '-') {
        return false;
    }
    else {
        return true;
    }
}

function showFicheElement(element) {

    if(playerActive){
        // afficher la photo principale
        playerActive = false;
        var elm = document.getElementById(NAVTHUMB + currentThumbItem);
        elm.style.borderColor = '#FFFFFF';
        currentThumbItem = 0;
        displayMedia(true);
    }
    
    try {
        hideElement('renseignement');
        hideElement('envoisami');
        hideElement('layerCalculette');
    }
    catch (err) {}
    
    showElement(element);    
    
}

VIDEOTAG = [];
VIDEOTAG[0] = '<object id="mediaPlayer" width="739" height="400" \n' +
              'classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" \n' +
              'codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701" \n' +
              'standby="Loading Microsoft Windows Media Player components..." type="application/x-oleobject"> \n' +
              '<param name="fileName" value="';
VIDEOTAG[1] = '">' +
              '<param name="animationatStart" value="true">\n' +
              '<param name="transparentatStart" value="false">\n' +
              '<param name="autoStart" value="true">\n' +
              '<param name="showControls" value="false">\n' +
              '<param name="loop" value="false">\n' +
              '<param name="stretchToFit" value="true">\n' +
              '<embed type="application/x-mplayer2" ' +
              'pluginspage="http://microsoft.com/windows/mediaplayer/en/download/" ' +
              'id="mediaPlayer" ' +
              'name="mediaPlayer" displaysize="0" autosize="0" ' +
              'bgcolor="darkblue" showcontrols="false" showtracker="0" showdisplay="0" showstatusbar="0" videoborder3d="0" ' + 
              'width="739" height="400" src="';
VIDEOTAG[2] = '" autostart="true" designtimesp="5311" loop="false"></embed></object>';


VIDEOTAG2 = [];
VIDEOTAG2[0] = '<object id="MediaPlayer" height="400" width="739" \n' +
            'classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" \n' +
            'codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701" \n' +
            'standby="Loading Microsoft Windows� Media Player components..." \n' +
            'type="application/x-oleobject"> \n' +
            '<param name="URL" value="';
VIDEOTAG2[1] = '">\n' +
            '<param name="showcontrols" value="true">\n' +
            '<param name="stretchtofit" value="false">\n' +
            '<embed height="400" width="739" src="" ' +
                'showcontrols="true"  ' +
                'stretchtofit="true"  ' +
                'pluginspage="http://www.microsoft.com/Windows/MediaPlayer/"  ' +
                'name="MediaPlayer"  ' +
                'autostart=1  ' +
                'type="application/x-mplayer2"> ' +
             '</embed> ' +
             '</object> ';



















