var BrowserDetect = {
    init: function() {
        this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
        this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
        this.OS = this.searchString(this.dataOS) || "an unknown OS";
    },
    searchString: function(data) {
        for (var i = 0; i < data.length; i++) {
            var dataString = data[i].string;
            var dataProp = data[i].prop;
            this.versionSearchString = data[i].versionSearch || data[i].identity;
            if (dataString) {
                if (dataString.indexOf(data[i].subString) != -1)
                    return data[i].identity;
            }
            else if (dataProp)
                return data[i].identity;
        }
    },
    searchVersion: function(dataString) {
        var index = dataString.indexOf(this.versionSearchString);
        if (index == -1) return;
        return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
    },
    dataBrowser: [
		{
		    string: navigator.userAgent,
		    subString: "Chrome",
		    identity: "Chrome"
		},
		{ string: navigator.userAgent,
		    subString: "OmniWeb",
		    versionSearch: "OmniWeb/",
		    identity: "OmniWeb"
		},
		{
		    string: navigator.vendor,
		    subString: "Apple",
		    identity: "Safari",
		    versionSearch: "Version"
		},
		{
		    prop: window.opera,
		    identity: "Opera"
		},
		{
		    string: navigator.vendor,
		    subString: "iCab",
		    identity: "iCab"
		},
		{
		    string: navigator.vendor,
		    subString: "KDE",
		    identity: "Konqueror"
		},
		{
		    string: navigator.userAgent,
		    subString: "Firefox",
		    identity: "Firefox"
		},
		{
		    string: navigator.vendor,
		    subString: "Camino",
		    identity: "Camino"
		},
		{		// for newer Netscapes (6+)
		    string: navigator.userAgent,
		    subString: "Netscape",
		    identity: "Netscape"
		},
		{
		    string: navigator.userAgent,
		    subString: "MSIE",
		    identity: "Explorer",
		    versionSearch: "MSIE"
		},
		{
		    string: navigator.userAgent,
		    subString: "Gecko",
		    identity: "Mozilla",
		    versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
		    string: navigator.userAgent,
		    subString: "Mozilla",
		    identity: "Netscape",
		    versionSearch: "Mozilla"
		}
	],
    dataOS: [
		{
		    string: navigator.platform,
		    subString: "Win",
		    identity: "Windows"
		},
		{
		    string: navigator.platform,
		    subString: "Mac",
		    identity: "Mac"
		},
		{
		    string: navigator.userAgent,
		    subString: "iPhone",
		    identity: "iPhone/iPod"
		},
		{
		    string: navigator.platform,
		    subString: "Linux",
		    identity: "Linux"
		}
	]

};
BrowserDetect.init();

var ns4 = (document.layers) ? true : false; // Navigateur Netscape 4.X
var ie4 = (document.all) ? true : false; // Navigateur IE 4 uniquement
var dom = (document.getElementById) ? true : false; // Navigateur qui supporte DHTML officiel(DOM)
var ns6 = document.getElementById && !document.all;
var firefox = BrowserDetect.browser.indexOf("Firefox") >= 0 ? true : false;
var ie = BrowserDetect.browser.indexOf("Explorer") >= 0 ? true : false;
var animTimer; // = null;

function MM_openBrWindow(theURL, winName, iWidth, iHeight, features) { //SS
    var iPosWidth = Math.round((screen.width - iWidth) / 2);
    var iPosHeight = Math.round((screen.height - iHeight) / 2);

    window.open(theURL, winName, features + ",width=" + iWidth + ",height=" + iHeight + ",screenX=" + iPosWidth + ",screenY=" + iPosHeight + ",left=" + iPosWidth + ",top=" + iPosHeight);    
}

var FIREFOXPROPERTY_HEIGHT = "22";

function FireFoxProperty(obj, property, value) {
    if ((firefox) && (document.getElementById(obj))) {
        layerRef = "document.all";
        styleRef = ".style";
        eval(layerRef + '["' + obj + '"]' + styleRef + '.' + property + ' = "' + value + '"');
    }
}

function textCounter(field, countfield, maxlimit) {

    if (field.value.length >= maxlimit) {

        field.value = field.value.substring(0, maxlimit);

        alert('Vous avez atteint la limite maximale de ' + maxlimit + ' caractères.');

        return false;

    }

}

