Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
D
dolibarr
Manage
Activity
Members
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Releases
Container Registry
Model registry
Analyze
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Software_Artifact_Infrastructure_Repository
dolibarr
Commits
3a26aee4
Commit
3a26aee4
authored
18 years ago
by
Regis Houssin
Browse files
Options
Downloads
Patches
Plain Diff
début ajout gestion des particuliers
parent
3da4e656
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
htdocs/html.form.class.php
+11
-2
11 additions, 2 deletions
htdocs/html.form.class.php
htdocs/lib/lib_head.js
+716
-671
716 additions, 671 deletions
htdocs/lib/lib_head.js
htdocs/theme/eldy/eldy.css.php
+970
-950
970 additions, 950 deletions
htdocs/theme/eldy/eldy.css.php
with
1697 additions
and
1623 deletions
htdocs/html.form.class.php
+
11
−
2
View file @
3a26aee4
...
...
@@ -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"> </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
)
{
...
...
This diff is collapsed.
Click to expand it.
htdocs/lib/lib_head.js
+
716
−
671
View file @
3a26aee4
// 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
;
}
This diff is collapsed.
Click to expand it.
htdocs/theme/eldy/eldy.css.php
+
970
−
950
View file @
3a26aee4
<?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 dfaut */
/* ============================================================================== */
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 dfaut */
/* ============================================================================== */
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 aprs 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 aprs 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
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment