/*
(c) KLOIS SARL
*/


var kjax = new Object();
var disableAllSubmit = false;


function gE(id)
{
	return document.getElementById(id);
}




function antiPagePrecedente()
{
	/*
	if (!document.getElementById('antiPagePrecedente'))
	{
		kjax.antiPagePrecedente = 1;
		var i = document.createElement('iframe');
		i.style.display = 'none';
		i.id = 'antiPagePrecedente';
		document.getElementsByTagName('body')[0].appendChild(i);
	}

	document.getElementById('antiPagePrecedente').src = '/blank.php?' + (kjax.antiPagePrecedente++);
	*/
}


/*
@url = Page demandée
@args= Paramètres de l'url
@meth= POST | GET
@mode= xml | html
@differe = true | false
@fct = fonction de retour
@params = paramètres envoyées à la fonction de retour
*/
function isa_lr(url, args, meth, mode, differe, fct, params)
{
	/*
	L'anti page précédente
	*/
	antiPagePrecedente();
	antiPagePrecedente();
	
	var xmlhttp = false;
	var html = '';

	/*@cc_on @*/
	/*@if (@_jscript_version >= 5)
	try
	{
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch (e)
	{
		try
		{
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch (E) 
		{
			xmlhttp = false;
		}
	}
	@end @*/
	if (!xmlhttp && typeof XMLHttpRequest!='undefined')
	{
		xmlhttp = new XMLHttpRequest();
	}
	
	if (!differe)
	{
		xmlhttp.open(meth, url, false);

		if (meth == 'POST')
		{
			xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

		}
		xmlhttp.send(args);

		if (mode == 'xml')
			return xmlhttp.responseXML.childNodes[0];
		else
		{
			return xmlhttp.responseText;
		}
			
	}
	else
	{
		xmlhttp.open(meth, url, true);
		xmlhttp.onreadystatechange = function()
		{
			if(xmlhttp.readyState == 4)
			{
				if (mode == 'xml')
					fct(xmlhttp.responseXML.childNodes[0], params);
				else
					fct(xmlhttp.responseText, params);
			}
		};
		
		if (meth == 'POST')
		{
			xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		}
			xmlhttp.send(args);
	}
	return false;
}




function kjaxEvalJs(html)
{
		var a;
		var js = '';
	
		var e = /<script[^>]+src\="(.+)"[^>]*><\/script>/gi;
		var r;
		var h;
		h = html;
		while (r = e.exec(h))
		{
			var elt = document.createElement('script');
			elt.type = 'text/javascript';
			elt.src = r[1];
			document.getElementsByTagName('body')[0].appendChild(elt);
	
			// On enlève de h
			var h = h.substr(0, r.index) + h.substr(r.index + r[0].length);
			if (r = e.exec(h)){} // A laisser... sinon Firefox fait le moisi :|
			var e = /<script[^>]+src\="(.+)"[^>]*><\/script>/gi;
		}
	
		
		while ((a = h.indexOf('<script ')) != -1)
		{
			var b = h.substr(a, h.length - a);
			var fin = h.indexOf('</script>' /**/);
			if (fin > -1)
			{
				var js2 = b.substr(0, fin - a);
				var c = js2.indexOf('>');
				js += js2.substr(c + 1);
				h = h.substr(0, a) + h.substr(fin + /**/ 9);
			}
		}
	
	try
	{
		if (js)
			eval(js);
	}
	catch(e){alert(e);};
}


var loadPageCache = new Object();
function loadPage(url, xdiv, cacheVar)
{
	isa_lr(url, null, 'GET', 'html', true, loadPageRes, {'xdiv' : xdiv, 'loading' : false, 'cacheVar' : cacheVar});
}




function loadPageRes(html, p)
{
		var a;
		var js = '';
	
		var e = /<script[^>]+src\="(.+)"[^>]*><\/script>/gi;
		var r;
		var h;
		h = html;
		while (r = e.exec(h))
		{
			var elt = document.createElement('script');
			elt.type = 'text/javascript';
			elt.src = r[1];
			document.getElementsByTagName('body')[0].appendChild(elt);
	
			// On enlève de h
			var h = h.substr(0, r.index) + h.substr(r.index + r[0].length);
			if (r = e.exec(h)){} // A laisser... sinon Firefox fait le moisi :|
			var e = /<script[^>]+src\="(.+)"[^>]*><\/script>/gi;
		}
	
		
		while ((a = h.indexOf('<script ')) != -1)
		{
			var b = h.substr(a, h.length - a);
			var fin = h.indexOf('</script>' /**/);
			if (fin > -1)
			{
				var js2 = b.substr(0, fin - a);
				var c = js2.indexOf('>');
				js += js2.substr(c + 1);
				h = h.substr(0, a) + h.substr(fin + /**/ 9);
			}
		}
	
	if (document.getElementById(p.xdiv))
	{
		document.getElementById(p.xdiv).innerHTML = h;
	}
	
	if (p.cacheVar)
	{
		eval(p.cacheVar + " = h;");
	}
	
	try
	{
		if (js)
			eval(js);
	}
	catch(e){alert(e);};
}


/*
	Envoie d'un formulaire
*/
    function getFormValues(fobj)

    {

       var str = "";

       var valueArr = null;

       var val = "";

       var cmd = "";
       for(var i = 0;i < fobj.elements.length;i++)
       {
	       if (!fobj.elements[i].disabled)
           switch(fobj.elements[i].type)
           {

               case "text":
               case "hidden":
               case "textarea":
               case "password":

                    str += fobj.elements[i].name +
                     "=" + escape(fobj.elements[i].value).replace(/%u20AC/g, '%80').replace(/\+/g, '%2B') + "&";
                     break;

               case "select-one":
               			try
               			{
                    str += fobj.elements[i].name +
                    "=" + escape(fobj.elements[i].options[fobj.elements[i].selectedIndex].value).replace(/%u20AC/g, '%80').replace(/\+/g, '%2B') + "&";
               			}
               			catch(e){};

                    break;
               case "select-multiple":
               			var elt = fobj.elements[i];
               			for (var a in elt.childNodes)
               			{
               				if (elt.childNodes[a].nodeType == 1) if (elt.childNodes[a].selected)
               				{
                    		str += fobj.elements[i].name +
                    		"=" + escape(elt.childNodes[a].value).replace(/%u20AC/g, '%80').replace(/\+/g, '%2B') + "&";
               				}
               			}
                    break;
               case "checkbox":
               case "radio":
               			if (fobj.elements[i].checked)
               			{
	                    str += fobj.elements[i].name +
	                    "=" + escape(fobj.elements[i].value).replace(/%u20AC/g, '%80').replace(/\+/g, '%2B') + "&";
               			}
               			else
               			{
	                    /*str += fobj.elements[i].name + "=&";*/
               			}
               			break;

           }

       }

       str = str.substr(0,(str.length - 1));
       return str;
    }




    
function sendForm(f, xdiv)
{
	var args = getFormValues(document.forms[f]);
	var meth = document.forms[f].method;

	if (!meth)
		meth = 'get';
	meth = meth.toUpperCase();

	isa_lr(document.forms[f].action + (meth == 'GET' ? '?' + args : ''), (meth == 'GET' ? null : args), meth, 'html', true, loadPageRes, {'xdiv' : xdiv});
}


    
function sendFormIframe(f)
{
try
{
	var frameName = 'iFrameForSendFormIframe';
	var pre = document.forms[f].target;
	document.forms[f].target = frameName;
	if (!document.getElementById(frameName))
	{
		var iframe = document.createElement('iframe');
		iframe.name = frameName;
		iframe.id = frameName;
		if (typeof isDev == 'undefined' ||
				!isDev)
			iframe.style.display = 'none';
		document.getElementsByTagName('body')[0].appendChild(iframe);
	}
	document.forms[f].submit();
	document.forms[f].target = pre;
	return false;
	}
	catch(e){return false;}
}










/* Made by Mathias Bynens <http://mathiasbynens.be/> */
function number_format(a, b, c, d) {
 a = Math.round(a * Math.pow(10, b)) / Math.pow(10, b);
 e = a + '';
 f = e.split('.');
 if (!f[0]) {
  f[0] = '0';
 }
 if (!f[1]) {
  f[1] = '';
 }
 if (f[1].length < b) {
  g = f[1];
  for (i=f[1].length + 1; i <= b; i++) {
   g += '0';
  }
  f[1] = g;
 }
 if(d != '' && f[0].length > 3) {
  h = f[0];
  f[0] = '';
  for(j = 3; j < h.length; j+=3) {
   i = h.slice(h.length - j, h.length - j + 3);
   f[0] = d + i +  f[0] + '';
  }
  j = h.substr(0, (h.length % 3 == 0) ? 3 : (h.length % 3));
  f[0] = j + f[0];
 }
 c = (b <= 0) ? '' : c;
 return f[0] + c + f[1];
}







function toNumber(v)
{
	if (v == "")
		return 0;
	v = v.replace(/ /gi, '');
	v = v.replace(/,/gi, '.');
	return parseFloat(v) + 0;
}

function isNumber(v)
{
	return !isNaN(toNumber(v));
}






function addslashes( str ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Ates Goral (http://magnetiq.com)
    // *     example 1: addslashes("kevin's birthday");
    // *     returns 1: "kevin\\'s birthday"
    // *     example 2: addslashes("\"'\\\0");
    // *     returns 2: "\\\"\\\'\\\\\\0"
 
    return str.replace(/(["'\\])/g, "\\$1").replace(/\0/g, "\\0");
}

function htmlentities(s){
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: htmlentities('Kevin & van Zonneveld');
    // *     returns 1: 'Kevin &amp; van Zonneveld'
 
    var div = document.createElement('div');
    var text = document.createTextNode(s);
    div.appendChild(text);
    return div.innerHTML;
}



function date ( format, timestamp ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Carlos R. L. Rodrigues
    // +      parts by: Peter-Paul Koch (http://www.quirksmode.org/js/beat.html)
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: date('H:m:s \\m \\i\\s \\m\\o\\n\\t\\h', 1062402400);
    // *     returns 1: '09:09:40 m is month'
    // *     example 2: date('F j, Y, g:i a', 1062462400);
    // *     returns 2: 'October 2, 2003, 2:26 am'
 
    var a, jsdate = new Date(timestamp ? timestamp * 1000 : null);
    var pad = function(n, c){
        if( (n = n + "").length < c ) {
            return new Array(++c - n.length).join("0") + n;
        } else {
            return n;
        }
    };
    var txt_weekdays = ["Sunday","Monday","Tuesday","Wednesday",
        "Thursday","Friday","Saturday"];
    var txt_ordin = {1:"st",2:"nd",3:"rd",21:"st",22:"nd",23:"rd",31:"st"};
    var txt_months =  ["January", "February", "March", "April",
        "May", "June", "July", "August", "September", "October", "November",
        "December"];
 
    var f = {
        // Day
            d: function(){
                return pad(f.j(), 2);
            },
            D: function(){
                t = f.l(); return t.substr(0,3);
            },
            j: function(){
                return jsdate.getDate();
            },
            l: function(){
                return txt_weekdays[f.w()];
            },
            N: function(){
                return f.w() + 1;
            },
            S: function(){
                return txt_ordin[f.j()] ? txt_ordin[f.j()] : 'th';
            },
            w: function(){
                return jsdate.getDay();
            },
            z: function(){
                return (jsdate - new Date(jsdate.getFullYear() + "/1/1")) / 864e5 >> 0;
            },
 
        // Week
            W: function(){
                var a = f.z(), b = 364 + f.L() - a;
                var nd2, nd = (new Date(jsdate.getFullYear() + "/1/1").getDay() || 7) - 1;
 
                if(b <= 2 && ((jsdate.getDay() || 7) - 1) <= 2 - b){
                    return 1;
                } else{
 
                    if(a <= 2 && nd >= 4 && a >= (6 - nd)){
                        nd2 = new Date(jsdate.getFullYear() - 1 + "/12/31");
                        return date("W", Math.round(nd2.getTime()/1000));
                    } else{
                        return (1 + (nd <= 3 ? ((a + nd) / 7) : (a - (7 - nd)) / 7) >> 0);
                    }
                }
            },
 
        // Month
            F: function(){
                return txt_months[f.n()];
            },
            m: function(){
                return pad(f.n(), 2);
            },
            M: function(){
                t = f.n(); return t.substr(0,3);
            },
            n: function(){
                return jsdate.getMonth() + 1;
            },
            t: function(){
                var n;
                if( (n = jsdate.getMonth() + 1) == 2 ){
                    return 28 + f.L();
                } else{
                    if( n & 1 && n < 8 || !(n & 1) && n > 7 ){
                        return 31;
                    } else{
                        return 30;
                    }
                }
            },
 
        // Year
            L: function(){
                var y = f.Y();
                return (!(y & 3) && (y % 1e2 || !(y % 4e2))) ? 1 : 0;
            },
            //o not supported yet
            Y: function(){
                return jsdate.getFullYear();
            },
            y: function(){
                return (jsdate.getFullYear() + "").slice(2);
            },
 
        // Time
            a: function(){
                return jsdate.getHours() > 11 ? "pm" : "am";
            },
            A: function(){
                return f.a().toUpperCase();
            },
            B: function(){
                // peter paul koch:
                var off = (jsdate.getTimezoneOffset() + 60)*60;
                var theSeconds = (jsdate.getHours() * 3600) +
                                 (jsdate.getMinutes() * 60) +
                                  jsdate.getSeconds() + off;
                var beat = Math.floor(theSeconds/86.4);
                if (beat > 1000) beat -= 1000;
                if (beat < 0) beat += 1000;
                if ((String(beat)).length == 1) beat = "00"+beat;
                if ((String(beat)).length == 2) beat = "0"+beat;
                return beat;
            },
            g: function(){
                return jsdate.getHours() % 12 || 12;
            },
            G: function(){
                return jsdate.getHours();
            },
            h: function(){
                return pad(f.g(), 2);
            },
            H: function(){
                return pad(jsdate.getHours(), 2);
            },
            i: function(){
                return pad(jsdate.getMinutes(), 2);
            },
            s: function(){
                return pad(jsdate.getSeconds(), 2);
            },
            //u not supported yet
 
        // Timezone
            //e not supported yet
            //I not supported yet
            O: function(){
                return (jsdate.getTimezoneOffset()/60);
            },
            P: function(){
                var O = jsdate.O();
                return (O.substr(0, 3) + ":" + O.substr(3, 2));
            },
            //T not supported yet
            //Z not supported yet
 
        // Full Date/Time
            c: function(){
                return f.Y() + "-" + f.m() + "-" + f.d() + "T" + f.h() + ":" + f.i() + ":" + f.s() + f.P();
            },
            //r not supported yet
            U: function(){
                Math.round(jsdate.getTime()/1000);
            }
    };
 
    return format.replace(/[\\]?([a-zA-Z])/g, function(t, s){
        if( t!=s ){
            // escaped
            ret = s;
        } else if( f[s] ){
            // a date function exists
            ret = f[s]();
        } else{
            // nothing special
            ret = s;
        }
 
        return ret;
    });
}


function findPos(obj)
{
	var curleft = curtop = 0;
	var obj2 = obj;
	if (obj.offsetParent)
	{
		curleft = obj.offsetLeft;
		curtop = obj.offsetTop;
		
		while (obj2 = obj2.parentNode)
		{
			if (obj2.scrollLeft)
			curleft -= obj2.scrollLeft;
			if (obj2.scrollTop)
			curtop -= obj2.scrollTop;
		}
		
		while (obj = obj.offsetParent)
		{
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		}
	}
	
	var iebody=(document.compatMode && document.compatMode != "BackCompat") ? document.documentElement : document.body;
	var scrollLeft = document.all ? iebody.scrollLeft : window.pageXOffset;
	var scrollTop = document.all ? iebody.scrollTop : window.pageYOffset;

	curleft += scrollLeft;
	curtop += scrollTop;
	
	return [curleft,curtop];
}


function findHeight(obj)
{
	var pos0 = findPos(obj);
	var pos1 = findPos(obj.nextSibling);
	return (pos1[1] - pos0[1]);
}











// Project: Dynamic Date Selector (DtTvB) - 2006-03-16
// Code begin...
// Set the initial date.
var ds_i_date = new Date();
var ds_hideDays;
ds_c_month = ds_i_date.getMonth() + 1;
ds_c_year = ds_i_date.getFullYear();

// Get Element By Id
function ds_getel(id) {
	return document.getElementById(id);
}

// Get the left and the top of the element.
function ds_getleft(el) {
	var tmp = el.offsetLeft;
	el = el.offsetParent
	while(el) {
		tmp += el.offsetLeft;
		el = el.offsetParent;
	}
	return tmp;
}
function ds_gettop(el) {
	var tmp = el.offsetTop;
	el = el.offsetParent
	while(el) {
		tmp += el.offsetTop;
		el = el.offsetParent;
	}
	return tmp;
}

// Output Element
var ds_oe = ds_getel('ds_calclass');

// Container
var ds_ce = ds_getel('ds_conclass');

// Output Buffering
var ds_ob = ''; 
function ds_ob_clean() {
	ds_ob = '';
}
function ds_ob_flush() {
	ds_oe = ds_getel('ds_calclass');
	ds_oe.innerHTML = ds_ob;
	ds_ob_clean();
}
function ds_echo(t) {
	ds_ob += t;
}

var ds_element; // Text Element...

var ds_monthnames = [
'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin',
'Juillet', 'Aout', 'Septembre', 'Octobre', 'Novembre', 'Décembre'
]; // You can translate it for your language.

var ds_daynames = [
'Dim', 'Lun', 'Mar', 'Me', 'Jeu', 'Ven', 'Sam'
]; // You can translate it for your language.

var ds_fct = null;
// Calendar template
function ds_template_main_above(t) {
	return '<table cellpadding="3" cellspacing="1" class="ds_tbl">'
	     + '<tr>'
		 + '<td class="ds_head" style="cursor: pointer" onclick="ds_py();">&lt;&lt;</td>'
		 + '<td class="ds_head" style="cursor: pointer" onclick="ds_pm();">&lt;</td>'
		 + '<td class="ds_head" style="cursor: pointer" onclick="ds_hi();" colspan="3">[Fermer]</td>'
		 + '<td class="ds_head" style="cursor: pointer" onclick="ds_nm();">&gt;</td>'
		 + '<td class="ds_head" style="cursor: pointer" onclick="ds_ny();">&gt;&gt;</td>'
		 + '</tr>'
	     + '<tr>'
		 + '<td colspan="7" class="ds_head">' + t + '</td>'
		 + '</tr>'
		 + '<tr>';
}

function ds_template_day_row(t) {
	return '<td class="ds_subhead">' + t + '</td>';
	// Define width in CSS, XHTML 1.0 Strict doesn't have width property for it.
}

function ds_template_new_week() {
	return '</tr><tr>';
}

function ds_template_blank_cell(colspan) {
	return '<td colspan="' + colspan + '"></td>'
}

function ds_template_day(d, m, y) {
	return '<td class="ds_cell" ' + (ds_hideDays ? 'style="color: silver;"' : '') + ' onclick="ds_onclick(' + d + ',' + m + ',' + y + ')">' + d + '</td>';
	// Define width the day row.
}

function ds_template_main_below() {
	return '</tr>'
	     + '</table>';
}



// This one draws calendar...
function ds_draw_calendar(m, y) {
	// First clean the output buffer.
	ds_ob_clean();
	// Here we go, do the header
	ds_echo (ds_template_main_above(ds_monthnames[m - 1] + ' ' + y));
	for (i = 0; i < 7; i ++) {
		ds_echo (ds_template_day_row(ds_daynames[i]));
	}
	// Make a date object.
	var ds_dc_date = new Date();
	ds_dc_date.setMonth(m - 1);
	ds_dc_date.setFullYear(y);
	ds_dc_date.setDate(1);
	if (m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12) {
		days = 31;
	} else if (m == 4 || m == 6 || m == 9 || m == 11) {
		days = 30;
	} else {
		days = (y % 4 == 0) ? 29 : 28;
	}
	var first_day = ds_dc_date.getDay();
	var first_loop = 1;
	// Start the first week
	ds_echo (ds_template_new_week());
	// If sunday is not the first day of the month, make a blank cell...
	if (first_day != 0) {
		ds_echo (ds_template_blank_cell(first_day));
	}
	var j = first_day;
	for (i = 0; i < days; i ++) {
		// Today is sunday, make a new week.
		// If this sunday is the first day of the month,
		// we've made a new row for you already.
		if (j == 0 && !first_loop) {
			// New week!!
			ds_echo (ds_template_new_week());
		}
		// Make a row of that day!
		ds_echo (ds_template_day(i + 1, m, y));
		// This is not first loop anymore...
		first_loop = 0;
		// What is the next day?
		j ++;
		j %= 7;
	}
	// Do the footer
	ds_echo (ds_template_main_below());
	// And let's display..
	ds_ob_flush();
	// Scroll it into view.
	//ds_ce.scrollIntoView();
}

// A function to show the calendar.
// When user click on the date, it will set the content of t.
function ds_sh(t, fct, hideDays) {
	ds_hideDays = hideDays;
		ds_fct = fct;
	ds_ce = ds_getel('ds_conclass');
	// Set the element to set...
	ds_element = t;
	// Make a new date, and set the current month and year.
	var ds_sh_date = new Date();
	ds_c_month = ds_sh_date.getMonth() + 1;
	ds_c_year = ds_sh_date.getFullYear();
	// Draw the calendar
	ds_draw_calendar(ds_c_month, ds_c_year);
	// Move the calendar container!
	the_left = ds_getleft(t);
	the_top = ds_gettop(t) + t.offsetHeight;
	
	ds_ce.style.left = the_left + 'px';
	ds_ce.style.top = the_top + 'px';
	// To change the position properly, we must show it first.
	ds_ce.style.display = '';
	// Scroll it into view.
	//ds_ce.scrollIntoView();
}

// Hide the calendar.
function ds_hi() {
	ds_ce.style.display = 'none';
}

// Moves to the next month...
function ds_nm() {
	// Increase the current month.
	ds_c_month ++;
	// We have passed December, let's go to the next year.
	// Increase the current year, and set the current month to January.
	if (ds_c_month > 12) {
		ds_c_month = 1; 
		ds_c_year++;
	}
	// Redraw the calendar.
	ds_draw_calendar(ds_c_month, ds_c_year);
}

// Moves to the previous month...
function ds_pm() {
	ds_c_month = ds_c_month - 1; // Can't use dash-dash here, it will make the page invalid.
	// We have passed January, let's go back to the previous year.
	// Decrease the current year, and set the current month to December.
	if (ds_c_month < 1) {
		ds_c_month = 12; 
		ds_c_year = ds_c_year - 1; // Can't use dash-dash here, it will make the page invalid.
	}
	// Redraw the calendar.
	ds_draw_calendar(ds_c_month, ds_c_year);
}

// Moves to the next year...
function ds_ny() {
	// Increase the current year.
	ds_c_year++;
	// Redraw the calendar.
	ds_draw_calendar(ds_c_month, ds_c_year);
}

// Moves to the previous year...
function ds_py() {
	// Decrease the current year.
	ds_c_year = ds_c_year - 1; // Can't use dash-dash here, it will make the page invalid.
	// Redraw the calendar.
	ds_draw_calendar(ds_c_month, ds_c_year);
}

// Format the date to output.
function ds_format_date(d, m, y) {
	// 2 digits month.
	m2 = '00' + m;
	m2 = m2.substr(m2.length - 2);
	// 2 digits day.
	d2 = '00' + d;
	d2 = d2.substr(d2.length - 2);
	// YYYY-MM-DD
//	return y + '-' + m2 + '-' + d2;
	return d2 + '-' + m2 + '-' + y;
}

// When the user clicks the day.
function ds_onclick(d, m, y) {
	// Hide the calendar.
	ds_hi();
	// Set the value of it, if we can.
	if (ds_fct != null)
	{
		ds_fct(ds_element, d, m, y);
		return;
	}
	if (typeof(ds_element.value) != 'undefined') {
		ds_element.value = ds_format_date(d, m, y);
	// Maybe we want to set the HTML in it.
	} else if (typeof(ds_element.innerHTML) != 'undefined') {
		ds_element.innerHTML = ds_format_date(d, m, y);
	// I don't know how should we display it, just alert it to user.
	} else {
		alert (ds_format_date(d, m, y));
	}
}




var wpxy = '';
function getwpXY(e) {
  if (document.all) { // grab the x-y pos.s if browser is IE
    tempX = event.clientX + document.body.scrollLeft
    tempY = event.clientY + document.body.scrollTop
  } else {  // grab the x-y pos.s if browser is NS
    tempX = e.pageX
    tempY = e.pageY
  }  
  wpxy = '&mp=' + tempX + 'x' + tempY;
  return true;
}

document.onmousemove = getwpXY;