function AddText(obj, startTag, defaultText, endTag) {
    if (obj.createTextRange) {
        obj.focus(obj.caretPos);
        obj.caretPos = document.selection.createRange().duplicate();
        obj.caretPos.text = startTag + defaultText + endTag;
    }
    else
        obj.value += startTag + defaultText + endTag;
}

function DisplayElement(calque) {
    if (document.getElementById(calque) != null) {
        if (document.getElementById(calque).style.display == 'none')
            afficheCalque(calque);
        else
            cacheCalque(calque)
    }
}


function MaximizeFolderList(Event, divOpen, divClose) {
    var objdivOpen = document.getElementById(divOpen);
    var objdivClose = document.getElementById(divClose);

    if (Event == 'Close') {
        afficheCalque(divClose);
        cacheCalque(divOpen)
    }
    else {
        afficheCalque(divOpen);
        cacheCalque(divClose)
    }
}



function afficheCalque(calque) {
    if (dom) {
        document.getElementById(calque).style.display = 'inline';
    }
    else if (ns4) {
        layerRef = "document.layers";
        styleRef = "";
        eval(layerRef + '["' + calque + '"]' + styleRef + '.display = "inline"');
    }
    else if (ie4) {
        layerRef = "document.all";
        styleRef = ".style";
        eval(layerRef + '["' + calque + '"]' + styleRef + '.display = "inline"');
    }
}

function cacheCalque(calque) {
    if (dom) {
        document.getElementById(calque).style.display = 'none';
    }
    else if (ns4) {
        layerRef = "document.layers";
        styleRef = "";
        eval(layerRef + '["' + calque + '"]' + styleRef + '.display = "none"');
    }
    else if (ie4) {
        layerRef = "document.all";
        styleRef = ".style";
        eval(layerRef + '["' + calque + '"]' + styleRef + '.display = "none"');
    }

}

function ChangeLabel(label) {
    var obj, obj2;
    var ii;

    ii = 1;
    while ((obj = document.getElementById('rpThemaResult__ctl' + ii + '_chbkDoc'))) {
        obj2 = document.getElementById('rpThemaResult__ctl' + ii + '_lblLabel'); // rpThemaResult__ctl5_lblLabel
        if (obj.checked && obj2) {
            obj2.innerHTML = label;
        } else {
            obj2.innerHTML = '';
        }
        ii++;
    }
}

function DoActionOnEnterKeypress(controlname, e) {
    if (firefox) event = e;
    if ((event.which && event.which == 13) || (event.keyCode && event.keyCode == 13)) {
        __doPostBack(controlname, '');
    }

}

function IsEnterKeypress(e) {
    if (firefox) event = e;
    return ((event.which && event.which == 13) || (event.keyCode && event.keyCode == 13))
}


function StopSubmitEnterKeypress(e) {
    if (firefox) event = e;
    if ((event.which && event.which == 13) || event.keyCode && event.keyCode == 13) {
        if (firefox) event.srcElement = event.target;
        if (event.srcElement.tagName != "TEXTAREA") {
            if (firefox) {
                event.stopPropagation();
                event.preventDefault();
            }
            else {
                event.cancelBubble = true;
                event.returnValue = false;
            }
        }
    }
}


function CheckDoc(ControlName) {

    var obj, obj2;
    var nbDoc;
    //obj = document.getElementById( ControlName );
    nbDoc = (document.getElementById('lblPreserveCount')).innerHTML;

    if (ControlName.checked) {
        nbDoc++
        (document.getElementById('lblPreserveCount')).innerHTML = nbDoc;
    } else {
        nbDoc--
        (document.getElementById('lblPreserveCount')).innerHTML = nbDoc;
    }

}

function CheckDocContainer(ControlName, ContainerName) {
    var obj, obj2;
    var nbDoc;

    if (ContainerName == null)
        ContainerName = 'lblPreserveCount';

    nbDoc = (document.getElementById(ContainerName)).innerHTML;

    if (ControlName.checked) {
        nbDoc++
        (document.getElementById(ContainerName)).innerHTML = nbDoc;
    } else {
        nbDoc--
        (document.getElementById(ContainerName)).innerHTML = nbDoc;
    }

}

