diff --git a/htdocs/html.form.class.php b/htdocs/html.form.class.php
index 0865827c189a1da8677bd55b43d25d0538db2524..f00a3c7d7535a867f15a74d2be3b5fc34f78f7cf 100644
--- a/htdocs/html.form.class.php
+++ b/htdocs/html.form.class.php
@@ -1272,6 +1272,7 @@ class Form
         $result=$this->db->query($sql);
         if ($result)
         {
+            print '<div id="particulier2" class="visible">';
             print '<select class="flat" name="forme_juridique_code">';
             if ($pays_code) print '<option value="0">&nbsp;</option>';
             $num = $this->db->num_rows($result);
@@ -1310,6 +1311,7 @@ class Form
                 }
             }
             print '</select>';
+            print '</div>';
         }
         else
         {
@@ -2165,9 +2167,16 @@ class Form
         \param	key_in_label    1 pour afficher la key dans la valeur "[key] value"
         \param	value_as_key    1 pour utiliser la valeur comme cl�
     */
-    function select_array($htmlname, $array, $id='', $show_empty=0, $key_in_label=0, $value_as_key=0)
+    function select_array($htmlname, $array, $id='', $show_empty=0, $key_in_label=0, $value_as_key=0, $use_java=0, $fonction='')
     {
-        print '<select class="flat" name="'.$htmlname.'">';
+        if ($use_java == 1 && $fonction != '')
+        {
+        	print '<select class="flat" name="'.$htmlname.'" '.$fonction.'>';
+        }
+        else
+        {
+        	print '<select class="flat" name="'.$htmlname.'">';
+        }
     
         if ($show_empty)
         {
diff --git a/htdocs/lib/lib_head.js b/htdocs/lib/lib_head.js
index 3b33186c4a9f0b86b6fef6151bb17246358aaedd..fc8ae062741cff14eac02b583f408c297f0b7469 100644
--- a/htdocs/lib/lib_head.js
+++ b/htdocs/lib/lib_head.js
@@ -1,17 +1,17 @@
 // Copyright (C) 2005-2006 Laurent Destailleur  <eldy@users.sourceforge.net>
-//
-// Script javascript mis en en-tete de pages (dans section head)
-//
+//
+// Script javascript mis en en-tete de pages (dans section head)
+//
 // \file       htdocs/lib/lib_head.js
 // \brief      Fichier qui inclue les fonctions javascript d'en-tete (inclue si option use_javascript active)
 // \version    $Revision$
-
-
-
-// *****************************************
-// Pour la fonction de saisi auto des villes
-// *****************************************
-
+
+
+
+// *****************************************
+// Pour la fonction de saisi auto des villes
+// *****************************************
+
 function autofilltownfromzip_PopupPostalCode(postalcode,objectville)
 {
     var url = 'searchpostalcode.php?cp=' + postalcode + '&targetobject=window.opener.document.formsoc.' + objectville.name;
@@ -25,669 +25,714 @@ function autofilltownfromzip_save_refresh_edit()
     document.formsoc.action.value="edit";
     document.formsoc.submit();
 }
-
+
 function autofilltownfromzip_save_refresh_create()
 {
     document.formsoc.action.value="create";
     document.formsoc.submit();
 }
-
-
-
-
-// *****************************************
-// Pour la saisie des dates par calendrier
-// *****************************************
-
-//	base			"/theme/eldy"
-//	dateFieldID		"dateo"			Nom du champ
-// 	format			"dd/MM/yyyy"	Format issu de Dolibarr de SimpleDateFormat � utiliser pour retour
-function showDP(base,dateFieldID,format)
-{
-	showDP.datefieldID=dateFieldID;
-
-	var dateField=getObjectFromID(dateFieldID);
-
-	
-	//check to see if another box is already showing
-	var alreadybox=getObjectFromID("DPCancel");
-	if(alreadybox) closeDPBox();
-
-	//get positioning
-	var thetop=getTop(dateField)+dateField.offsetHeight;
-
-//	var xxx=getObjectFromID('bottompage');
-//alert(xxx.style.pixelTop);
-//alert(document.body.clientHeight);
-//alert(document.body.style.offsetTop);
-//alert(thetop);
-//alert(window.innerHeight);
-	if (thetop+160 > window.innerHeight)
-		thetop=thetop-160-20;
-	var theleft=getLeft(dateField);
-	if (theleft+140 > window.innerWidth)
-		theleft= theleft-140+dateField.offsetWidth-15;
-
-	showDP.box=document.createElement("div");
-	showDP.box.className="bodyline";
-	showDP.box.style.siplay="block";
-	showDP.box.style.position="absolute";
-	showDP.box.style.top=thetop + "px";
-	showDP.box.style.left=theleft + "px";
-	
-	if(dateField.value)	// Si il y avait valeur initiale dans champ
-	{
-		selDate=getDateFromFormat(dateField.value,format);
-		if (selDate)
-		{
-			year=selDate.getFullYear();
-			month=selDate.getMonth()+1;
-			day=selDate.getDate();
-			datetime=selDate.getTime();
-			ymd=formatDate(selDate,'yyyyMMdd');
-		}
-	}
-	else
-	{
-		selDate=new Date();
-		year=selDate.getFullYear();
-		month=selDate.getUTCMonth()+1;
-		day=selDate.getDate();
-		datetime=selDate.getTime();
-		ymd=formatDate(selDate,'yyyyMMdd');
-	}
-	loadMonth(base,month,year,ymd);
-	hideSelectBoxes();
-	document.body.appendChild(showDP.box);
-}
-
-function loadMonth(base,month,year,ymd)
-{
-	showDP.box.innerHTML="Loading...";
-	var theURL=base+"datepicker.php?cm=shw";
-	theURL+="&m="+encodeURIComponent(month);
-	theURL+="&y="+encodeURIComponent(year);
-	if (selDate)
-	{
-		theURL+="&sd="+ymd;
-	}
-
-	loadXMLDoc(theURL,null,false);
-	showDP.box.innerHTML=req.responseText;	
-}
-
-function closeDPBox()
-{
-	document.body.removeChild(showDP.box);
-	displaySelectBoxes();
-	showDP.box=null;	
-	showDP.datefieldID=null;	
-}
-
-function dpChangeDay(dateFieldID,format)
-{
-	showDP.datefieldID=dateFieldID;
-
-	var thefield=getObjectFromID(showDP.datefieldID);
-	var thefieldday=getObjectFromID(showDP.datefieldID+"day");
-	var thefieldmonth=getObjectFromID(showDP.datefieldID+"month");
-	var thefieldyear=getObjectFromID(showDP.datefieldID+"year");
-
-	var date=getDateFromFormat(thefield.value,format);
-	if (date)
-	{
-		thefieldday.value=date.getDate();
-		if(thefieldday.onchange) thefieldday.onchange.call(thefieldday);
-		thefieldmonth.value=date.getMonth()+1;
-		if(thefieldmonth.onchange) thefieldmonth.onchange.call(thefieldmonth);
-		thefieldyear.value=date.getFullYear();
-		if(thefieldyear.onchange) thefieldyear.onchange.call(thefieldyear);
-	}
-	else
-	{
-		thefieldday.value='';
-		if(thefieldday.onchange) thefieldday.onchange.call(thefieldday);
-		thefieldmonth.value='';
-		if(thefieldmonth.onchange) thefieldmonth.onchange.call(thefieldmonth);
-		thefieldyear.value='';
-		if(thefieldyear.onchange) thefieldyear.onchange.call(thefieldyear);
-	}
-}
-
-function dpClickDay(year,month,day,format)
-{
-	var thefield=getObjectFromID(showDP.datefieldID);
-	var thefieldday=getObjectFromID(showDP.datefieldID+"day");
-	var thefieldmonth=getObjectFromID(showDP.datefieldID+"month");
-	var thefieldyear=getObjectFromID(showDP.datefieldID+"year");
-
-	var dt = new Date();
-	dt.setMonth(month-1);
-	dt.setYear(year);
-	dt.setDate(day);
-
-	thefield.value=formatDate(dt,format);
-	if(thefield.onchange) thefield.onchange.call(thefield);
-
-	thefieldday.value=day;
-	if(thefieldday.onchange) thefieldday.onchange.call(thefieldday);
-	thefieldmonth.value=month;
-	if(thefieldmonth.onchange) thefieldmonth.onchange.call(thefieldmonth);
-	thefieldyear.value=year;
-	if(thefieldyear.onchange) thefieldyear.onchange.call(thefieldyear);
-
-	closeDPBox();
-}
-
-function dpHighlightDay(year,month,day){
-	var displayinfo=getObjectFromID("dpExp");
-	var months=Array("January","February","March","April","May","June","July","August","September","October","November","December");
-	displayinfo.innerHTML=months[month-1]+" "+day+", "+year;
-}
-
-
-//Returns an object given an id
-function getObjectFromID(id){
-	var theObject;
-	if(document.getElementById)
-		theObject=document.getElementById(id);
-	else
-		theObject=document.all[id];
-	return theObject;
-}
-
-
-// This Function returns the Top position of an object
-function getTop(theitem){
-	var offsetTrail = theitem;
-	var offsetTop = 0;
-	while (offsetTrail) {
-		offsetTop += offsetTrail.offsetTop;
-		offsetTrail = offsetTrail.offsetParent;
-	}
-	if (navigator.userAgent.indexOf("Mac") != -1 && typeof document.body.leftMargin != "undefined") 
-		offsetLeft += document.body.TopMargin;
-	return offsetTop;
-}
-
-// This Function returns the Left position of an object
-function getLeft(theitem){
-	var offsetTrail = theitem;
-	var offsetLeft = 0;
-	while (offsetTrail) {
-		offsetLeft += offsetTrail.offsetLeft;
-		offsetTrail = offsetTrail.offsetParent;
-	}
-	if (navigator.userAgent.indexOf("Mac") != -1 && typeof document.body.leftMargin != "undefined") 
-		offsetLeft += document.body.leftMargin;
-	return offsetLeft;
-}
-
-function loadXMLDoc(url,readyStateFunction,async) 
-{
-	// branch for native XMLHttpRequest object
-	if (window.XMLHttpRequest) {
-		req = new XMLHttpRequest();
-		req.onreadystatechange = readyStateFunction;
-		req.open("GET", url, async);
-		req.send(null);
-	// branch for IE/Windows ActiveX version
-	} else if (window.ActiveXObject) {
-		req = new ActiveXObject("Microsoft.XMLHTTP");
-		if (req) {
-			if(readyStateFunction) req.onreadystatechange = readyStateFunction;
-			req.open("GET", url, async);
-			req.send();
-		}
-	}
-}
-
-function hideSelectBoxes() {
-	var brsVersion = parseInt(window.navigator.appVersion.charAt(0), 10);
-	if (brsVersion <= 6 && window.navigator.userAgent.indexOf("MSIE") > -1) {		
-		for(var i = 0; i < document.all.length; i++) {
-			if(document.all[i].tagName)
-				if(document.all[i].tagName == "SELECT") 
-					document.all[i].style.visibility="hidden";
-		}
-	}
-}
-
-function displaySelectBoxes() {
-	var brsVersion = parseInt(window.navigator.appVersion.charAt(0), 10);
-	if (brsVersion <= 6 && window.navigator.userAgent.indexOf("MSIE") > -1) {		
-        for(var i = 0; i < document.all.length; i++) {
-                if(document.all[i].tagName)
-                        if(document.all[i].tagName == "SELECT")
-                                document.all[i].style.visibility="visible";
-        }
-	}
-}
-
-
-
-/***********************************************
-* Cool DHTML tooltip script- � Dynamic Drive DHTML code library (www.dynamicdrive.com)
-* This notice MUST stay intact for legal use
-* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
-***********************************************/
-
-var offsetxpoint=-60 //Customize x offset of tooltip
-var offsetypoint=20 //Customize y offset of tooltip
-var ie=document.all
-var ns6=document.getElementById && !document.all
-var enabletip=false
-if (ie||ns6)
-var tipobj=document.all? document.all["dhtmltooltip"] : document.getElementById? document.getElementById("dhtmltooltip") : ""
-
-function ietruebody()
-{
-	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
-}
-
-function showtip(thetext)
-{
-	if (ns6||ie)
-	{
-		tipobj.innerHTML=thetext
-		enabletip=true
-		return false
-	}
-}
-
-function positiontip(e)
-{
-	if (enabletip)
-	{
-		var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
-		var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
-		//Find out how close the mouse is to the corner of the window
-		var rightedge=ie&&!window.opera? ietruebody().clientWidth-event.clientX-offsetxpoint : window.innerWidth-e.clientX-offsetxpoint-20
-		var bottomedge=ie&&!window.opera? ietruebody().clientHeight-event.clientY-offsetypoint : window.innerHeight-e.clientY-offsetypoint-20
-		
-		var leftedge=(offsetxpoint<0)? offsetxpoint*(-1) : -1000
-		
-		//if the horizontal distance isn't enough to accomodate the width of the context menu
-		if (rightedge<tipobj.offsetWidth)
-		//move the horizontal position of the menu to the left by it's width
-		tipobj.style.left=ie? ietruebody().scrollLeft+event.clientX-tipobj.offsetWidth+"px" : window.pageXOffset+e.clientX-tipobj.offsetWidth+"px"
-		else if (curX<leftedge)
-		tipobj.style.left="5px"
-		else
-		//position the horizontal position of the menu where the mouse is positioned
-		tipobj.style.left=curX+offsetxpoint+"px"
-		
-		//same concept with the vertical position
-		if (bottomedge<tipobj.offsetHeight)
-		tipobj.style.top=ie? ietruebody().scrollTop+event.clientY-tipobj.offsetHeight-offsetypoint+"px" : window.pageYOffset+e.clientY-tipobj.offsetHeight-offsetypoint+"px"
-		else
-		tipobj.style.top=curY+offsetypoint+"px"
-		tipobj.style.visibility="visible"
-	}
-}
-
-function hidetip(){
-if (ns6||ie){
-enabletip=false
-tipobj.style.visibility="hidden"
-tipobj.style.left="-1000px"
-tipobj.style.backgroundColor=''
-tipobj.style.width=''
-}
-}
-
-document.onmousemove=positiontip;
-
-
-
-
-// ===================================================================
-// Author: Matt Kruse <matt@mattkruse.com>
-// WWW: http://www.mattkruse.com/
-//
-// NOTICE: You may use this code for any purpose, commercial or
-// private, without any further permission from the author. You may
-// remove this notice from your final code if you wish, however it is
-// appreciated by the author if at least my web site address is kept.
-//
-// You may *NOT* re-distribute this code in any way except through its
-// use. That means, you can include it in your product, or your web
-// site, or any other form where the code is actually being used. You
-// may not put the plain javascript up on your site for download or
-// include it in your javascript libraries for download. 
-// If you wish to share this code with others, please just point them
-// to the URL instead.
-// Please DO NOT link directly to my .js files from your site. Copy
-// the files to your server and use them there. Thank you.
-// ===================================================================
-
-// HISTORY
-// ------------------------------------------------------------------
-// May 17, 2003: Fixed bug in parseDate() for dates <1970
-// March 11, 2003: Added parseDate() function
-// March 11, 2003: Added "NNN" formatting option. Doesn't match up
-//                 perfectly with SimpleDateFormat formats, but 
-//                 backwards-compatability was required.
-
-// ------------------------------------------------------------------
-// These functions use the same 'format' strings as the 
-// java.text.SimpleDateFormat class, with minor exceptions.
-// The format string consists of the following abbreviations:
-// 
-// Field        | Full Form          | Short Form
-// -------------+--------------------+-----------------------
-// Year         | yyyy (4 digits)    | yy (2 digits), y (2 or 4 digits)
-// Month        | MMM (name or abbr.)| MM (2 digits), M (1 or 2 digits)
-//              | NNN (abbr.)        |
-// Day of Month | dd (2 digits)      | d (1 or 2 digits)
-// Day of Week  | EE (name)          | E (abbr)
-// Hour (1-12)  | hh (2 digits)      | h (1 or 2 digits)
-// Hour (0-23)  | HH (2 digits)      | H (1 or 2 digits)
-// Hour (0-11)  | KK (2 digits)      | K (1 or 2 digits)
-// Hour (1-24)  | kk (2 digits)      | k (1 or 2 digits)
-// Minute       | mm (2 digits)      | m (1 or 2 digits)
-// Second       | ss (2 digits)      | s (1 or 2 digits)
-// AM/PM        | a                  |
-//
-// NOTE THE DIFFERENCE BETWEEN MM and mm! Month=MM, not mm!
-// Examples:
-//  "MMM d, y" matches: January 01, 2000
-//                      Dec 1, 1900
-//                      Nov 20, 00
-//  "M/d/yy"   matches: 01/20/00
-//                      9/2/00
-//  "MMM dd, yyyy hh:mm:ssa" matches: "January 01, 2000 12:30:45AM"
-// ------------------------------------------------------------------
-
-var MONTH_NAMES=new Array('January','February','March','April','May','June','July','August','September','October','November','December','Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
-var DAY_NAMES=new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sun','Mon','Tue','Wed','Thu','Fri','Sat');
-function LZ(x) {return(x<0||x>9?"":"0")+x}
-
-// ------------------------------------------------------------------
-// isDate ( date_string, format_string )
-// Returns true if date string matches format of format string and
-// is a valid date. Else returns false.
-// It is recommended that you trim whitespace around the value before
-// passing it to this function, as whitespace is NOT ignored!
-// ------------------------------------------------------------------
-function isDate(val,format) {
-	var date=getDateFromFormat(val,format);
-	dt=date.getTime();
-	if (dt==0) { return false; }
-	return true;
-}
-
-// -------------------------------------------------------------------
-// compareDates(date1,date1format,date2,date2format)
-//   Compare two date strings to see which is greater.
-//   Returns:
-//   1 if date1 is greater than date2
-//   0 if date2 is greater than date1 of if they are the same
-//  -1 if either of the dates is in an invalid format
-// -------------------------------------------------------------------
-function compareDates(date1,dateformat1,date2,dateformat2) {
-	var dd1=getDateFromFormat(date1,dateformat1);
-	var dd2=getDateFromFormat(date2,dateformat2);
-	var d1=dd1.getTime();
-	var d2=dd2.getTime();
-	if (d1==0 || d2==0) {
-		return -1;
-		}
-	else if (d1 > d2) {
-		return 1;
-		}
-	return 0;
-}
-
-// ------------------------------------------------------------------
-// formatDate (date_object, format)
-// Returns a date in the output format specified.
-// The format string uses the same abbreviations as in getDateFromFormat()
-// ------------------------------------------------------------------
-function formatDate(date,format) {
-	//alert(date+' '+format);
-	format=format+"";
-	var result="";
-	var i_format=0;
-	var c="";
-	var token="";
-	var y=date.getYear()+"";
-	var M=date.getMonth()+1;
-	var d=date.getDate();
-	var E=date.getDay();
-	var H=date.getHours();
-	var m=date.getMinutes();
-	var s=date.getSeconds();
-	var yyyy,yy,MMM,MM,dd,hh,h,mm,ss,ampm,HH,H,KK,K,kk,k;
-	// Convert real date parts into formatted versions
-	var value=new Object();
-	if (y.length < 4) {y=""+(y-0+1900);}
-	value["y"]=""+y;
-	value["yyyy"]=y;
-	value["yy"]=y.substring(2,4);
-	value["M"]=M;
-	value["MM"]=LZ(M);
-	value["MMM"]=MONTH_NAMES[M-1];
-	value["NNN"]=MONTH_NAMES[M+11];
-	value["d"]=d;
-	value["dd"]=LZ(d);
-	value["E"]=DAY_NAMES[E+7];
-	value["EE"]=DAY_NAMES[E];
-	value["H"]=H;
-	value["HH"]=LZ(H);
-	if (H==0){value["h"]=12;}
-	else if (H>12){value["h"]=H-12;}
-	else {value["h"]=H;}
-	value["hh"]=LZ(value["h"]);
-	if (H>11){value["K"]=H-12;} else {value["K"]=H;}
-	value["k"]=H+1;
-	value["KK"]=LZ(value["K"]);
-	value["kk"]=LZ(value["k"]);
-	if (H > 11) { value["a"]="PM"; }
-	else { value["a"]="AM"; }
-	value["m"]=m;
-	value["mm"]=LZ(m);
-	value["s"]=s;
-	value["ss"]=LZ(s);
-	while (i_format < format.length) {
-		c=format.charAt(i_format);
-		token="";
-		while ((format.charAt(i_format)==c) && (i_format < format.length)) {
-			token += format.charAt(i_format++);
-			}
-		if (value[token] != null) { result=result + value[token]; }
-		else { result=result + token; }
-		}
-	//alert(format+' -> '+result);
-	return result;
-}
-	
-// ------------------------------------------------------------------
-// Utility functions for parsing in getDateFromFormat()
-// ------------------------------------------------------------------
-function _isInteger(val) {
-	var digits="1234567890";
-	for (var i=0; i < val.length; i++) {
-		if (digits.indexOf(val.charAt(i))==-1) { return false; }
-		}
-	return true;
-}
-
-function _getInt(str,i,minlength,maxlength) {
-	for (var x=maxlength; x>=minlength; x--) {
-		var token=str.substring(i,i+x);
-		if (token.length < minlength) { return null; }
-		if (_isInteger(token)) { return token; }
-		}
-	return null;
-}
-	
-// ------------------------------------------------------------------
-// getDateFromFormat( date_string , format_string )
-//
-// This function takes a date string and a format string. It matches
-// If the date string matches the format string, it returns the date
-// If it does not match, it returns 0.
-// ------------------------------------------------------------------
-function getDateFromFormat(val,format) {
-	val=val+"";
-	format=format+"";
-
-//	alert(val+' '+format);
-	var i_val=0;
-	var i_format=0;
-	var c="";
-	var token="";
-	var token2="";
-	var x,y;
-	var now=new Date();
-	var year=now.getYear();
-	var month=now.getMonth()+1;
-	var date=1;
-	var hh=now.getHours();
-	var mm=now.getMinutes();
-	var ss=now.getSeconds();
-	var ampm="";
-	
-	while (i_format < format.length) {
-		// Get next token from format string
-		c=format.charAt(i_format);
-		token="";
-		while ((format.charAt(i_format)==c) && (i_format < format.length)) {
-			token += format.charAt(i_format++);
-			}
-		// Extract contents of value based on format token
-		if (token=="yyyy" || token=="yy" || token=="y") {
-			if (token=="yyyy") { x=4;y=4; }
-			if (token=="yy")   { x=2;y=2; }
-			if (token=="y")    { x=2;y=4; }
-			year=_getInt(val,i_val,x,y);
-			if (year==null) { return 0; }
-			i_val += year.length;
-			if (year.length==2) {
-				if (year > 70) { year=1900+(year-0); }
-				else { year=2000+(year-0); }
-				}
-			}
-		else if (token=="MMM"||token=="NNN"){
-			month=0;
-			for (var i=0; i<MONTH_NAMES.length; i++) {
-				var month_name=MONTH_NAMES[i];
-				if (val.substring(i_val,i_val+month_name.length).toLowerCase()==month_name.toLowerCase()) {
-					if (token=="MMM"||(token=="NNN"&&i>11)) {
-						month=i+1;
-						if (month>12) { month -= 12; }
-						i_val += month_name.length;
-						break;
-						}
-					}
-				}
-			if ((month < 1)||(month>12)){return 0;}
-			}
-		else if (token=="EE"||token=="E"){
-			for (var i=0; i<DAY_NAMES.length; i++) {
-				var day_name=DAY_NAMES[i];
-				if (val.substring(i_val,i_val+day_name.length).toLowerCase()==day_name.toLowerCase()) {
-					i_val += day_name.length;
-					break;
-					}
-				}
-			}
-		else if (token=="MM"||token=="M") {
-			month=_getInt(val,i_val,token.length,2);
-			if(month==null||(month<1)||(month>12)){return 0;}
-			i_val+=month.length;}
-		else if (token=="dd"||token=="d") {
-			date=_getInt(val,i_val,token.length,2);
-			if(date==null||(date<1)||(date>31)){return 0;}
-			i_val+=date.length;}
-		else if (token=="hh"||token=="h") {
-			hh=_getInt(val,i_val,token.length,2);
-			if(hh==null||(hh<1)||(hh>12)){return 0;}
-			i_val+=hh.length;}
-		else if (token=="HH"||token=="H") {
-			hh=_getInt(val,i_val,token.length,2);
-			if(hh==null||(hh<0)||(hh>23)){return 0;}
-			i_val+=hh.length;}
-		else if (token=="KK"||token=="K") {
-			hh=_getInt(val,i_val,token.length,2);
-			if(hh==null||(hh<0)||(hh>11)){return 0;}
-			i_val+=hh.length;}
-		else if (token=="kk"||token=="k") {
-			hh=_getInt(val,i_val,token.length,2);
-			if(hh==null||(hh<1)||(hh>24)){return 0;}
-			i_val+=hh.length;hh--;}
-		else if (token=="mm"||token=="m") {
-			mm=_getInt(val,i_val,token.length,2);
-			if(mm==null||(mm<0)||(mm>59)){return 0;}
-			i_val+=mm.length;}
-		else if (token=="ss"||token=="s") {
-			ss=_getInt(val,i_val,token.length,2);
-			if(ss==null||(ss<0)||(ss>59)){return 0;}
-			i_val+=ss.length;}
-		else if (token=="a") {
-			if (val.substring(i_val,i_val+2).toLowerCase()=="am") {ampm="AM";}
-			else if (val.substring(i_val,i_val+2).toLowerCase()=="pm") {ampm="PM";}
-			else {return 0;}
-			i_val+=2;}
-		else {
-			if (val.substring(i_val,i_val+token.length)!=token) {return 0;}
-			else {i_val+=token.length;}
-			}
-		}
-	// If there are any trailing characters left in the value, it doesn't match
-	if (i_val != val.length) { return 0; }
-	// Is date valid for month?
-	if (month==2) {
-		// Check for leap year
-		if ( ( (year%4==0)&&(year%100 != 0) ) || (year%400==0) ) { // leap year
-			if (date > 29){ return 0; }
-			}
-		else { if (date > 28) { return 0; } }
-		}
-	if ((month==4)||(month==6)||(month==9)||(month==11)) {
-		if (date > 30) { return 0; }
-		}
-	// Correct hours value
-	if (hh<12 && ampm=="PM") { hh=hh-0+12; }
-	else if (hh>11 && ampm=="AM") { hh-=12; }
-	var newdate=new Date(year,month-1,date,hh,mm,ss);
-
-//	alert(year+' '+month+' '+date);
-
-//	return newdate.getTime();
-	return newdate;
-}
-
-// ------------------------------------------------------------------
-// parseDate( date_string [, prefer_euro_format] )
-//
-// This function takes a date string and tries to match it to a
-// number of possible date formats to get the value. It will try to
-// match against the following international formats, in this order:
-// y-M-d   MMM d, y   MMM d,y   y-MMM-d   d-MMM-y  MMM d
-// M/d/y   M-d-y      M.d.y     MMM-d     M/d      M-d
-// d/M/y   d-M-y      d.M.y     d-MMM     d/M      d-M
-// A second argument may be passed to instruct the method to search
-// for formats like d/M/y (european format) before M/d/y (American).
-// Returns a Date object or null if no patterns match.
-// ------------------------------------------------------------------
-function parseDate(val) {
-	var preferEuro=(arguments.length==2)?arguments[1]:false;
-	generalFormats=new Array('y-M-d','MMM d, y','MMM d,y','y-MMM-d','d-MMM-y','MMM d');
-	monthFirst=new Array('M/d/y','M-d-y','M.d.y','MMM-d','M/d','M-d');
-	dateFirst =new Array('d/M/y','d-M-y','d.M.y','d-MMM','d/M','d-M');
-	var checkList=new Array('generalFormats',preferEuro?'dateFirst':'monthFirst',preferEuro?'monthFirst':'dateFirst');
-	var d=null;
-	for (var i=0; i<checkList.length; i++) {
-		var l=window[checkList[i]];
-		for (var j=0; j<l.length; j++) {
-			date=getDateFromFormat(val,l[j]);
-			d=date.getTime();
-			if (d!=0) { return new Date(d); }
-			}
-		}
-	return null;
-}
-
-
+
+
+
+
+// *****************************************
+// Pour la saisie des dates par calendrier
+// *****************************************
+
+//	base			"/theme/eldy"
+//	dateFieldID		"dateo"			Nom du champ
+// 	format			"dd/MM/yyyy"	Format issu de Dolibarr de SimpleDateFormat � utiliser pour retour
+function showDP(base,dateFieldID,format)
+{
+	showDP.datefieldID=dateFieldID;
+
+	var dateField=getObjectFromID(dateFieldID);
+
+	
+	//check to see if another box is already showing
+	var alreadybox=getObjectFromID("DPCancel");
+	if(alreadybox) closeDPBox();
+
+	//get positioning
+	var thetop=getTop(dateField)+dateField.offsetHeight;
+
+//	var xxx=getObjectFromID('bottompage');
+//alert(xxx.style.pixelTop);
+//alert(document.body.clientHeight);
+//alert(document.body.style.offsetTop);
+//alert(thetop);
+//alert(window.innerHeight);
+	if (thetop+160 > window.innerHeight)
+		thetop=thetop-160-20;
+	var theleft=getLeft(dateField);
+	if (theleft+140 > window.innerWidth)
+		theleft= theleft-140+dateField.offsetWidth-15;
+
+	showDP.box=document.createElement("div");
+	showDP.box.className="bodyline";
+	showDP.box.style.siplay="block";
+	showDP.box.style.position="absolute";
+	showDP.box.style.top=thetop + "px";
+	showDP.box.style.left=theleft + "px";
+	
+	if(dateField.value)	// Si il y avait valeur initiale dans champ
+	{
+		selDate=getDateFromFormat(dateField.value,format);
+		if (selDate)
+		{
+			year=selDate.getFullYear();
+			month=selDate.getMonth()+1;
+			day=selDate.getDate();
+			datetime=selDate.getTime();
+			ymd=formatDate(selDate,'yyyyMMdd');
+		}
+	}
+	else
+	{
+		selDate=new Date();
+		year=selDate.getFullYear();
+		month=selDate.getUTCMonth()+1;
+		day=selDate.getDate();
+		datetime=selDate.getTime();
+		ymd=formatDate(selDate,'yyyyMMdd');
+	}
+	loadMonth(base,month,year,ymd);
+	hideSelectBoxes();
+	document.body.appendChild(showDP.box);
+}
+
+function loadMonth(base,month,year,ymd)
+{
+	showDP.box.innerHTML="Loading...";
+	var theURL=base+"datepicker.php?cm=shw";
+	theURL+="&m="+encodeURIComponent(month);
+	theURL+="&y="+encodeURIComponent(year);
+	if (selDate)
+	{
+		theURL+="&sd="+ymd;
+	}
+
+	loadXMLDoc(theURL,null,false);
+	showDP.box.innerHTML=req.responseText;	
+}
+
+function closeDPBox()
+{
+	document.body.removeChild(showDP.box);
+	displaySelectBoxes();
+	showDP.box=null;	
+	showDP.datefieldID=null;	
+}
+
+function dpChangeDay(dateFieldID,format)
+{
+	showDP.datefieldID=dateFieldID;
+
+	var thefield=getObjectFromID(showDP.datefieldID);
+	var thefieldday=getObjectFromID(showDP.datefieldID+"day");
+	var thefieldmonth=getObjectFromID(showDP.datefieldID+"month");
+	var thefieldyear=getObjectFromID(showDP.datefieldID+"year");
+
+	var date=getDateFromFormat(thefield.value,format);
+	if (date)
+	{
+		thefieldday.value=date.getDate();
+		if(thefieldday.onchange) thefieldday.onchange.call(thefieldday);
+		thefieldmonth.value=date.getMonth()+1;
+		if(thefieldmonth.onchange) thefieldmonth.onchange.call(thefieldmonth);
+		thefieldyear.value=date.getFullYear();
+		if(thefieldyear.onchange) thefieldyear.onchange.call(thefieldyear);
+	}
+	else
+	{
+		thefieldday.value='';
+		if(thefieldday.onchange) thefieldday.onchange.call(thefieldday);
+		thefieldmonth.value='';
+		if(thefieldmonth.onchange) thefieldmonth.onchange.call(thefieldmonth);
+		thefieldyear.value='';
+		if(thefieldyear.onchange) thefieldyear.onchange.call(thefieldyear);
+	}
+}
+
+function dpClickDay(year,month,day,format)
+{
+	var thefield=getObjectFromID(showDP.datefieldID);
+	var thefieldday=getObjectFromID(showDP.datefieldID+"day");
+	var thefieldmonth=getObjectFromID(showDP.datefieldID+"month");
+	var thefieldyear=getObjectFromID(showDP.datefieldID+"year");
+
+	var dt = new Date();
+	dt.setMonth(month-1);
+	dt.setYear(year);
+	dt.setDate(day);
+
+	thefield.value=formatDate(dt,format);
+	if(thefield.onchange) thefield.onchange.call(thefield);
+
+	thefieldday.value=day;
+	if(thefieldday.onchange) thefieldday.onchange.call(thefieldday);
+	thefieldmonth.value=month;
+	if(thefieldmonth.onchange) thefieldmonth.onchange.call(thefieldmonth);
+	thefieldyear.value=year;
+	if(thefieldyear.onchange) thefieldyear.onchange.call(thefieldyear);
+
+	closeDPBox();
+}
+
+function dpHighlightDay(year,month,day){
+	var displayinfo=getObjectFromID("dpExp");
+	var months=Array("January","February","March","April","May","June","July","August","September","October","November","December");
+	displayinfo.innerHTML=months[month-1]+" "+day+", "+year;
+}
+
+
+//Returns an object given an id
+function getObjectFromID(id){
+	var theObject;
+	if(document.getElementById)
+		theObject=document.getElementById(id);
+	else
+		theObject=document.all[id];
+	return theObject;
+}
+
+
+// This Function returns the Top position of an object
+function getTop(theitem){
+	var offsetTrail = theitem;
+	var offsetTop = 0;
+	while (offsetTrail) {
+		offsetTop += offsetTrail.offsetTop;
+		offsetTrail = offsetTrail.offsetParent;
+	}
+	if (navigator.userAgent.indexOf("Mac") != -1 && typeof document.body.leftMargin != "undefined") 
+		offsetLeft += document.body.TopMargin;
+	return offsetTop;
+}
+
+// This Function returns the Left position of an object
+function getLeft(theitem){
+	var offsetTrail = theitem;
+	var offsetLeft = 0;
+	while (offsetTrail) {
+		offsetLeft += offsetTrail.offsetLeft;
+		offsetTrail = offsetTrail.offsetParent;
+	}
+	if (navigator.userAgent.indexOf("Mac") != -1 && typeof document.body.leftMargin != "undefined") 
+		offsetLeft += document.body.leftMargin;
+	return offsetLeft;
+}
+
+function loadXMLDoc(url,readyStateFunction,async) 
+{
+	// branch for native XMLHttpRequest object
+	if (window.XMLHttpRequest) {
+		req = new XMLHttpRequest();
+		req.onreadystatechange = readyStateFunction;
+		req.open("GET", url, async);
+		req.send(null);
+	// branch for IE/Windows ActiveX version
+	} else if (window.ActiveXObject) {
+		req = new ActiveXObject("Microsoft.XMLHTTP");
+		if (req) {
+			if(readyStateFunction) req.onreadystatechange = readyStateFunction;
+			req.open("GET", url, async);
+			req.send();
+		}
+	}
+}
+
+function hideSelectBoxes() {
+	var brsVersion = parseInt(window.navigator.appVersion.charAt(0), 10);
+	if (brsVersion <= 6 && window.navigator.userAgent.indexOf("MSIE") > -1) {		
+		for(var i = 0; i < document.all.length; i++) {
+			if(document.all[i].tagName)
+				if(document.all[i].tagName == "SELECT") 
+					document.all[i].style.visibility="hidden";
+		}
+	}
+}
+
+function displaySelectBoxes() {
+	var brsVersion = parseInt(window.navigator.appVersion.charAt(0), 10);
+	if (brsVersion <= 6 && window.navigator.userAgent.indexOf("MSIE") > -1) {		
+        for(var i = 0; i < document.all.length; i++) {
+                if(document.all[i].tagName)
+                        if(document.all[i].tagName == "SELECT")
+                                document.all[i].style.visibility="visible";
+        }
+	}
+}
+
+
+// Afficher/cacher les champs d'un formulaire
+function formDisplayHideId(baliseId,numField) 
+  {
+  //if (document.getElementById && document.getElementById(baliseId) != null) 
+    //{
+    	//var balise = document.getElementById(baliseId);
+
+    	var numDiv = 1
+    	
+      if (document.formsoc.typent_id.value == 8)
+    	  {
+
+    	  	while ( document.getElementById( baliseId + numDiv) ) {
+    	  	
+    	  	var balise = document.getElementById( baliseId + numDiv);
+   	  	
+    	  	if (balise && balise.className == "hidden") 
+              balise.className = "visible";
+              
+          if (balise && balise.className == "visible") 
+              balise.className = "hidden";
+              numDiv++
+
+            }
+    	  }
+      else
+    	  {
+
+    	  	while ( document.getElementById( baliseId + numDiv) ) {
+    	    
+    	    var balise = document.getElementById( baliseId + numDiv);
+
+    		  if (balise && balise.className == "visible") 
+              balise.className = "hidden";
+              
+          if (balise && balise.className == "hidden") 
+              balise.className = "visible";
+              numDiv++
+
+            }
+    	  }
+     //}
+  }
+
+
+
+/***********************************************
+* Cool DHTML tooltip script- � Dynamic Drive DHTML code library (www.dynamicdrive.com)
+* This notice MUST stay intact for legal use
+* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
+***********************************************/
+
+var offsetxpoint=-60 //Customize x offset of tooltip
+var offsetypoint=20 //Customize y offset of tooltip
+var ie=document.all
+var ns6=document.getElementById && !document.all
+var enabletip=false
+if (ie||ns6)
+var tipobj=document.all? document.all["dhtmltooltip"] : document.getElementById? document.getElementById("dhtmltooltip") : ""
+
+function ietruebody()
+{
+	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
+}
+
+function showtip(thetext)
+{
+	if (ns6||ie)
+	{
+		tipobj.innerHTML=thetext
+		enabletip=true
+		return false
+	}
+}
+
+function positiontip(e)
+{
+	if (enabletip)
+	{
+		var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
+		var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
+		//Find out how close the mouse is to the corner of the window
+		var rightedge=ie&&!window.opera? ietruebody().clientWidth-event.clientX-offsetxpoint : window.innerWidth-e.clientX-offsetxpoint-20
+		var bottomedge=ie&&!window.opera? ietruebody().clientHeight-event.clientY-offsetypoint : window.innerHeight-e.clientY-offsetypoint-20
+		
+		var leftedge=(offsetxpoint<0)? offsetxpoint*(-1) : -1000
+		
+		//if the horizontal distance isn't enough to accomodate the width of the context menu
+		if (rightedge<tipobj.offsetWidth)
+		//move the horizontal position of the menu to the left by it's width
+		tipobj.style.left=ie? ietruebody().scrollLeft+event.clientX-tipobj.offsetWidth+"px" : window.pageXOffset+e.clientX-tipobj.offsetWidth+"px"
+		else if (curX<leftedge)
+		tipobj.style.left="5px"
+		else
+		//position the horizontal position of the menu where the mouse is positioned
+		tipobj.style.left=curX+offsetxpoint+"px"
+		
+		//same concept with the vertical position
+		if (bottomedge<tipobj.offsetHeight)
+		tipobj.style.top=ie? ietruebody().scrollTop+event.clientY-tipobj.offsetHeight-offsetypoint+"px" : window.pageYOffset+e.clientY-tipobj.offsetHeight-offsetypoint+"px"
+		else
+		tipobj.style.top=curY+offsetypoint+"px"
+		tipobj.style.visibility="visible"
+	}
+}
+
+function hidetip(){
+if (ns6||ie){
+enabletip=false
+tipobj.style.visibility="hidden"
+tipobj.style.left="-1000px"
+tipobj.style.backgroundColor=''
+tipobj.style.width=''
+}
+}
+
+document.onmousemove=positiontip;
+
+
+
+
+// ===================================================================
+// Author: Matt Kruse <matt@mattkruse.com>
+// WWW: http://www.mattkruse.com/
+//
+// NOTICE: You may use this code for any purpose, commercial or
+// private, without any further permission from the author. You may
+// remove this notice from your final code if you wish, however it is
+// appreciated by the author if at least my web site address is kept.
+//
+// You may *NOT* re-distribute this code in any way except through its
+// use. That means, you can include it in your product, or your web
+// site, or any other form where the code is actually being used. You
+// may not put the plain javascript up on your site for download or
+// include it in your javascript libraries for download. 
+// If you wish to share this code with others, please just point them
+// to the URL instead.
+// Please DO NOT link directly to my .js files from your site. Copy
+// the files to your server and use them there. Thank you.
+// ===================================================================
+
+// HISTORY
+// ------------------------------------------------------------------
+// May 17, 2003: Fixed bug in parseDate() for dates <1970
+// March 11, 2003: Added parseDate() function
+// March 11, 2003: Added "NNN" formatting option. Doesn't match up
+//                 perfectly with SimpleDateFormat formats, but 
+//                 backwards-compatability was required.
+
+// ------------------------------------------------------------------
+// These functions use the same 'format' strings as the 
+// java.text.SimpleDateFormat class, with minor exceptions.
+// The format string consists of the following abbreviations:
+// 
+// Field        | Full Form          | Short Form
+// -------------+--------------------+-----------------------
+// Year         | yyyy (4 digits)    | yy (2 digits), y (2 or 4 digits)
+// Month        | MMM (name or abbr.)| MM (2 digits), M (1 or 2 digits)
+//              | NNN (abbr.)        |
+// Day of Month | dd (2 digits)      | d (1 or 2 digits)
+// Day of Week  | EE (name)          | E (abbr)
+// Hour (1-12)  | hh (2 digits)      | h (1 or 2 digits)
+// Hour (0-23)  | HH (2 digits)      | H (1 or 2 digits)
+// Hour (0-11)  | KK (2 digits)      | K (1 or 2 digits)
+// Hour (1-24)  | kk (2 digits)      | k (1 or 2 digits)
+// Minute       | mm (2 digits)      | m (1 or 2 digits)
+// Second       | ss (2 digits)      | s (1 or 2 digits)
+// AM/PM        | a                  |
+//
+// NOTE THE DIFFERENCE BETWEEN MM and mm! Month=MM, not mm!
+// Examples:
+//  "MMM d, y" matches: January 01, 2000
+//                      Dec 1, 1900
+//                      Nov 20, 00
+//  "M/d/yy"   matches: 01/20/00
+//                      9/2/00
+//  "MMM dd, yyyy hh:mm:ssa" matches: "January 01, 2000 12:30:45AM"
+// ------------------------------------------------------------------
+
+var MONTH_NAMES=new Array('January','February','March','April','May','June','July','August','September','October','November','December','Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
+var DAY_NAMES=new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sun','Mon','Tue','Wed','Thu','Fri','Sat');
+function LZ(x) {return(x<0||x>9?"":"0")+x}
+
+// ------------------------------------------------------------------
+// isDate ( date_string, format_string )
+// Returns true if date string matches format of format string and
+// is a valid date. Else returns false.
+// It is recommended that you trim whitespace around the value before
+// passing it to this function, as whitespace is NOT ignored!
+// ------------------------------------------------------------------
+function isDate(val,format) {
+	var date=getDateFromFormat(val,format);
+	dt=date.getTime();
+	if (dt==0) { return false; }
+	return true;
+}
+
+// -------------------------------------------------------------------
+// compareDates(date1,date1format,date2,date2format)
+//   Compare two date strings to see which is greater.
+//   Returns:
+//   1 if date1 is greater than date2
+//   0 if date2 is greater than date1 of if they are the same
+//  -1 if either of the dates is in an invalid format
+// -------------------------------------------------------------------
+function compareDates(date1,dateformat1,date2,dateformat2) {
+	var dd1=getDateFromFormat(date1,dateformat1);
+	var dd2=getDateFromFormat(date2,dateformat2);
+	var d1=dd1.getTime();
+	var d2=dd2.getTime();
+	if (d1==0 || d2==0) {
+		return -1;
+		}
+	else if (d1 > d2) {
+		return 1;
+		}
+	return 0;
+}
+
+// ------------------------------------------------------------------
+// formatDate (date_object, format)
+// Returns a date in the output format specified.
+// The format string uses the same abbreviations as in getDateFromFormat()
+// ------------------------------------------------------------------
+function formatDate(date,format) {
+	//alert(date+' '+format);
+	format=format+"";
+	var result="";
+	var i_format=0;
+	var c="";
+	var token="";
+	var y=date.getYear()+"";
+	var M=date.getMonth()+1;
+	var d=date.getDate();
+	var E=date.getDay();
+	var H=date.getHours();
+	var m=date.getMinutes();
+	var s=date.getSeconds();
+	var yyyy,yy,MMM,MM,dd,hh,h,mm,ss,ampm,HH,H,KK,K,kk,k;
+	// Convert real date parts into formatted versions
+	var value=new Object();
+	if (y.length < 4) {y=""+(y-0+1900);}
+	value["y"]=""+y;
+	value["yyyy"]=y;
+	value["yy"]=y.substring(2,4);
+	value["M"]=M;
+	value["MM"]=LZ(M);
+	value["MMM"]=MONTH_NAMES[M-1];
+	value["NNN"]=MONTH_NAMES[M+11];
+	value["d"]=d;
+	value["dd"]=LZ(d);
+	value["E"]=DAY_NAMES[E+7];
+	value["EE"]=DAY_NAMES[E];
+	value["H"]=H;
+	value["HH"]=LZ(H);
+	if (H==0){value["h"]=12;}
+	else if (H>12){value["h"]=H-12;}
+	else {value["h"]=H;}
+	value["hh"]=LZ(value["h"]);
+	if (H>11){value["K"]=H-12;} else {value["K"]=H;}
+	value["k"]=H+1;
+	value["KK"]=LZ(value["K"]);
+	value["kk"]=LZ(value["k"]);
+	if (H > 11) { value["a"]="PM"; }
+	else { value["a"]="AM"; }
+	value["m"]=m;
+	value["mm"]=LZ(m);
+	value["s"]=s;
+	value["ss"]=LZ(s);
+	while (i_format < format.length) {
+		c=format.charAt(i_format);
+		token="";
+		while ((format.charAt(i_format)==c) && (i_format < format.length)) {
+			token += format.charAt(i_format++);
+			}
+		if (value[token] != null) { result=result + value[token]; }
+		else { result=result + token; }
+		}
+	//alert(format+' -> '+result);
+	return result;
+}
+	
+// ------------------------------------------------------------------
+// Utility functions for parsing in getDateFromFormat()
+// ------------------------------------------------------------------
+function _isInteger(val) {
+	var digits="1234567890";
+	for (var i=0; i < val.length; i++) {
+		if (digits.indexOf(val.charAt(i))==-1) { return false; }
+		}
+	return true;
+}
+
+function _getInt(str,i,minlength,maxlength) {
+	for (var x=maxlength; x>=minlength; x--) {
+		var token=str.substring(i,i+x);
+		if (token.length < minlength) { return null; }
+		if (_isInteger(token)) { return token; }
+		}
+	return null;
+}
+	
+// ------------------------------------------------------------------
+// getDateFromFormat( date_string , format_string )
+//
+// This function takes a date string and a format string. It matches
+// If the date string matches the format string, it returns the date
+// If it does not match, it returns 0.
+// ------------------------------------------------------------------
+function getDateFromFormat(val,format) {
+	val=val+"";
+	format=format+"";
+
+//	alert(val+' '+format);
+	var i_val=0;
+	var i_format=0;
+	var c="";
+	var token="";
+	var token2="";
+	var x,y;
+	var now=new Date();
+	var year=now.getYear();
+	var month=now.getMonth()+1;
+	var date=1;
+	var hh=now.getHours();
+	var mm=now.getMinutes();
+	var ss=now.getSeconds();
+	var ampm="";
+	
+	while (i_format < format.length) {
+		// Get next token from format string
+		c=format.charAt(i_format);
+		token="";
+		while ((format.charAt(i_format)==c) && (i_format < format.length)) {
+			token += format.charAt(i_format++);
+			}
+		// Extract contents of value based on format token
+		if (token=="yyyy" || token=="yy" || token=="y") {
+			if (token=="yyyy") { x=4;y=4; }
+			if (token=="yy")   { x=2;y=2; }
+			if (token=="y")    { x=2;y=4; }
+			year=_getInt(val,i_val,x,y);
+			if (year==null) { return 0; }
+			i_val += year.length;
+			if (year.length==2) {
+				if (year > 70) { year=1900+(year-0); }
+				else { year=2000+(year-0); }
+				}
+			}
+		else if (token=="MMM"||token=="NNN"){
+			month=0;
+			for (var i=0; i<MONTH_NAMES.length; i++) {
+				var month_name=MONTH_NAMES[i];
+				if (val.substring(i_val,i_val+month_name.length).toLowerCase()==month_name.toLowerCase()) {
+					if (token=="MMM"||(token=="NNN"&&i>11)) {
+						month=i+1;
+						if (month>12) { month -= 12; }
+						i_val += month_name.length;
+						break;
+						}
+					}
+				}
+			if ((month < 1)||(month>12)){return 0;}
+			}
+		else if (token=="EE"||token=="E"){
+			for (var i=0; i<DAY_NAMES.length; i++) {
+				var day_name=DAY_NAMES[i];
+				if (val.substring(i_val,i_val+day_name.length).toLowerCase()==day_name.toLowerCase()) {
+					i_val += day_name.length;
+					break;
+					}
+				}
+			}
+		else if (token=="MM"||token=="M") {
+			month=_getInt(val,i_val,token.length,2);
+			if(month==null||(month<1)||(month>12)){return 0;}
+			i_val+=month.length;}
+		else if (token=="dd"||token=="d") {
+			date=_getInt(val,i_val,token.length,2);
+			if(date==null||(date<1)||(date>31)){return 0;}
+			i_val+=date.length;}
+		else if (token=="hh"||token=="h") {
+			hh=_getInt(val,i_val,token.length,2);
+			if(hh==null||(hh<1)||(hh>12)){return 0;}
+			i_val+=hh.length;}
+		else if (token=="HH"||token=="H") {
+			hh=_getInt(val,i_val,token.length,2);
+			if(hh==null||(hh<0)||(hh>23)){return 0;}
+			i_val+=hh.length;}
+		else if (token=="KK"||token=="K") {
+			hh=_getInt(val,i_val,token.length,2);
+			if(hh==null||(hh<0)||(hh>11)){return 0;}
+			i_val+=hh.length;}
+		else if (token=="kk"||token=="k") {
+			hh=_getInt(val,i_val,token.length,2);
+			if(hh==null||(hh<1)||(hh>24)){return 0;}
+			i_val+=hh.length;hh--;}
+		else if (token=="mm"||token=="m") {
+			mm=_getInt(val,i_val,token.length,2);
+			if(mm==null||(mm<0)||(mm>59)){return 0;}
+			i_val+=mm.length;}
+		else if (token=="ss"||token=="s") {
+			ss=_getInt(val,i_val,token.length,2);
+			if(ss==null||(ss<0)||(ss>59)){return 0;}
+			i_val+=ss.length;}
+		else if (token=="a") {
+			if (val.substring(i_val,i_val+2).toLowerCase()=="am") {ampm="AM";}
+			else if (val.substring(i_val,i_val+2).toLowerCase()=="pm") {ampm="PM";}
+			else {return 0;}
+			i_val+=2;}
+		else {
+			if (val.substring(i_val,i_val+token.length)!=token) {return 0;}
+			else {i_val+=token.length;}
+			}
+		}
+	// If there are any trailing characters left in the value, it doesn't match
+	if (i_val != val.length) { return 0; }
+	// Is date valid for month?
+	if (month==2) {
+		// Check for leap year
+		if ( ( (year%4==0)&&(year%100 != 0) ) || (year%400==0) ) { // leap year
+			if (date > 29){ return 0; }
+			}
+		else { if (date > 28) { return 0; } }
+		}
+	if ((month==4)||(month==6)||(month==9)||(month==11)) {
+		if (date > 30) { return 0; }
+		}
+	// Correct hours value
+	if (hh<12 && ampm=="PM") { hh=hh-0+12; }
+	else if (hh>11 && ampm=="AM") { hh-=12; }
+	var newdate=new Date(year,month-1,date,hh,mm,ss);
+
+//	alert(year+' '+month+' '+date);
+
+//	return newdate.getTime();
+	return newdate;
+}
+
+// ------------------------------------------------------------------
+// parseDate( date_string [, prefer_euro_format] )
+//
+// This function takes a date string and tries to match it to a
+// number of possible date formats to get the value. It will try to
+// match against the following international formats, in this order:
+// y-M-d   MMM d, y   MMM d,y   y-MMM-d   d-MMM-y  MMM d
+// M/d/y   M-d-y      M.d.y     MMM-d     M/d      M-d
+// d/M/y   d-M-y      d.M.y     d-MMM     d/M      d-M
+// A second argument may be passed to instruct the method to search
+// for formats like d/M/y (european format) before M/d/y (American).
+// Returns a Date object or null if no patterns match.
+// ------------------------------------------------------------------
+function parseDate(val) {
+	var preferEuro=(arguments.length==2)?arguments[1]:false;
+	generalFormats=new Array('y-M-d','MMM d, y','MMM d,y','y-MMM-d','d-MMM-y','MMM d');
+	monthFirst=new Array('M/d/y','M-d-y','M.d.y','MMM-d','M/d','M-d');
+	dateFirst =new Array('d/M/y','d-M-y','d.M.y','d-MMM','d/M','d-M');
+	var checkList=new Array('generalFormats',preferEuro?'dateFirst':'monthFirst',preferEuro?'monthFirst':'dateFirst');
+	var d=null;
+	for (var i=0; i<checkList.length; i++) {
+		var l=window[checkList[i]];
+		for (var j=0; j<l.length; j++) {
+			date=getDateFromFormat(val,l[j]);
+			d=date.getTime();
+			if (d!=0) { return new Date(d); }
+			}
+		}
+	return null;
+}
+
+
diff --git a/htdocs/theme/eldy/eldy.css.php b/htdocs/theme/eldy/eldy.css.php
index 9c24c5847b046614bd40db8e5952ebe87f2aa39c..d2157955ded09f4a74af3d5437bc8587e1c8ea82 100644
--- a/htdocs/theme/eldy/eldy.css.php
+++ b/htdocs/theme/eldy/eldy.css.php
@@ -1,952 +1,972 @@
-<?php
-/* Copyright (C) 2004-2005 Laurent Destailleur  <eldy@users.sourceforge.net>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- * $Id$
- * $Source$
- */
-
-header('Content-type: text/css');
-
-require("../../conf/conf.php");
-
-?>
-
-/* ============================================================================== */
-/* Styles par d�faut                                                              */
-/* ============================================================================== */
-
-body {
-    background-color: #F4F4F4;
-	color: #101010;
-	font-size: 12px;
-    font-family: arial,tahoma,verdana,helvetica;
-    margin-top: 0;
-    margin-bottom: 0;
-    margin-right: 0;
-    margin-left: 0;
-}
-
-a:link    { font: verdana, arial, helvetica, sans-serif; font-weight: bold; color: #000000; text-decoration: none; }
-a:visited { font: verdana, arial, helvetica, sans-serif; font-weight: bold; color: #000000; text-decoration: none; }
-a:active  { font: verdana, arial, helvetica, sans-serif; font-weight: bold; color: #000000; text-decoration: none; }
-a:hover   { font: verdana, arial, helvetica, sans-serif; font-weight: bold; color: #000000; text-decoration: none; }
-input
-{ 
-    font: 12px helvetica, verdana, arial, sans-serif; 
-    background: #FDFDFD;
-    border: 1px solid #ACBCBB;
-    padding: 0px 0px 0px 0px;
-    margin: 0px 0px 0px 0px;
-}
-input.flat
-{ 
-    font: 12px helvetica, verdana, arial, sans-serif;
-    background: #FDFDFD;
-    border: 1px solid #ACBCBB;
-    padding: 0px 0px 0px 0px;
-    margin: 0px 0px 0px 0px;
-}
-textarea  {
-    font: 12px helvetica, verdana, arial, sans-serif;
-    background: #FDFDFD;
-    border: 1px solid #ACBCBB;
-    padding: 0px 0px 0px 0px;
-    margin: 0px 0px 0px 0px;
-}
-textarea.flat
-{ 
-    font: 12px helvetica, verdana, arial, sans-serif;
-    background: #FDFDFD;
-    border: 1px solid #ACBCBB;
-    padding: 0px 0px 0px 0px;
-    margin: 0px 0px 0px 0px;
-}
-select.flat
-{
-    font: 12px helvetica, verdana, arial, sans-serif;
-    border: 1px solid #ACBCBB;
-    padding: 0px 0px 0px 0px;
-    margin: 0px 0px 0px 0px;
-}
-
-.button  {
-    font: 12px helvetica, verdana, arial, sans-serif;
-	font-size: 100%;
-	border: 0px;
-	background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/button_bg.png' ?>);
-	background-position : bottom;
-    padding: 0px 0px 0px 0px;
-    margin: 0px 0px 0px 0px;
-}
-
-
-/* ============================================================================== */
-/* Styles de positionnement des zones                                             */
-/* ============================================================================== */
-
-div.vmenuplusfiche
-{
-    top: auto;
-    left: auto;
-    position: static;
-    float: left; 
-    display: block;
-    margin-right: 6px;
-    margin-left: 1px;
-}
-
-div.vmenu
-{
-    top: auto;
-    left: auto;
-    position: relative;
-    float: top;
-    display: block;
-    margin-right: 2px;
-    padding: 0px;
-    padding-bottom: 0px;
-    width: 160px;
-}
-
-div.fiche
-{
-    top: 28px;
-    left: auto;
-    position: absolute;
-    float: top;
-    display: block;
-    margin-right: 6px;
-    margin-top: 0px;
-}
-
-
-/* ============================================================================== */
-/* Menu superieur et 1ere ligne tableau                                           */
-/* ============================================================================== */
-
-div.tmenu
-{
-    position: relative;
-    float: top;
-    display: block;
-    white-space: nowrap;
-    border-top: 1px solid #D3E5EC;
-    border-left: 0px;
-    border-right: 0px solid #555555;
-    border-bottom: 1px solid #8B9999;
-    padding: 0px 0px 0px 0px;
-    margin: 0px 0px 2px 0px;
-    font-weight: bold;
-    font-size: 12px;
-    height: 19px;
-    background: #b3c5cc; 
-    background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/tmenu.jpg' ?>);
-    color: #000000; 
-    text-decoration: none;
-}
-
-table.tmenu
-{
-    padding: 0px 0px 10px 0px;
-    margin: 0px 0px 0px 10px;
-}
-
-a.tmenu:link
-{
-  color: #234046;
-  padding: 0px 8px 0px 8px;
-  margin: 0px 1px 2px 1px;
-  font: 12px helvetica, verdana, arial, sans-serif;
-  font-weight: bold;
-}
-a.tmenu:visited
-{
-  color: #234046;
-  padding: 0px 8px 0px 8px;
-  margin: 0px 1px 2px 1px;
-  border: 0px solid #b3c5cc;
-  font: 12px helvetica, verdana, arial, sans-serif;
-  font-weight: bold;
-}
-a.tmenu#sel
-{ 
-  color: #234046;
-  padding: 0px 8px 0px 8px;
-  margin: 0px 0px 2px 0px;
-  font: 12px helvetica, verdana, arial, sans-serif;
-  font-weight: bold;
-  background: #dee7ec;
-  background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/tmenu_inverse.jpg' ?>);
-  border-right: 1px solid #555555;
-  border-top: 1px solid #D8D8D8;
-  border-left: 1px solid #D8D8D8;
-}
-a.tmenu:hover
-{
-  color: #234046;
-  padding: 0px 8px 0px 8px;
-  margin: 0px 1px 2px 1px;
-  text-decoration: none;
-  font: 12px helvetica, verdana, arial, sans-serif;
-  font-weight: bold;
-  background: #dee7ec;
-}
-
-font.tmenudisabled
-{
-  color: #93a5aa;
-  padding: 0px 8px 0px 8px;
-  margin: 0px 0px 2px 0px;
-  font-weight:bold;
-  font-size:12px;
-}
-
-/* Login */
-
-a.login
-{
-  position: absolute;
-  right: 24px;
-  top: 3px;
-
-  color: #234046;
-  padding: 0em 1em;
-  margin: 0px 0px 1px 0px;
-  font-weight:bold;
-  font-size:12px;
-}
-a.login:hover
-{
-  color:black;
-}
-
-img.login
-{
-  position: absolute;
-  right: 8px;
-  top: 3px;
-
-  text-decoration:none;
-  color:white;
-  font-weight:bold;
-}
-
-
-/* ============================================================================== */
-/* Barre de gauche                                                                */
-/* ============================================================================== */
-
-a.vmenu:link        { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: bold; }
-a.vmenu:visited     { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: bold; }
-a.vmenu:active      { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: bold; }
-a.vmenu:hover       { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: bold; }
-font.vmenudisabled  { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: bold; color: #93a5aa; }
-
-a.vsmenu:link       { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; color: #202020; margin: 1em 1em 1em 1em; }
-a.vsmenu:visited    { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; color: #202020; margin: 1em 1em 1em 1em; }
-a.vsmenu:active     { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; color: #202020; margin: 1em 1em 1em 1em; }
-a.vsmenu:hover      { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; color: #202020; margin: 1em 1em 1em 1em; }
-font.vsmenudisabled { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; color: #93a5aa; margin: 1em 1em 1em 1em; }
-
-a.help:link         { font-size:11px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; }
-a.help:visited      { font-size:11px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; }
-a.help:active       { font-size:11px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; }
-a.help:hover        { font-size:11px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; }
-
-div.blockvmenupair
-{
-    border-right: 1px solid #555555;
-    border-bottom: 1px solid #555555;
-	font: helvetica, verdana, arial, sans-serif;
-	color: #000000; 
-	text-align:left;
-	text-decoration: none;
-    padding: 3px;
-    margin: 1px 0px 0px 0px;
-	background: #A3BCC6;
-    background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/tmenu.jpg' ?>);
-    background-position:top;
-    background-repeat:repeat-x;
-}
-
-div.blockvmenuimpair
-{
-    border-right: 1px solid #555555;
-    border-bottom: 1px solid #555555;
-	font: helvetica, verdana, arial, sans-serif;
-	color: #000000; 
-	text-align:left;
-	text-decoration: none;
-    padding: 3px;
-    margin: 1px 0px 0px 0px;
-	background: #A3BCC6;
-    background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/tmenu.jpg' ?>);
-    background-position:top;
-    background-repeat:repeat-x;
-}
-
-div.help
-{
-	border-right: 1px solid #000000;
-	border-bottom: 1px solid #000000;
-	background: #f0f0f0;
-	font: helvetica, verdana, arial, sans-serif;
-	color: #000000; 
-	text-align:left;
-	text-decoration: none;
-    padding: 3px;
-    margin: 1px 0px 0px 0px;
-}
-
-
-td.barre { 
-	border-right: 1px solid #000000;
-	border-bottom: 1px solid #000000;
-	background: #b3c5cc;
-	font: helvetica, verdana, arial, sans-serif;
-	color: #000000; 
-	text-align:left;
-	text-decoration: none;
-}
-
-td.barre_select { 
-	background: #b3c5cc; 
-	color: #000000;
-}
-
-td.photo {
-	background: #F4F4F4; 
-	color: #000000;
-    border: 1px solid #b3c5cc;
-}
-
-form {
-    padding: 0em 0em 0em 0em;
-    margin: 0em 0em 0em 0em;
-}
-
-
-/* ============================================================================== */
-/* Barre recherche                                                                */
-/* ============================================================================== */
-
-div.formsearch
-{
-  display: block;
-  clear: right;
-  background: #d0d4d7;
-  top: 0px;
-  left: 130px;
-  padding: 4px; 
-  vertical-align: middle;
-  margin-bottom: 10px;
-}
-
-
-/* ============================================================================== */
-/* Onglets                                                                        */
-/* ============================================================================== */
-
-div.tabs {
-    top: 20px;
-    margin: 1px 0px 0px 0px;
-    padding: 0px 6px 0px 0px;
-    text-align: left;
-}
-
-div.tabBar {
-    color: #234046;
-    background: #dee7ec;
-    padding-top: 12px;
-    padding-left: 12px;
-    padding-right: 12px;
-    padding-bottom: 12px;
-    margin: 0px 0px 10px 0px;
-    -moz-border-radius-topleft:6px;
-    -moz-border-radius-topright:6px;
-    -moz-border-radius-bottomleft:6px;
-    -moz-border-radius-bottomright:6px;
-    border-right: 1px solid #555555;
-    border-bottom: 1px solid #555555;
-    border-left: 1px solid #D0D0D0;
-    border-top: 1px solid #D8D8D8;
-}
-
-div.tabsAction {
-    margin: 20px 0em 1px 0em;
-    padding: 0em 0em;
-    text-align: right;
-}
-
-div.onglet_inf
-{
-    position: relative;
-    float: top;
-    display: block;
-    white-space: nowrap;
-    padding: 0px 0px 0px 0px;
-    margin: -12px 0px 0px 10px;
-    font-weight:bold;
-    font-size: 12px;
-    height: 19px;
-    color: #000000; 
-    text-decoration: none;
-}
-
-a.onglet_inf {
-    background: white;
-    color: #436976;
-    padding: 0px 06px;
-    margin: 0em 0.2em;
-    text-decoration: none;
-    white-space: nowrap;
-    -moz-border-radius-bottomleft:6px;
-    -moz-border-radius-bottomright:6px;
-
-    border-right: 1px solid #555555;
-    border-left: 1px solid #D8D8D8;
-    border-bottom: 1px solid #555555;
-}
-
-a.tabTitle {
-    background: #436976;
-    color: white;
-    font-weight: normal;
-    padding: 0px 6px;
-    margin: 0px 6px;
-    text-decoration: none;
-    white-space: nowrap;
-    border-right: 1px solid #555555;
-    border-left: 1px solid #D8D8D8;
-    border-top: 1px solid #D8D8D8;
-}
-
-a.tab:link {
-    background: white;
-    color: #436976;
-    padding: 0px 6px;
-    margin: 0em 0.2em;
-    text-decoration: none;
-    white-space: nowrap;
-    -moz-border-radius-topleft:6px;
-    -moz-border-radius-topright:6px;
-
-    border-right: 1px solid #555555;
-    border-left: 1px solid #D8D8D8;
-    border-top: 1px solid #D8D8D8;
-}
-a.tab:visited {
-    background: white;
-    color: #436976;
-    padding: 0px 6px;
-    margin: 0em 0.2em;
-    text-decoration: none;
-    white-space: nowrap;
-    -moz-border-radius-topleft:6px;
-    -moz-border-radius-topright:6px;
-
-    border-right: 1px solid #555555;
-    border-left: 1px solid #D8D8D8;
-    border-top: 1px solid #D8D8D8;
-}
-a.tab#active {
-    background: #dee7ec;
-    border-bottom: #dee7ec 1px solid;
-    color: #436976;
-    padding: 0px 6px;
-    margin: 0em 0.2em;
-    text-decoration: none;
-    -moz-border-radius-topleft:6px;
-    -moz-border-radius-topright:6px;
-
-    border-right: 1px solid #555555;
-    border-left: 1px solid #D8D8D8;
-    border-top: 1px solid #D8D8D8;
-}
-a.tab:hover {
-    background: #dee7ec;
-    color: #436976;
-    padding: 0px 6px;
-    margin: 0em 0.2em;
-    text-decoration: none;
-    -moz-border-radius-topleft:6px;
-    -moz-border-radius-topright:6px;
-
-    border-right: 1px solid #555555;
-    border-left: 1px solid #D8D8D8;
-    border-top: 1px solid #D8D8D8;
-}
-
-a.tabimage {
-    color: #436976;
-    text-decoration: none;
-    white-space: nowrap;
-}
-
-
-/* ============================================================================== */
-/* Boutons actions                                                                */
-/* ============================================================================== */
-
-/* Nouvelle syntaxe � utiliser */
-
-a.butAction:link    { font: 12px helvetica, verdana, arial, sans-serif;
-                      font-weight: bold;
-                      background: white; 
-                      border: 1px solid #8CACBB; 
-                      color: #436976; 
-                      padding: 0em 0.7em; 
-                      margin: 0em 0.5em; 
-                      text-decoration: none; 
-                      white-space: nowrap; }
-
-a.butAction:visited { font: 12px helvetica, verdana, arial, sans-serif; 
-                      font-weight: bold;
-                      background: white; 
-                      border: 1px solid #8CACBB; 
-                      color: #436976; 
-                      padding: 0em 0.7em; 
-                      margin: 0em 0.5em; 
-                      text-decoration: none; 
-                      white-space: nowrap; }
-
-a.butAction:active  { font: 12px helvetica, verdana, arial, sans-serif; 
-                      font-weight: bold;
-                      background: white; 
-                      border: 1px solid #8CACBB; 
-                      color: #436976;
-                      padding: 0em 0.7em; 
-                      margin: 0em 0.5em; 
-                      text-decoration: none; 
-                      white-space: nowrap; }
-
-a.butAction:hover   { font: 12px helvetica, verdana, arial, sans-serif; 
-                      font-weight: bold;
-                      background: #dee7ec; 
-                      border: 1px solid #8CACBB; 
-                      color: #436976; 
-                      padding: 0em 0.7em; 
-                      margin: 0em 0.5em; 
-                      text-decoration: none; 
-                      white-space: nowrap; }
-
-a.butActionRefuse    { font: 12px helvetica, verdana, arial, sans-serif;
-                      font-weight: bold;
-                      background: white; 
-                      border: 1px solid red; 
-                      color: #436976; 
-                      padding: 0em 0.7em; 
-                      margin: 0em 0.5em; 
-                      text-decoration: none; 
-                      white-space: nowrap; }
-
-a.butActionRefuse:hover { font: 12px helvetica, verdana, arial, sans-serif;
-                          font-weight: bold;
-                          background: #dee7ec; }
-
-
-a.butActionDelete    { font: 12px helvetica, verdana, arial, sans-serif;
-                      font-weight: bold;
-                      background: white; 
-                      border: 1px solid red; 
-                      color: #436976; 
-                      padding: 0em 0.7em; 
-                      margin: 0em 0.5em; 
-                      text-decoration: none; 
-                      white-space: nowrap; }
-
-a.butActionDelete:link    { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-a.butActionDelete:active  { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-a.butActionDelete:visited { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-a.butActionDelete:hover   { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: #FFe7ec; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-
-
-/* Ancienne syntaxe. A supprimer quand remplace par butXxx */
-
-a.tabAction:link    { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #8CACBB; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-a.tabAction:visited { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #8CACBB; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-a.tabAction:active  { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #8CACBB; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-a.tabAction:hover   { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: #dee7ec; border: 1px solid #8CACBB; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-                             
-a.butDelete:link    { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-a.butDelete:active  { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-a.butDelete:visited { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-a.butDelete:hover   { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: #FFe7ec; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
-
-                      
-/* ============================================================================== */
-/* Tables                                                                         */
-/* ============================================================================== */
-
-.notopnoleft {
-border-collapse: collapse;
-border: 0px;
-padding-top: 0px;
-padding-left: 0px;
-padding-right: 4px;
-padding-bottom: 4px;
-margin: 0px 0px;
-}
-.notopnoleftnoright {
-border-collapse: collapse;
-border: 0px;
-padding-top: 0px;
-padding-left: 0px;
-padding-right: 0px;
-padding-bottom: 4px;
-margin: 0px 0px;
-}
-
-table.border {
-border: 1px solid #9CACBB;
-border-width: 1px;
-border-collapse: collapse;
-}
-
-table.border td {
-padding: 1px 2px;
-border: 1px solid #9CACBB;
-border-width: 1px;
-border-collapse: collapse;
-}
-
-table.noborder {
-border-collapse: collapse;
-border: 0px;
-}
-table.noborder td {
-border: 0px;
-padding: 1px 2px;
-}
-
-
-table.nobordernopadding {
-border-collapse: collapse;
-border: 0px;
-}
-table.nobordernopadding td {
-border: 0px;
-padding: 0px 0px;
-}
-
-table.liste {
-border-collapse: collapse;
-width: 100%;
-}
-
-tr.liste_titre { 
-background: #7699A9;
-background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>);
-color: #334444;
-font: helvetica, verdana, arial, sans-serif;
-font-weight: bold;
-border-bottom: 1px solid #FDFFFF;
-white-space: nowrap;
-}
-td.liste_titre { 
-background: #7699A9;
-background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>);
-color: #334444;
-font: helvetica, verdana, arial, sans-serif;
-font-weight: bold;
-border-bottom: 1px solid #FDFFFF;
-white-space: nowrap;
-}
-td.liste_titre_sel
-{ 
-background: #7699A9;
-background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>);
-color: #F5FFFF; 
-font: helvetica, verdana, arial, sans-serif;
-font-weight: bold; 
-border-bottom: 1px solid #FDFFFF;
-white-space: nowrap;
-}
-input.liste_titre { 
-background: #7699A9;
-background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>);
-border: 0px;
-}
-
-tr.liste_total td { 
-border-top: 1px solid #888888;
-background: #F4F4F4;
-font-weight: bold;
-white-space: nowrap;
-}
-
-th { 
-background: #7699A9;
-color: #334444;
-font: helvetica, verdana, arial, sans-serif;
-font-weight: bold;
-border-left: 1px solid #FFFFFF;
-border-right: 1px solid #FFFFFF;
-border-top: 1px solid #FFFFFF;
-border-bottom: 1px solid #FFFFFF;
-white-space: nowrap;
-}
-
-td.border { 
-border-top: 1px solid #000000;
-border-right: 1px solid #000000;
-border-bottom: 1px solid #000000;
-border-left: 1px solid #000000;
-}
-
-.pair	{ 
-background: #e6ebed; 
-font: helvetica, verdana, arial, sans-serif;
-border: 0px;
-}
-/*
-.pair:hover { 
-background: #c0c4c7;
-border: 0px;
-}
-*/
-
-.impair { 
-background: #d0d4d7;
-font: helvetica, verdana, arial, sans-serif;
-border: 0px;
-}
-/*
-.impair:hover { 
-background: #c0c4c7;
-border: 0px;
-}
-*/
-
-/*
- *  Boxes
- */
-tr.box_titre { 
-background: #7699A9;
-background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>);
-color: #334444;
-font: 12px arial, helvetica, verdana, sans-serif;
-font-weight: bold;
-border-bottom: 1px solid #FDFFFF;
-white-space: nowrap;
-}
-
-tr.box_impair { 
-background: #e6ebed;
-font: 12px arial, helvetica, verdana, sans-serif;
-}
-
-tr.box_pair { 
-background: #d0d4d7;
-font: 12px arial, helvetica, verdana, sans-serif;
-}
-
-tr.fiche { 
-font: helvetica, verdana, arial, sans-serif;
-}
-
-
-
-
-/*
- *   Ok, Warning, Error
- */
-.ok      { color: #114466; }
-.warning { color: #887711; }
-.error   { color: #550000; font-weight: bold; }
-
-div.ok {
-  color: #114466;
-}
-
-div.warning {
-  color: #997711;
-}
-
-div.error {
-  color: #550000; font-weight: bold; 
-  padding: 0.2em 0.2em 0.2em 0.2em;
-  margin: 0.5em 0em 0.5em 0em;
-  border: 1px solid #8C9CAB;
-}
-
-
-/*
- *   Liens Payes/Non payes
- */
-
-a.normal:link { font-weight: normal } 
-a.normal:visited { font-weight: normal }
-a.normal:active { font-weight: normal }
-a.normal:hover { font-weight: normal }
-
-a.impayee:link { font-weight: bold; color: #550000; }
-a.impayee:visited { font-weight: bold; color: #550000; }
-a.impayee:active { font-weight: bold; color: #550000; }
-a.impayee:hover { font-weight: bold; color: #550000; }
-
-
-
-
-/*
- *  Lignes titre espace
- */
-div.titre { 
-	font: helvetica, verdana, arial, sans-serif;
-	font-weight: bold; 
-	color: #336666; 
-	text-decoration: none }
-
-
-/* ============================================================================== */
- * Formulaire confirmation
-/* ============================================================================== */
-
-td.validtitle { 
-           font-weight: bold;
-           background: #EECC55;
-           }
-td.valid { 
-           background: #EECC55;
-           }
-
-
-td.small { 
-           font-size: 10px;
-           }
-
-tr.nonpayed { 
-           font-weight: bold;
-           }
-
-
-div.version { 
-background: #F4F4F4;
-text-align: right;
-font-size: 9px;
-margin: 1px 0em 0em 0em;
-padding: 2px;
-}
-
-
-/* ============================================================================== */
-/* Tooltips                                                                       */
-/* ============================================================================== */
-
-#dhtmltooltip
-{
-position: absolute;
-width: 200px;
-border: 1px solid #444444;
-padding: 2px;
-background-color: lightyellow;
-visibility: hidden;
-z-index: 100;
-}
-
-
-/* ============================================================================== */
-/* Calendar                                                                       */
-/* ============================================================================== */
-.bodyline { 
-	-moz-border-radius:8px;
-	border: 1px #E4ECEC outset; 
-	padding:0px;
-	margin-bottom:5px;
-}
-table.dp { 
-    width: 180px;
-    background-color: #FFFFFF;
-    border-top: solid 2px #DDDDDD;
-    border-left: solid 2px #DDDDDD;
-    border-right: solid 1px #222222;
-    border-bottom: solid 1px #222222;
-}
-.dp td, .tpHour td, .tpMinute td{padding:2px; font-size:10px;}
+<?php
+/* Copyright (C) 2004-2005 Laurent Destailleur  <eldy@users.sourceforge.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id$
+ * $Source$
+ */
+
+header('Content-type: text/css');
+
+require("../../conf/conf.php");
+
+?>
+
+/* ============================================================================== */
+/* Styles par d�faut                                                              */
+/* ============================================================================== */
+
+body {
+    background-color: #F4F4F4;
+	color: #101010;
+	font-size: 12px;
+    font-family: arial,tahoma,verdana,helvetica;
+    margin-top: 0;
+    margin-bottom: 0;
+    margin-right: 0;
+    margin-left: 0;
+}
+
+a:link    { font: verdana, arial, helvetica, sans-serif; font-weight: bold; color: #000000; text-decoration: none; }
+a:visited { font: verdana, arial, helvetica, sans-serif; font-weight: bold; color: #000000; text-decoration: none; }
+a:active  { font: verdana, arial, helvetica, sans-serif; font-weight: bold; color: #000000; text-decoration: none; }
+a:hover   { font: verdana, arial, helvetica, sans-serif; font-weight: bold; color: #000000; text-decoration: none; }
+input
+{ 
+    font: 12px helvetica, verdana, arial, sans-serif; 
+    background: #FDFDFD;
+    border: 1px solid #ACBCBB;
+    padding: 0px 0px 0px 0px;
+    margin: 0px 0px 0px 0px;
+}
+input.flat
+{ 
+    font: 12px helvetica, verdana, arial, sans-serif;
+    background: #FDFDFD;
+    border: 1px solid #ACBCBB;
+    padding: 0px 0px 0px 0px;
+    margin: 0px 0px 0px 0px;
+}
+textarea  {
+    font: 12px helvetica, verdana, arial, sans-serif;
+    background: #FDFDFD;
+    border: 1px solid #ACBCBB;
+    padding: 0px 0px 0px 0px;
+    margin: 0px 0px 0px 0px;
+}
+textarea.flat
+{ 
+    font: 12px helvetica, verdana, arial, sans-serif;
+    background: #FDFDFD;
+    border: 1px solid #ACBCBB;
+    padding: 0px 0px 0px 0px;
+    margin: 0px 0px 0px 0px;
+}
+select.flat
+{
+    font: 12px helvetica, verdana, arial, sans-serif;
+    border: 1px solid #ACBCBB;
+    padding: 0px 0px 0px 0px;
+    margin: 0px 0px 0px 0px;
+}
+
+.button  {
+    font: 12px helvetica, verdana, arial, sans-serif;
+	font-size: 100%;
+	border: 0px;
+	background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/button_bg.png' ?>);
+	background-position : bottom;
+    padding: 0px 0px 0px 0px;
+    margin: 0px 0px 0px 0px;
+}
+
+
+/* ============================================================================== */
+/* Styles de positionnement des zones                                             */
+/* ============================================================================== */
+
+div.vmenuplusfiche
+{
+    top: auto;
+    left: auto;
+    position: static;
+    float: left; 
+    display: block;
+    margin-right: 6px;
+    margin-left: 1px;
+}
+
+div.vmenu
+{
+    top: auto;
+    left: auto;
+    position: relative;
+    float: top;
+    display: block;
+    margin-right: 2px;
+    padding: 0px;
+    padding-bottom: 0px;
+    width: 160px;
+}
+
+div.fiche
+{
+    top: 28px;
+    left: auto;
+    position: absolute;
+    float: top;
+    display: block;
+    margin-right: 6px;
+    margin-top: 0px;
+}
+
+
+/* ============================================================================== */
+/* Menu superieur et 1ere ligne tableau                                           */
+/* ============================================================================== */
+
+div.tmenu
+{
+    position: relative;
+    float: top;
+    display: block;
+    white-space: nowrap;
+    border-top: 1px solid #D3E5EC;
+    border-left: 0px;
+    border-right: 0px solid #555555;
+    border-bottom: 1px solid #8B9999;
+    padding: 0px 0px 0px 0px;
+    margin: 0px 0px 2px 0px;
+    font-weight: bold;
+    font-size: 12px;
+    height: 19px;
+    background: #b3c5cc; 
+    background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/tmenu.jpg' ?>);
+    color: #000000; 
+    text-decoration: none;
+}
+
+table.tmenu
+{
+    padding: 0px 0px 10px 0px;
+    margin: 0px 0px 0px 10px;
+}
+
+a.tmenu:link
+{
+  color: #234046;
+  padding: 0px 8px 0px 8px;
+  margin: 0px 1px 2px 1px;
+  font: 12px helvetica, verdana, arial, sans-serif;
+  font-weight: bold;
+}
+a.tmenu:visited
+{
+  color: #234046;
+  padding: 0px 8px 0px 8px;
+  margin: 0px 1px 2px 1px;
+  border: 0px solid #b3c5cc;
+  font: 12px helvetica, verdana, arial, sans-serif;
+  font-weight: bold;
+}
+a.tmenu#sel
+{ 
+  color: #234046;
+  padding: 0px 8px 0px 8px;
+  margin: 0px 0px 2px 0px;
+  font: 12px helvetica, verdana, arial, sans-serif;
+  font-weight: bold;
+  background: #dee7ec;
+  background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/tmenu_inverse.jpg' ?>);
+  border-right: 1px solid #555555;
+  border-top: 1px solid #D8D8D8;
+  border-left: 1px solid #D8D8D8;
+}
+a.tmenu:hover
+{
+  color: #234046;
+  padding: 0px 8px 0px 8px;
+  margin: 0px 1px 2px 1px;
+  text-decoration: none;
+  font: 12px helvetica, verdana, arial, sans-serif;
+  font-weight: bold;
+  background: #dee7ec;
+}
+
+font.tmenudisabled
+{
+  color: #93a5aa;
+  padding: 0px 8px 0px 8px;
+  margin: 0px 0px 2px 0px;
+  font-weight:bold;
+  font-size:12px;
+}
+
+/* Login */
+
+a.login
+{
+  position: absolute;
+  right: 24px;
+  top: 3px;
+
+  color: #234046;
+  padding: 0em 1em;
+  margin: 0px 0px 1px 0px;
+  font-weight:bold;
+  font-size:12px;
+}
+a.login:hover
+{
+  color:black;
+}
+
+img.login
+{
+  position: absolute;
+  right: 8px;
+  top: 3px;
+
+  text-decoration:none;
+  color:white;
+  font-weight:bold;
+}
+
+
+/* ============================================================================== */
+/* Barre de gauche                                                                */
+/* ============================================================================== */
+
+a.vmenu:link        { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: bold; }
+a.vmenu:visited     { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: bold; }
+a.vmenu:active      { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: bold; }
+a.vmenu:hover       { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: bold; }
+font.vmenudisabled  { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: bold; color: #93a5aa; }
+
+a.vsmenu:link       { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; color: #202020; margin: 1em 1em 1em 1em; }
+a.vsmenu:visited    { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; color: #202020; margin: 1em 1em 1em 1em; }
+a.vsmenu:active     { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; color: #202020; margin: 1em 1em 1em 1em; }
+a.vsmenu:hover      { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; color: #202020; margin: 1em 1em 1em 1em; }
+font.vsmenudisabled { font-size:12px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; color: #93a5aa; margin: 1em 1em 1em 1em; }
+
+a.help:link         { font-size:11px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; }
+a.help:visited      { font-size:11px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; }
+a.help:active       { font-size:11px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; }
+a.help:hover        { font-size:11px; font: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; }
+
+div.blockvmenupair
+{
+    border-right: 1px solid #555555;
+    border-bottom: 1px solid #555555;
+	font: helvetica, verdana, arial, sans-serif;
+	color: #000000; 
+	text-align:left;
+	text-decoration: none;
+    padding: 3px;
+    margin: 1px 0px 0px 0px;
+	background: #A3BCC6;
+    background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/tmenu.jpg' ?>);
+    background-position:top;
+    background-repeat:repeat-x;
+}
+
+div.blockvmenuimpair
+{
+    border-right: 1px solid #555555;
+    border-bottom: 1px solid #555555;
+	font: helvetica, verdana, arial, sans-serif;
+	color: #000000; 
+	text-align:left;
+	text-decoration: none;
+    padding: 3px;
+    margin: 1px 0px 0px 0px;
+	background: #A3BCC6;
+    background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/tmenu.jpg' ?>);
+    background-position:top;
+    background-repeat:repeat-x;
+}
+
+div.help
+{
+	border-right: 1px solid #000000;
+	border-bottom: 1px solid #000000;
+	background: #f0f0f0;
+	font: helvetica, verdana, arial, sans-serif;
+	color: #000000; 
+	text-align:left;
+	text-decoration: none;
+    padding: 3px;
+    margin: 1px 0px 0px 0px;
+}
+
+
+td.barre { 
+	border-right: 1px solid #000000;
+	border-bottom: 1px solid #000000;
+	background: #b3c5cc;
+	font: helvetica, verdana, arial, sans-serif;
+	color: #000000; 
+	text-align:left;
+	text-decoration: none;
+}
+
+td.barre_select { 
+	background: #b3c5cc; 
+	color: #000000;
+}
+
+td.photo {
+	background: #F4F4F4; 
+	color: #000000;
+    border: 1px solid #b3c5cc;
+}
+
+form {
+    padding: 0em 0em 0em 0em;
+    margin: 0em 0em 0em 0em;
+}
+
+
+/* ============================================================================== */
+/* Barre recherche                                                                */
+/* ============================================================================== */
+
+div.formsearch
+{
+  display: block;
+  clear: right;
+  background: #d0d4d7;
+  top: 0px;
+  left: 130px;
+  padding: 4px; 
+  vertical-align: middle;
+  margin-bottom: 10px;
+}
+
+
+/* ============================================================================== */
+/* Onglets                                                                        */
+/* ============================================================================== */
+
+div.tabs {
+    top: 20px;
+    margin: 1px 0px 0px 0px;
+    padding: 0px 6px 0px 0px;
+    text-align: left;
+}
+
+div.tabBar {
+    color: #234046;
+    background: #dee7ec;
+    padding-top: 12px;
+    padding-left: 12px;
+    padding-right: 12px;
+    padding-bottom: 12px;
+    margin: 0px 0px 10px 0px;
+    -moz-border-radius-topleft:6px;
+    -moz-border-radius-topright:6px;
+    -moz-border-radius-bottomleft:6px;
+    -moz-border-radius-bottomright:6px;
+    border-right: 1px solid #555555;
+    border-bottom: 1px solid #555555;
+    border-left: 1px solid #D0D0D0;
+    border-top: 1px solid #D8D8D8;
+}
+
+div.tabsAction {
+    margin: 20px 0em 1px 0em;
+    padding: 0em 0em;
+    text-align: right;
+}
+
+div.onglet_inf
+{
+    position: relative;
+    float: top;
+    display: block;
+    white-space: nowrap;
+    padding: 0px 0px 0px 0px;
+    margin: -12px 0px 0px 10px;
+    font-weight:bold;
+    font-size: 12px;
+    height: 19px;
+    color: #000000; 
+    text-decoration: none;
+}
+
+a.onglet_inf {
+    background: white;
+    color: #436976;
+    padding: 0px 06px;
+    margin: 0em 0.2em;
+    text-decoration: none;
+    white-space: nowrap;
+    -moz-border-radius-bottomleft:6px;
+    -moz-border-radius-bottomright:6px;
+
+    border-right: 1px solid #555555;
+    border-left: 1px solid #D8D8D8;
+    border-bottom: 1px solid #555555;
+}
+
+a.tabTitle {
+    background: #436976;
+    color: white;
+    font-weight: normal;
+    padding: 0px 6px;
+    margin: 0px 6px;
+    text-decoration: none;
+    white-space: nowrap;
+    border-right: 1px solid #555555;
+    border-left: 1px solid #D8D8D8;
+    border-top: 1px solid #D8D8D8;
+}
+
+a.tab:link {
+    background: white;
+    color: #436976;
+    padding: 0px 6px;
+    margin: 0em 0.2em;
+    text-decoration: none;
+    white-space: nowrap;
+    -moz-border-radius-topleft:6px;
+    -moz-border-radius-topright:6px;
+
+    border-right: 1px solid #555555;
+    border-left: 1px solid #D8D8D8;
+    border-top: 1px solid #D8D8D8;
+}
+a.tab:visited {
+    background: white;
+    color: #436976;
+    padding: 0px 6px;
+    margin: 0em 0.2em;
+    text-decoration: none;
+    white-space: nowrap;
+    -moz-border-radius-topleft:6px;
+    -moz-border-radius-topright:6px;
+
+    border-right: 1px solid #555555;
+    border-left: 1px solid #D8D8D8;
+    border-top: 1px solid #D8D8D8;
+}
+a.tab#active {
+    background: #dee7ec;
+    border-bottom: #dee7ec 1px solid;
+    color: #436976;
+    padding: 0px 6px;
+    margin: 0em 0.2em;
+    text-decoration: none;
+    -moz-border-radius-topleft:6px;
+    -moz-border-radius-topright:6px;
+
+    border-right: 1px solid #555555;
+    border-left: 1px solid #D8D8D8;
+    border-top: 1px solid #D8D8D8;
+}
+a.tab:hover {
+    background: #dee7ec;
+    color: #436976;
+    padding: 0px 6px;
+    margin: 0em 0.2em;
+    text-decoration: none;
+    -moz-border-radius-topleft:6px;
+    -moz-border-radius-topright:6px;
+
+    border-right: 1px solid #555555;
+    border-left: 1px solid #D8D8D8;
+    border-top: 1px solid #D8D8D8;
+}
+
+a.tabimage {
+    color: #436976;
+    text-decoration: none;
+    white-space: nowrap;
+}
+
+
+/* ============================================================================== */
+/* Boutons actions                                                                */
+/* ============================================================================== */
+
+/* Nouvelle syntaxe � utiliser */
+
+a.butAction:link    { font: 12px helvetica, verdana, arial, sans-serif;
+                      font-weight: bold;
+                      background: white; 
+                      border: 1px solid #8CACBB; 
+                      color: #436976; 
+                      padding: 0em 0.7em; 
+                      margin: 0em 0.5em; 
+                      text-decoration: none; 
+                      white-space: nowrap; }
+
+a.butAction:visited { font: 12px helvetica, verdana, arial, sans-serif; 
+                      font-weight: bold;
+                      background: white; 
+                      border: 1px solid #8CACBB; 
+                      color: #436976; 
+                      padding: 0em 0.7em; 
+                      margin: 0em 0.5em; 
+                      text-decoration: none; 
+                      white-space: nowrap; }
+
+a.butAction:active  { font: 12px helvetica, verdana, arial, sans-serif; 
+                      font-weight: bold;
+                      background: white; 
+                      border: 1px solid #8CACBB; 
+                      color: #436976;
+                      padding: 0em 0.7em; 
+                      margin: 0em 0.5em; 
+                      text-decoration: none; 
+                      white-space: nowrap; }
+
+a.butAction:hover   { font: 12px helvetica, verdana, arial, sans-serif; 
+                      font-weight: bold;
+                      background: #dee7ec; 
+                      border: 1px solid #8CACBB; 
+                      color: #436976; 
+                      padding: 0em 0.7em; 
+                      margin: 0em 0.5em; 
+                      text-decoration: none; 
+                      white-space: nowrap; }
+
+a.butActionRefuse    { font: 12px helvetica, verdana, arial, sans-serif;
+                      font-weight: bold;
+                      background: white; 
+                      border: 1px solid red; 
+                      color: #436976; 
+                      padding: 0em 0.7em; 
+                      margin: 0em 0.5em; 
+                      text-decoration: none; 
+                      white-space: nowrap; }
+
+a.butActionRefuse:hover { font: 12px helvetica, verdana, arial, sans-serif;
+                          font-weight: bold;
+                          background: #dee7ec; }
+
+
+a.butActionDelete    { font: 12px helvetica, verdana, arial, sans-serif;
+                      font-weight: bold;
+                      background: white; 
+                      border: 1px solid red; 
+                      color: #436976; 
+                      padding: 0em 0.7em; 
+                      margin: 0em 0.5em; 
+                      text-decoration: none; 
+                      white-space: nowrap; }
+
+a.butActionDelete:link    { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+a.butActionDelete:active  { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+a.butActionDelete:visited { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+a.butActionDelete:hover   { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: #FFe7ec; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+
+
+/* Ancienne syntaxe. A supprimer quand remplace par butXxx */
+
+a.tabAction:link    { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #8CACBB; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+a.tabAction:visited { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #8CACBB; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+a.tabAction:active  { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #8CACBB; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+a.tabAction:hover   { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: #dee7ec; border: 1px solid #8CACBB; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+                             
+a.butDelete:link    { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+a.butDelete:active  { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+a.butDelete:visited { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+a.butDelete:hover   { font: 12px helvetica, verdana, arial, sans-serif; font-weight: bold; background: #FFe7ec; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; }
+
+                      
+/* ============================================================================== */
+/* Tables                                                                         */
+/* ============================================================================== */
+
+.notopnoleft {
+border-collapse: collapse;
+border: 0px;
+padding-top: 0px;
+padding-left: 0px;
+padding-right: 4px;
+padding-bottom: 4px;
+margin: 0px 0px;
+}
+.notopnoleftnoright {
+border-collapse: collapse;
+border: 0px;
+padding-top: 0px;
+padding-left: 0px;
+padding-right: 0px;
+padding-bottom: 4px;
+margin: 0px 0px;
+}
+
+table.border {
+border: 1px solid #9CACBB;
+border-width: 1px;
+border-collapse: collapse;
+}
+
+table.border td {
+padding: 1px 2px;
+border: 1px solid #9CACBB;
+border-width: 1px;
+border-collapse: collapse;
+}
+
+table.noborder {
+border-collapse: collapse;
+border: 0px;
+}
+table.noborder td {
+border: 0px;
+padding: 1px 2px;
+}
+
+
+table.nobordernopadding {
+border-collapse: collapse;
+border: 0px;
+}
+table.nobordernopadding td {
+border: 0px;
+padding: 0px 0px;
+}
+
+table.liste {
+border-collapse: collapse;
+width: 100%;
+}
+
+tr.liste_titre { 
+background: #7699A9;
+background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>);
+color: #334444;
+font: helvetica, verdana, arial, sans-serif;
+font-weight: bold;
+border-bottom: 1px solid #FDFFFF;
+white-space: nowrap;
+}
+td.liste_titre { 
+background: #7699A9;
+background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>);
+color: #334444;
+font: helvetica, verdana, arial, sans-serif;
+font-weight: bold;
+border-bottom: 1px solid #FDFFFF;
+white-space: nowrap;
+}
+td.liste_titre_sel
+{ 
+background: #7699A9;
+background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>);
+color: #F5FFFF; 
+font: helvetica, verdana, arial, sans-serif;
+font-weight: bold; 
+border-bottom: 1px solid #FDFFFF;
+white-space: nowrap;
+}
+input.liste_titre { 
+background: #7699A9;
+background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>);
+border: 0px;
+}
+
+tr.liste_total td { 
+border-top: 1px solid #888888;
+background: #F4F4F4;
+font-weight: bold;
+white-space: nowrap;
+}
+
+th { 
+background: #7699A9;
+color: #334444;
+font: helvetica, verdana, arial, sans-serif;
+font-weight: bold;
+border-left: 1px solid #FFFFFF;
+border-right: 1px solid #FFFFFF;
+border-top: 1px solid #FFFFFF;
+border-bottom: 1px solid #FFFFFF;
+white-space: nowrap;
+}
+
+td.border { 
+border-top: 1px solid #000000;
+border-right: 1px solid #000000;
+border-bottom: 1px solid #000000;
+border-left: 1px solid #000000;
+}
+
+.pair	{ 
+background: #e6ebed; 
+font: helvetica, verdana, arial, sans-serif;
+border: 0px;
+}
+/*
+.pair:hover { 
+background: #c0c4c7;
+border: 0px;
+}
+*/
+
+.impair { 
+background: #d0d4d7;
+font: helvetica, verdana, arial, sans-serif;
+border: 0px;
+}
+/*
+.impair:hover { 
+background: #c0c4c7;
+border: 0px;
+}
+*/
+
+/*
+ *  Boxes
+ */
+tr.box_titre { 
+background: #7699A9;
+background-image : url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>);
+color: #334444;
+font: 12px arial, helvetica, verdana, sans-serif;
+font-weight: bold;
+border-bottom: 1px solid #FDFFFF;
+white-space: nowrap;
+}
+
+tr.box_impair { 
+background: #e6ebed;
+font: 12px arial, helvetica, verdana, sans-serif;
+}
+
+tr.box_pair { 
+background: #d0d4d7;
+font: 12px arial, helvetica, verdana, sans-serif;
+}
+
+tr.fiche { 
+font: helvetica, verdana, arial, sans-serif;
+}
+
+
+
+
+/*
+ *   Ok, Warning, Error
+ */
+.ok      { color: #114466; }
+.warning { color: #887711; }
+.error   { color: #550000; font-weight: bold; }
+
+div.ok {
+  color: #114466;
+}
+
+div.warning {
+  color: #997711;
+}
+
+div.error {
+  color: #550000; font-weight: bold; 
+  padding: 0.2em 0.2em 0.2em 0.2em;
+  margin: 0.5em 0em 0.5em 0em;
+  border: 1px solid #8C9CAB;
+}
+
+
+/*
+ *   Liens Payes/Non payes
+ */
+
+a.normal:link { font-weight: normal } 
+a.normal:visited { font-weight: normal }
+a.normal:active { font-weight: normal }
+a.normal:hover { font-weight: normal }
+
+a.impayee:link { font-weight: bold; color: #550000; }
+a.impayee:visited { font-weight: bold; color: #550000; }
+a.impayee:active { font-weight: bold; color: #550000; }
+a.impayee:hover { font-weight: bold; color: #550000; }
+
+
+
+
+/*
+ *  Lignes titre espace
+ */
+div.titre { 
+	font: helvetica, verdana, arial, sans-serif;
+	font-weight: bold; 
+	color: #336666; 
+	text-decoration: none }
+
+
+/* ============================================================================== */
+ * Formulaire confirmation
+/* ============================================================================== */
+
+td.validtitle { 
+           font-weight: bold;
+           background: #EECC55;
+           }
+td.valid { 
+           background: #EECC55;
+           }
+
+
+td.small { 
+           font-size: 10px;
+           }
+
+tr.nonpayed { 
+           font-weight: bold;
+           }
+
+
+div.version { 
+background: #F4F4F4;
+text-align: right;
+font-size: 9px;
+margin: 1px 0em 0em 0em;
+padding: 2px;
+}
+
+
+/* ============================================================================== */
+/* Tooltips                                                                       */
+/* ============================================================================== */
+
+#dhtmltooltip
+{
+position: absolute;
+width: 200px;
+border: 1px solid #444444;
+padding: 2px;
+background-color: lightyellow;
+visibility: hidden;
+z-index: 100;
+}
+
+
+/* ============================================================================== */
+/* Calendar                                                                       */
+/* ============================================================================== */
+.bodyline { 
+	-moz-border-radius:8px;
+	border: 1px #E4ECEC outset; 
+	padding:0px;
+	margin-bottom:5px;
+}
+table.dp { 
+    width: 180px;
+    background-color: #FFFFFF;
+    border-top: solid 2px #DDDDDD;
+    border-left: solid 2px #DDDDDD;
+    border-right: solid 1px #222222;
+    border-bottom: solid 1px #222222;
+}
+.dp td, .tpHour td, .tpMinute td{padding:2px; font-size:10px;}
 /* Barre titre */
-.dpHead,.tpHead,.tpHour td:Hover .tpHead{ 
-	font-weight:bold;
-	background-color:#b3c5cc;
-	color:white; 
-	font-size:11px;
-	cursor:auto;
-}
-/* Barre navigation */
-.dpButtons,.tpButtons {
-	text-align:center;
-	background-color:#617389;
-	color:#FFFFFF;
-	font-weight:bold; 
-	border: 1px outset black;
-	cursor:pointer;	
-}
-.dpButtons:Active,.tpButtons:Active{border: 1px outset black;}
-.dpDayNames td,.dpExplanation {background-color:#D9DBE1; font-weight:bold; text-align:center; font-size:11px;}
-.dpExplanation{ font-weight:normal; font-size:11px;}
-.dpWeek td{text-align:center}
-
-.dpToday,.dpReg,.dpSelected{
-	cursor:pointer;
-}
-.dpToday{font-weight:bold; color:black; background-color:#DDDDDD;}
-.dpReg:Hover,.dpToday:Hover{background-color:black;color:white}
-
+.dpHead,.tpHead,.tpHour td:Hover .tpHead{ 
+	font-weight:bold;
+	background-color:#b3c5cc;
+	color:white; 
+	font-size:11px;
+	cursor:auto;
+}
+/* Barre navigation */
+.dpButtons,.tpButtons {
+	text-align:center;
+	background-color:#617389;
+	color:#FFFFFF;
+	font-weight:bold; 
+	border: 1px outset black;
+	cursor:pointer;	
+}
+.dpButtons:Active,.tpButtons:Active{border: 1px outset black;}
+.dpDayNames td,.dpExplanation {background-color:#D9DBE1; font-weight:bold; text-align:center; font-size:11px;}
+.dpExplanation{ font-weight:normal; font-size:11px;}
+.dpWeek td{text-align:center}
+
+.dpToday,.dpReg,.dpSelected{
+	cursor:pointer;
+}
+.dpToday{font-weight:bold; color:black; background-color:#DDDDDD;}
+.dpReg:Hover,.dpToday:Hover{background-color:black;color:white}
+
 /* Jour courant */
-.dpSelected{background-color:#0B63A2;color:white;font-weight:bold; }
-
-.tpHour{border-top:1px solid #DDDDDD; border-right:1px solid #DDDDDD;}
-.tpHour td {border-left:1px solid #DDDDDD; border-bottom:1px solid #DDDDDD; cursor:pointer;}
-.tpHour td:Hover {background-color:black;color:white;}
-
-.tpMinute {margin-top:5px;}
-.tpMinute td:Hover {background-color:black; color:white; }
-.tpMinute td {background-color:#D9DBE1; text-align:center; cursor:pointer;}
-
-/* Bouton X fermer */	
-.dpInvisibleButtons
-{
-border-style:none;
-background-color:transparent;
-padding:0px;
-font-size:9px;
-border-width:0px;
-color:#0B63A2;
-vertical-align:middle;
-cursor: pointer; 
-}
-
-
-
-/* ============================================================================== */
-/*  Autre (telephonie)                                                            */
-/* ============================================================================== */
-
-#corpForm fieldset {	/*** Mise en forme des cadres ***/
-	margin: 0;
-	font-style: normal;
-	padding: 0 1em 1em;
-	font-size: 12px;
-}
-
-#corpForm .focus {	/*** Mise en avant des champs en cours d'utilisation ***/
-	background: beige;
-	color: black;
-}
-#corpForm .normal {	/*** Retour � l'�tat normal apr�s l'utilisation ***/
-	background: white;
-	color: black;
-}
+.dpSelected{background-color:#0B63A2;color:white;font-weight:bold; }
+
+.tpHour{border-top:1px solid #DDDDDD; border-right:1px solid #DDDDDD;}
+.tpHour td {border-left:1px solid #DDDDDD; border-bottom:1px solid #DDDDDD; cursor:pointer;}
+.tpHour td:Hover {background-color:black;color:white;}
+
+.tpMinute {margin-top:5px;}
+.tpMinute td:Hover {background-color:black; color:white; }
+.tpMinute td {background-color:#D9DBE1; text-align:center; cursor:pointer;}
+
+/* Bouton X fermer */	
+.dpInvisibleButtons
+{
+border-style:none;
+background-color:transparent;
+padding:0px;
+font-size:9px;
+border-width:0px;
+color:#0B63A2;
+vertical-align:middle;
+cursor: pointer; 
+}
+
+
+
+/* ============================================================================== */
+/*  Autre (telephonie)                                                            */
+/* ============================================================================== */
+
+#corpForm fieldset {	/*** Mise en forme des cadres ***/
+	margin: 0;
+	font-style: normal;
+	padding: 0 1em 1em;
+	font-size: 12px;
+}
+
+#corpForm .focus {	/*** Mise en avant des champs en cours d'utilisation ***/
+	background: beige;
+	color: black;
+}
+#corpForm .normal {	/*** Retour � l'�tat normal apr�s l'utilisation ***/
+	background: white;
+	color: black;
+}
+
+/* ============================================================================== */
+/*  Afficher/cacher                                                               */
+/* ============================================================================== */
+
+div.visible {
+    display: block;
+}
+
+div.hidden {
+    display: none;
+}
+
+tr.visible {
+    display: block;
+}
+
+td.hidden {
+    display: none;
+}
\ No newline at end of file