﻿/*
* Fonction de clonage
* @author Keith Devens
* @see http://keithdevens.com/weblog/archive/2007/Jun/07/javascript.clone
*/
function clone(srcInstance) {
    /*Si l'instance source n'est pas un objet ou qu'elle ne vaut rien c'est une feuille donc on la retourne*/
    if (typeof (srcInstance) != 'object' || srcInstance == null) {
        return srcInstance;
    }
    /*On appel le constructeur de l'instance source pour crée une nouvelle instance de la même classe*/
    var newInstance = srcInstance.constructor();
    /*On parcourt les propriétés de l'objet et on les recopies dans la nouvelle instance*/
    for (var i in srcInstance) {
        newInstance[i] = clone(srcInstance[i]);
    }
    /*On retourne la nouvelle instance*/
    return newInstance;
}

/*********************************** DIALOG BOX ************************/
function showAlertMessage(title, message, width, height)
{
    var divId = "myTBInline"; // You can change this id...

    var div = jQuery("#" + divId); // try to retrieve the div if it exists

    if (div.length > 0) // if div already exists (previous call)
        div.empty();    // then remove its content
    else
        div = jQuery('<div id="' + divId + '" style="display:none"/>').appendTo("body"); // else create it

    // add the message to the div
    div.append(message);

    // display Thickbox using the div as inline element
    tb_show(title, "#TB_inline?height="+height+"&amp;width="+width+"&amp;inlineId=" + divId, false);
}

/***********************************************************************/



/****************************************************** GRAPH ********************************/
 function showTooltipGraph(name, x, y, contents) 
 {
        jQuery('<div id="' + name + '">' + contents + '</div>').css( {
            position: 'absolute',
            display: 'none',
            top: y - 10,
            left: x + 5,
            border: '1px solid #fdd',
            padding: '2px',
            'background-color': '#fee',
            opacity: 0.80
        }).appendTo("body").fadeIn(200);
    }

function formatDateGraphTooltip(myDate, mode) {
    if (mode == 0)  ////History
    {
        var jour = myDate.getDate();
        if (myDate.getDate() < 10) {
            jour = "0" + myDate.getDate();
        }

        var mois = myDate.getMonth()+1;
        if (myDate.getMonth()+1 < 10) {
            mois = "0" + (parseInt(myDate.getMonth())+1);
        }        
        
        return jour + "/" + mois + "/" + myDate.getFullYear();
    }

    if (mode == 1) {

        var hours = myDate.getHours();
        if (myDate.getHours() < 10) {
            jour = "0" + myDate.getHours();
        }

        var minutes = myDate.getMinutes();
        if (myDate.getMinutes() < 10) {
            minutes = "0" + myDate.getMinutes();
        }

        var seconds = myDate.getSeconds();
        if (myDate.getSeconds() < 10) {
            seconds = "0" + myDate.getSeconds();
        }
        return hours + ":" + minutes;  //+ ":" + seconds;
    }
}
/****************************************************** END GRAPH PART ********************************/