function CheckAllDoc(ControlName) {


    var obj, obj2;
    var ii = 1;
    var nbDoc;
    var CheckOrUnCheck;
    var bool;

    var ContainerName;

    if (document.getElementById('lblBasketCount') != null)
        ContainerName = 'lblBasketCount';
    else
        ContainerName = 'lblContainerCount';

    CheckOrUnCheck = (document.getElementById('hCheckOrUnCheck'));
    nbDoc = (document.getElementById(ContainerName)).innerHTML;

    if (CheckOrUnCheck.value == 'Check') {
        bool = true;
        CheckOrUnCheck.value = 'unCheck';
    }
    else {
        bool = false;
        CheckOrUnCheck.value = 'Check';
    }

    for (var i = 0; i < document.forms[0].length; i++) {
        var nom_champ = document.forms[0].elements[i].name;
        var obj = document.forms[0].elements[i];

        if (obj.type == 'checkbox' && nom_champ.indexOf('chbkDoc') > 0) {
            if (obj.checked == false && bool == true) {
                obj.checked = true;
                nbDoc++
                (document.getElementById(ContainerName)).innerHTML = nbDoc;
            }
            else if (obj.checked == true && bool == false) {
                obj.checked = false;
                nbDoc--
                (document.getElementById(ContainerName)).innerHTML = nbDoc;
            }
        }
    }
}

function MM_swapImgRestore() { //v3.0
    var i, x, a = document.MM_sr; for (i = 0; a && i < a.length && (x = a[i]) && x.oSrc; i++) x.src = x.oSrc;
}

function MM_swapImage() { //v3.0
    var i, j = 0, x, a = MM_swapImage.arguments; document.MM_sr = new Array; for (i = 0; i < (a.length - 2); i += 3)
        if ((x = MM_findObj(a[i])) != null) { document.MM_sr[j++] = x; if (!x.oSrc) x.oSrc = x.src; x.src = a[i + 2]; }
}

function MM_findObj(n, d) { //v4.01
    var p, i, x; if (!d) d = document; if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
        d = parent.frames[n.substring(p + 1)].document; n = n.substring(0, p);
    }
    if (!(x = d[n]) && d.all) x = d.all[n]; for (i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
    for (i = 0; !x && d.layers && i < d.layers.length; i++) x = MM_findObj(n, d.layers[i].document);
    if (!x && d.getElementById) x = d.getElementById(n); return x;
}

function DeleteCookieLastDocConsummate() {
    DeleteCookie("LastDocConsummateInSearchResult");
    DeleteCookie("LastDocConsummateInFolder");
}

// Effectue un reload du iframe courant. 
function ReloadIFRM() {
    var iFrame1 = document.getElementById("iFrame1");
    var iFrame2 = document.getElementById("iFrame2");
    var iFrame3 = document.getElementById("iFrame3");
    var iFrame4 = document.getElementById("iFrame4");
    var iFrameTopic = document.getElementById("iFrameTopic");

    if (firefox) {
        document.forms[0].submit();
        return;
    }

    if (iFrame1 != null && iFrame1.style.display == "inline") {
        window.frames["iFrame1"].document.forms[0].btReloadPage.click();
    }
    else if (iFrame2 != null && iFrame2.style.display == "inline") {
        window.frames["iFrame2"].document.forms[0].btReloadPage.click();
    }
    else if (iFrame3 != null && iFrame3.style.display == "inline") {
        window.frames["iFrame3"].document.forms[0].btReloadPage.click();
    }
    else if (iFrame4 != null && iFrame4.style.display == "inline") {
        window.frames["iFrame4"].document.forms[0].btReloadPage.click();
    }
    else if (iFrameTopic != null) {
        window.frames["iFrameTopic"].document.forms[0].btReloadPage.click();
    }
}

function DeleteCookie(sCookieName) {
    date = new Date;
    date.setFullYear(date.getFullYear() - 1);
    WriteCookie(sCookieName, null, date);
}

function WriteCookie(nom, valeur) {
    var argv = WriteCookie.arguments;
    var argc = WriteCookie.arguments.length;
    var expires = (argc > 2) ? argv[2] : null;
    var path = (argc > 3) ? argv[3] : null;
    var domain = (argc > 4) ? argv[4] : null;
    var secure = (argc > 5) ? argv[5] : false;
    document.cookie = nom + "=" + escape(valeur) +
	((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
	((path == null) ? "" : ("; path=" + path)) +
	((domain == null) ? "" : ("; domain=" + domain)) +
	((secure == true) ? "; secure" : "");
}


function ReadCookie(Name) {
    var search = Name + "=";
    if (document.cookie.length > 0) {
        // if there are any cookies                    
        offset = document.cookie.indexOf(search);

        if (offset != -1) {
            // if cookie exists                               
            offset += search.length;

            // set index of beginning of value                             
            end = document.cookie.indexOf(";", offset)

            // set index of end of cookie value                              
            if (end == -1)
                end = document.cookie.length;

            return unescape(document.cookie.substring(offset, end));
        }
    }
}

function FullScreen(text, stylesheetLink) {
    Msg = null;
    var iWidth = 550
    var iHeight = 425;
    var iPosWidth = Math.round((screen.width - iWidth) / 2);
    var iPosHeight = Math.round((screen.height - iHeight) / 2);

    text = text.replace('#complement"', '#complement" style=\'display:none\' ');

    Msg = window.open("about:blank", "_blank", "width=550,height=425,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,titlebar=no,toolbar=no,top=" + iPosHeight + ",left=" + iPosWidth);
    Msg.document.writeln("<html><HEAD>");
    Msg.document.writeln("<title>" + document.location.hostname + "</title>");
    Msg.document.writeln("<link href=\"" + stylesheetLink + "\" rel=\"stylesheet\" type=\"text/css\"><style>body{font-family:Verdana,Arial,Helvetica,sans-serif;background-color:#FFFFFF;margin: 3px 0px 0px 0px;}</style>");
    Msg.document.writeln("<script>");
    Msg.document.writeln("function Stubs(Text){var target = window.open('search/stubs.aspx?Text=' + escape(Text),'Stubs','top=50,left=35,width=540,height=470,status=yes,toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes');target.focus();}");
    Msg.document.writeln("function MM_openBrWindow(theURL,winName,iWidth,iHeight,features){var iPosWidth = Math.round((screen.width-iWidth)/2); var iPosHeight = Math.round((screen.height-iHeight)/2); window.open(theURL,winName,features+\",width=\"+iWidth+\",height=\"+iHeight+\",screenX=\"+iPosWidth+\",screenY=\"+iPosHeight+\",left=\"+iPosWidth+\",top=\"+iPosHeight);}");
    Msg.document.writeln("</script>");
    Msg.document.writeln("</HEAD>");
    Msg.document.writeln("<body>");
    Msg.document.writeln("<center>" + text + "</center>");
    Msg.document.writeln("</body></html>");
    Msg.document.close();
    Msg.focus();

}

function CheckRadio(Name) {
    if (document.forms[0][Name] != null)
        document.forms[0][Name].checked = true;
}

function ClearAllSelection(oSelect) {
    for (i = 0; i < oSelect.options.length; i++) {
        oSelect.options[i].selected = false;
    }
}

function VirtualRootApplicationPath() {
    var pathname = document.location.pathname.toLowerCase();
    var IndexFound = pathname.indexOf('groovewebapplication');
    var RootApplicationPath = '';

    if (IndexFound == -1)
        return '';
    else {
        RootApplicationPath = pathname.substr(IndexFound, pathname.length);
        RootApplicationPath = RootApplicationPath.substr(IndexFound - 1, RootApplicationPath.indexOf('/'))
        return '/' + RootApplicationPath;
    }
}

function AltInfo(obj_id, visibility, e) {
    var obj = document.getElementById(obj_id);
    if (obj != null) {
        var x;
        var y;
        var xLimit = document.body.clientWidth;
        var objWidth = obj.offsetWidth + 2;

        if (firefox) {
            x = e.clientX + 2;
            y = e.clientY + 2;
        }
        else {
            x = e.x + 2;
            y = e.y + 2;
        }

        if (xLimit < objWidth + x)
            x = 0 < (xLimit - objWidth) ? xLimit - objWidth : 0;

        obj.style.left = x;
        obj.style.top = y;
        obj.style.visibility = visibility;

        HiddenIframe('iframeHide', x, y, obj.offsetWidth, obj.offsetHeight, visibility);
    }
}

function SetAltInfo(obj_id, altInfoText) {
    var oAltInfo = document.getElementById(obj_id);
    if (oAltInfo != null)
        oAltInfo.innerHTML = altInfoText;
}

function HiddenIframe(oIframe, x, y, w, h, visibility) {

    var oIframeHide = document.getElementById(oIframe);

    if (oIframeHide != null) {
        oIframeHide.style.left = x;
        oIframeHide.style.top = y;
        oIframeHide.style.width = w;
        oIframeHide.style.height = h;
        oIframeHide.style.visibility = visibility;
    }
}

function ResizeScreen(obj, imgSrc1, imgSrc2, cookieName) {
    var objTdDoc = document.getElementById('tdResult');

    if (objTdDoc != null) {
        if ((objTdDoc.style.display == "") || (objTdDoc.style.display == "inline")) {
            WriteCookie(cookieName, "FullScreen");
            FullScreenBascule();

            if (obj != null)
                obj.src = imgSrc2;
        } else {
            DeleteCookie(cookieName);
            NormalScreen();

            if (obj != null)
                obj.src = imgSrc1;
        }
    }
}

function BackToNormalByCookie(cookieName) {
    if ((ReadCookie(cookieName) != null) && (ReadCookie(cookieName) != "")) {
        FullScreenBascule();
        ShowBackLink();
    } else {
        NormalScreen();
        HideBackLink();
    }
}

// [EL] J'ai ajoute cette fonction pour la re-ecriture de la page Document.aspx
// Elle est semblable a la fonction FullScreenBascule() mais on a pas besoin
// d'appeler ShowBackLink(). 
function ViewDocFullScreen() {
    var objTdDoc = document.getElementById('tdViewDoc');

    if (objTdDoc != null)
        objTdDoc.width = "100%";

    var objTdResult = document.getElementById('tdResult');

    if (objTdResult != null)
        objTdResult.style.display = "none";
}

// [EL] Permet d'afficher le document en plein-ecran
function FullScreenBascule() {
    var objTdDoc = document.getElementById('tdViewDoc');

    if (objTdDoc != null)
        objTdDoc.width = "100%";

    var objTdResult = document.getElementById('tdResult');

    if (objTdResult != null)
        objTdResult.style.display = "none";

    ShowBackLink();
}

// [EL] Permet d'afficher le DataPager
function ShowBackLink() {
    var iFrameViewDoc = document.getElementById('iFrameViewDoc')

    if (iFrameViewDoc != null) {

        var objBackToNormal = null;

        if (firefox)
            objBackToNormal = iFrameViewDoc.contentDocument.getElementById('divBackToNormal');
        else
            objBackToNormal = window.frames["iFrameViewDoc"].document.getElementById('divBackToNormal');

        if (objBackToNormal != null) {
            objBackToNormal.style.display = "inline";
            objBackToNormal.focus();
        }
    }
}

function HideBackLink() {
    if (document.frames["iFrameViewDoc"] != null) {
        var objBackToNormal = document.frames["iFrameViewDoc"].document.getElementById('divBackToNormal');

        if (objBackToNormal != null)
            objBackToNormal.style.display = "none";
    }
}

function NormalScreen() {
    var objTdDoc = document.getElementById('tdViewDoc');

    if (objTdDoc != null)
        objTdDoc.width = "50%";

    var objTdResult = document.getElementById('tdResult');

    if (objTdResult != null) {
        objTdResult.style.display = "inline";
        objTdResult.width = "50%";
    }
    HideBackLink();
}

function SwitchImage(obj, imgSrc1, imgSrc2) {
    if (obj != null) {
        var objSrc = obj.src;
        var IndexFound = objSrc.indexOf(imgSrc1);

        if (IndexFound > -1)
            obj.src = imgSrc2;
        else
            obj.src = imgSrc1;
    }
}


function SetFocus(ElementId) {
    if (document.getElementById(ElementId) != null)
        document.getElementById(ElementId).focus();
}

//Cette méthode sert à savoir si nous sommes "framé" dans la fenêtre d'un partenaire.
function IsExternalMasterFrame() {
    if (top.location != self.location)
        return true;
    else
        return false
}

function IsPopupKillerActivated() {
    var xWin = window.open('about:blank', '_blank', 'directories=no,height=1,width=1,menubar=no,resizable=no,scrollbars=no,status=no,titlebar=no,top=0,location=no');

    if (xWin == null || typeof (xWin) == 'undefined' || typeof (xWin.location.hash) != 'string')
        return true;
    else {
        if (xWin) {
            WriteCookie('IsPopupKillerActivated', 'false')
            xWin.close();
        }

        return false;
    }
}

function SetFocusOnSearchTextClientID(target) {
    var Clientid = GetInputTypeSearchClientID(target);
    var obj = target != null && target != '' ? target.document.getElementById(Clientid) : document.getElementById(Clientid);

    if (obj)
        obj.focus();
}

function GetInputTypeSearchClientID(target) {
    var obj;
    obj = target != null && target != '' ? target.document.getElementById("SearchTextClientID") : document.getElementById("SearchTextClientID");

    if (obj != null)
        return obj.value;
}

function CreateControl(divID, width, height, domain, file, autostart) {
    var d = document.getElementById(divID);

    //d.innerHTML = '<embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/windows/mediaplayer/" src="' + url + '" width="' + width + '" height="' + height + '" autostart="' +  autostart + '"></embed>';

    var url = domain + escape(file);

    var ctrl = '<object data="' + url + '" type="video/x-ms-wmv" width="' + width + '" height="' + height + '">' +
                '<param name="ShowStatusBar" value="1">' +
                '<param name="src" value="' + url + '">' +
                '<param name="autostart" value="' + autostart + '">' +
                '<param name="volume" value="0">' +
                '</object>';

    d.innerHTML = ctrl;
}

function getWindowHeight() {
    var windowHeight = 0;

    if (typeof (window.innerHeight) == 'number') {
        windowHeight = window.innerHeight;
    }
    else if (document.documentElement && document.documentElement.clientHeight) {
        windowHeight = document.documentElement.clientHeight;
    }
    else if (document.body && document.body.clientHeight) {
        windowHeight = document.body.clientHeight;
    }

    return windowHeight;
}

function getOutsideHeight(elem) {
    var borderTopWidth = elem.style.borderTopWidth.length > 0 ? parseInt(elem.style.borderTopWidth) : 0;
    var borderBottomWidth = elem.style.borderBottomWidth.length > 0 ? parseInt(elem.style.borderBottomWidth) : 0;
    var paddingTop = elem.style.paddingTop.length > 0 ? parseInt(elem.style.paddingTop) : 0;
    var paddingBottom = elem.style.paddingBottom.length > 0 ? parseInt(elem.style.paddingBottom) : 0;

    return borderTopWidth + borderBottomWidth + paddingTop + paddingBottom;
}

function getBorderHeight(elem) {
    var borderTopWidth = elem.style.borderTopWidth.length > 0 ? parseInt(elem.style.borderTopWidth) : 0;
    var borderBottomWidth = elem.style.borderBottomWidth.length > 0 ? parseInt(elem.style.borderBottomWidth) : 0;

    return borderTopWidth + borderBottomWidth;
}

function resizeDoc() {
    var divTopnav = document.getElementById('divTopnav');
    var divPlayer = document.getElementById('divPlayer');

    var iFrameViewDoc = document.getElementById('iFrameViewDoc');
    var documentViewDoc = iFrameViewDoc.contentWindow ? iFrameViewDoc.contentWindow.document : iFrameViewDoc.contentDocument;
    var divDoc = documentViewDoc.getElementById('divDoc');

    if (divDoc == null)
        return;

    var topnavHeight = divTopnav != null ? divTopnav.offsetHeight : 0;
    var playerHeight = divPlayer != null ? divPlayer.offsetHeight : 0;

    var height = getWindowHeight() - topnavHeight - playerHeight - 36;
    var height = divDoc.scrollHeight > height ? height : divDoc.scrollHeight;

    height = height > 0 ? height : 0;

    iFrameViewDoc.style.height = height + 'px';
}

function ShowWaitingAnim2() {
    var oDiv = document.getElementById('divShowWaiting');

    if (oDiv) {        
        oDiv.style.visibility = 'visible';
    }
}

function ShowWaitingAnim() {
    // Si dans 1.5 sec. rien ne c'est produit, le div s'affiche annoncant de patienter
    ShowWaitingAnimTimeout(100); // 1000 = 1 seconde
}

function ShowWaitingAnimTimeout(timeout) {
    if (!timeout)
        animTimer = setTimeout('ShowWaitingAnim2()', 100);
    else
        animTimer = setTimeout('ShowWaitingAnim2()', timeout);
}

function HideWaitingAnim() {
    clearTimeout(animTimer);

    animTimer = null;
    var oDiv = document.getElementById('divShowWaiting');

    if (oDiv)
        oDiv.style.visibility = 'hidden';
}

function getSort() {
    var ddlSort;

    ddlSort = document.getElementById('ddlSort');

    if (ddlSort == null)
        ddlSort = document.getElementById('UcListDoc_ddlSort');

    if (ddlSort != null)
        return ddlSort[ddlSort.selectedIndex].value;
    else
        return "";
}

function ResetPosScroll() {
    if (document.getElementById("scrollPos") != null)
        document.getElementById("scrollPos").value = 0;
}

// Sauvegarde la position de la scrollbar
function SavePosScroll() {
    document.getElementById("scrollPos").value = document.getElementById("divEntreprise").scrollTop;
}

// Replace la scrollbar a son etat initial
function SetPosScroll() {
    document.getElementById("divEntreprise").scrollTop = document.getElementById("scrollPos").value;
}

function copyToClipboard(text) {

    if (window.clipboardData) {
        window.clipboardData.setData('text', text);
    }
    else {
        var clipboarddiv = document.getElementById('divclipboardtxt');
        cacheCalque('unitcounter_popwarninginfo');

        if (clipboarddiv.style.display == "inline") {
            clipboarddiv.style.display = "none";
            return false;
        }

        var txtclipboard = document.getElementById('txtClipboard');
        txtclipboard.value = text;

        clipboarddiv.style.display = "inline";

        txtclipboard.focus();
        txtclipboard.select();
    }


    return false;
}

function addLoadEvent(func) {
    var oldonload = window.onload;
    if (typeof window.onload != 'function') {
        window.onload = func;
    } else {
        window.onload = function() {
            if (oldonload) {
                oldonload();
            }
            func();
        }
    }
};

var divDisable = null;

function Disable(id) {
    var d = document.getElementsByTagName("BODY")[0];
    var div = document.getElementById(id);

    oWidth = div ? div.offsetWidth : 0;
    oHeight = div ? div.offsetHeight : 0;

    divDisable = document.createElement("DIV");
    divDisable.style.width = oWidth + "px";
    divDisable.style.height = oHeight + "px";
    divDisable.style.position = "absolute";
    divDisable.style.left = findPosX(div) + "px";
    divDisable.style.top = findPosY(div) + "px";
    divDisable.style.backgroundColor = "white";
    divDisable.style.opacity = .3;
    divDisable.style.filter = "alpha(opacity=40)";

    if (ie) {
            d.onload = function() {            
            d.appendChild(divDisable);
        }
    }
    else
        d.appendChild(divDisable);

};

function Enable() {
    if (divDisable != null)
        document.getElementsByTagName("BODY")[0].removeChild(divDisable);

    divDisable = null;
};

function findPosX(obj) {
    var curleft = 0;
    if (obj.offsetParent) {
        while (obj.offsetParent) {
            curleft += obj.offsetLeft;
            obj = obj.offsetParent;
        }
    }
    else if (obj.x)
        curleft += obj.x;
    return curleft;
};

function findPosY(obj) {
    var curtop = 0;
    if (obj.offsetParent) {
        while (obj.offsetParent) {
            curtop += obj.offsetTop;
            obj = obj.offsetParent;
        }
    }
    else if (obj.y)
        curtop += obj.y;
    return curtop;
};

function AJAXRequestPOST(url, callback)
{
	var reqLog = null;
    // Code for Mozilla Firefox 
    if (window.XMLHttpRequest)
        reqLog = new XMLHttpRequest();
    // Code for IE
    else if (window.ActiveXObject)
        reqLog = new ActiveXObject("Microsoft.XMLHTTP");
    else
        reqLog = null;

    var arr = url.split('?');

	reqLog.open('POST', arr[0], true);
	reqLog.onreadystatechange = callback;
	reqLog.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		
	if(arr.length == 2)
	    reqLog.send(arr[1]);
	else
	    reqLog.send(null);
};

function AJAXRequestGET(url, callback)
{
	var reqLog = null;
    // Code for Mozilla Firefox 
    if (window.XMLHttpRequest)
        reqLog = new XMLHttpRequest();
    // Code for IE
    else if (window.ActiveXObject)
        reqLog = new ActiveXObject("Microsoft.XMLHTTP");
    else
        reqLog = null;

    reqLog.open('GET', url, true);
    reqLog.onreadystatechange = callback;
    reqLog.send(null);
};

function UsageLog(url)
{
	AJAXRequestGET(url, null);
};