atd-calendar_date_select 1.11.20090108
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +231 -0
- data/MIT-LICENSE +20 -0
- data/Manifest.txt +42 -0
- data/Rakefile +31 -0
- data/Readme.txt +16 -0
- data/init.rb +1 -0
- data/js_test/functional/cds_test.html +334 -0
- data/js_test/prototype.js +4184 -0
- data/js_test/test.css +40 -0
- data/js_test/unit/cds_helper_methods.html +46 -0
- data/js_test/unittest.js +564 -0
- data/lib/calendar_date_select.rb +33 -0
- data/lib/calendar_date_select/calendar_date_select.rb +116 -0
- data/lib/calendar_date_select/includes_helper.rb +29 -0
- data/public/blank_iframe.html +2 -0
- data/public/images/calendar_date_select/calendar.gif +0 -0
- data/public/javascripts/calendar_date_select/calendar_date_select.js +443 -0
- data/public/javascripts/calendar_date_select/format_american.js +34 -0
- data/public/javascripts/calendar_date_select/format_db.js +27 -0
- data/public/javascripts/calendar_date_select/format_euro_24hr.js +7 -0
- data/public/javascripts/calendar_date_select/format_euro_24hr_ymd.js +7 -0
- data/public/javascripts/calendar_date_select/format_finnish.js +32 -0
- data/public/javascripts/calendar_date_select/format_hyphen_ampm.js +36 -0
- data/public/javascripts/calendar_date_select/format_iso_date.js +46 -0
- data/public/javascripts/calendar_date_select/format_italian.js +24 -0
- data/public/javascripts/calendar_date_select/locale/de.js +11 -0
- data/public/javascripts/calendar_date_select/locale/fi.js +10 -0
- data/public/javascripts/calendar_date_select/locale/fr.js +10 -0
- data/public/javascripts/calendar_date_select/locale/pl.js +10 -0
- data/public/javascripts/calendar_date_select/locale/pt.js +11 -0
- data/public/javascripts/calendar_date_select/locale/ru.js +10 -0
- data/public/stylesheets/calendar_date_select/blue.css +130 -0
- data/public/stylesheets/calendar_date_select/default.css +135 -0
- data/public/stylesheets/calendar_date_select/plain.css +128 -0
- data/public/stylesheets/calendar_date_select/red.css +135 -0
- data/public/stylesheets/calendar_date_select/silver.css +133 -0
- metadata +103 -0
@@ -0,0 +1,34 @@
|
|
1
|
+
// American Format: 12/31/2000 5:00 pm
|
2
|
+
// Thanks, Wes Hays
|
3
|
+
Date.prototype.toFormattedString = function(include_time){
|
4
|
+
str = Date.padded2(this.getMonth() + 1) + '/' +Date.padded2(this.getDate()) + '/' + this.getFullYear();
|
5
|
+
|
6
|
+
if (include_time) { hour=this.getHours(); str += " " + this.getAMPMHour() + ":" + this.getPaddedMinutes() + " " + this.getAMPM() }
|
7
|
+
return str;
|
8
|
+
}
|
9
|
+
|
10
|
+
Date.parseFormattedString = function (string) {
|
11
|
+
// Test these with and without the time
|
12
|
+
// 11/11/1111 12pm
|
13
|
+
// 11/11/1111 1pm
|
14
|
+
// 1/11/1111 10:10pm
|
15
|
+
// 11/1/1111 01pm
|
16
|
+
// 1/1/1111 01:11pm
|
17
|
+
// 1/1/1111 1:11pm
|
18
|
+
var regexp = "(([0-1]?[0-9])\/[0-3]?[0-9]\/[0-9]{4}) *([0-9]{1,2}(:[0-9]{2})? *(am|pm))?";
|
19
|
+
var d = string.match(new RegExp(regexp, "i"));
|
20
|
+
if (d==null) {
|
21
|
+
return Date.parse(string); // Give javascript a chance to parse it.
|
22
|
+
}
|
23
|
+
|
24
|
+
mdy = d[1].split('/');
|
25
|
+
hrs = 0;
|
26
|
+
mts = 0;
|
27
|
+
if(d[3] != null) {
|
28
|
+
hrs = parseInt(d[3].split('')[0], 10);
|
29
|
+
if(d[5].toLowerCase() == 'pm') { hrs += 12; } // Add 12 more to hrs
|
30
|
+
mts = d[4].split(':')[1];
|
31
|
+
}
|
32
|
+
|
33
|
+
return new Date(mdy[2], parseInt(mdy[0], 10)-1, mdy[1], hrs, mts, 0);
|
34
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
// DB No Seconds Format: 2007-12-05 12:00
|
2
|
+
|
3
|
+
Date.padded2 = function(hour) { padded2 = hour.toString(); if ((parseInt(hour) < 10) || (parseInt(hour) == null)) padded2="0" + padded2; return padded2; }
|
4
|
+
Date.prototype.getAMPMHour = function() { hour=Date.padded2(this.getHours()); return (hour == null) ? 00 : (hour > 24 ? hour - 24 : hour ) }
|
5
|
+
Date.prototype.getAMPM = function() { return (this.getHours() < 12) ? "" : ""; }
|
6
|
+
|
7
|
+
Date.prototype.toFormattedString = function(include_time){
|
8
|
+
str = this.getFullYear() + "-" + (this.getMonth() + 1) + "-" + Date.padded2(this.getDate());
|
9
|
+
if (include_time) { hour=this.getHours(); str += " " + this.getAMPMHour() + ":" + this.getPaddedMinutes() }
|
10
|
+
return str;
|
11
|
+
}
|
12
|
+
|
13
|
+
Date.parseFormattedString = function (string) {
|
14
|
+
var regexp = '([0-9]{4})-(([0-9]{1,2})-(([0-9]{1,2})( ([0-9]{1,2}):([0-9]{2})? *)?)?)?';
|
15
|
+
var d = string.match(new RegExp(regexp, "i"));
|
16
|
+
if (d==null) return Date.parse(string); // at least give javascript a crack at it.
|
17
|
+
var offset = 0;
|
18
|
+
var date = new Date(d[1], 0, 1);
|
19
|
+
if (d[3]) { date.setMonth(d[3] - 1); }
|
20
|
+
if (d[5]) { date.setDate(d[5]); }
|
21
|
+
if (d[7]) {
|
22
|
+
date.setHours(parseInt(d[7], 10));
|
23
|
+
}
|
24
|
+
if (d[8]) { date.setMinutes(d[8]); }
|
25
|
+
if (d[10]) { date.setSeconds(d[10]); }
|
26
|
+
return date;
|
27
|
+
}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
// Formats date and time as "01 January 2000 17:00"
|
2
|
+
Date.prototype.toFormattedString = function(include_time)
|
3
|
+
{
|
4
|
+
str = Date.padded2(this.getDate()) + " " + Date.months[this.getMonth()] + " " + this.getFullYear();
|
5
|
+
if (include_time) { str += " " + this.getHours() + ":" + this.getPaddedMinutes() }
|
6
|
+
return str;
|
7
|
+
}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
// Formats date and time as "2000.01.20 17:00"
|
2
|
+
Date.prototype.toFormattedString = function(include_time)
|
3
|
+
{
|
4
|
+
str = this.getFullYear() + "." + Date.padded2(this.getMonth()+1) + "." + Date.padded2(this.getDate());
|
5
|
+
if (include_time) { str += " " + this.getHours() + ":" + this.getPaddedMinutes() }
|
6
|
+
return str;
|
7
|
+
}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
Date.padded2 = function(hour) { padded2 = hour.toString(); if ((parseInt(hour) < 10) || (parseInt(hour) == null)) padded2="0" + padded2; return padded2; }
|
2
|
+
Date.prototype.getAMPMHour = function() { hour=Date.padded2(this.getHours()); return (hour == null) ? 00 : (hour > 24 ? hour - 24 : hour ) }
|
3
|
+
Date.prototype.getAMPM = function() { return (this.getHours() < 12) ? "" : ""; }
|
4
|
+
|
5
|
+
Date.prototype.toFormattedString = function(include_time){
|
6
|
+
str = this.getDate() + "." + (this.getMonth() + 1) + "." + this.getFullYear();
|
7
|
+
if (include_time) { hour=this.getHours(); str += " " + this.getAMPMHour() + ":" + this.getPaddedMinutes() }
|
8
|
+
return str;
|
9
|
+
}
|
10
|
+
Date.parseFormattedString = function (string) {
|
11
|
+
var regexp = '([0-9]{1,2})\.(([0-9]{1,2})\.(([0-9]{2,4})( ([0-9]{1,2}):([0-9]{2})? *)?)?)?';
|
12
|
+
var d = string.match(new RegExp(regexp, "i"));
|
13
|
+
if (d==null) return Date.parse(string); // at least give javascript a crack at it.
|
14
|
+
var offset = 0;
|
15
|
+
if (d[5] && d[5].length == 2) {
|
16
|
+
// we got only two digits for the year...
|
17
|
+
d[5] = Number(d[5]);
|
18
|
+
if (d[5] > 30)
|
19
|
+
d[5] += 1900;
|
20
|
+
else
|
21
|
+
d[5] += 2000;
|
22
|
+
}
|
23
|
+
var date = new Date(d[5], 0, 1);
|
24
|
+
if (d[3]) { date.setMonth(d[3] - 1); }
|
25
|
+
if (d[5]) { date.setDate(d[1]); }
|
26
|
+
if (d[7]) {
|
27
|
+
date.setHours(parseInt(d[7], 10));
|
28
|
+
}
|
29
|
+
if (d[8]) { date.setMinutes(d[8]); }
|
30
|
+
if (d[10]) { date.setSeconds(d[10]); }
|
31
|
+
return date;
|
32
|
+
}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
Date.prototype.toFormattedString = function(include_time){
|
2
|
+
str = this.getFullYear() + "-" + Date.padded2(this.getMonth() + 1) + "-" +Date.padded2(this.getDate());
|
3
|
+
|
4
|
+
if (include_time) { hour=this.getHours(); str += " " + this.getAMPMHour() + ":" + this.getPaddedMinutes() + " " + this.getAMPM() }
|
5
|
+
return str;
|
6
|
+
}
|
7
|
+
|
8
|
+
Date.parseFormattedString = function (string) {
|
9
|
+
var regexp = "([0-9]{4})(-([0-9]{2})(-([0-9]{2})" +
|
10
|
+
"( ([0-9]{1,2}):([0-9]{2})? *(pm|am)" +
|
11
|
+
"?)?)?)?";
|
12
|
+
var d = string.match(new RegExp(regexp, "i"));
|
13
|
+
if (d==null) return Date.parse(string); // at least give javascript a crack at it.
|
14
|
+
var offset = 0;
|
15
|
+
var date = new Date(d[1], 0, 1);
|
16
|
+
if (d[3]) { date.setMonth(d[3] - 1); }
|
17
|
+
if (d[5]) { date.setDate(d[5]); }
|
18
|
+
if (d[7]) {
|
19
|
+
hours = parseInt(d[7], 10);
|
20
|
+
offset=0;
|
21
|
+
is_pm = (d[9].toLowerCase()=="pm")
|
22
|
+
if (is_pm && hours <= 11) hours+=12;
|
23
|
+
if (!is_pm && hours == 12) hours=0;
|
24
|
+
date.setHours(hours);
|
25
|
+
|
26
|
+
}
|
27
|
+
if (d[8]) { date.setMinutes(d[8]); }
|
28
|
+
if (d[10]) { date.setSeconds(d[10]); }
|
29
|
+
if (d[12]) { date.setMilliseconds(Number("0." + d[12]) * 1000); }
|
30
|
+
if (d[14]) {
|
31
|
+
offset = (Number(d[16]) * 60) + Number(d[17]);
|
32
|
+
offset *= ((d[15] == '-') ? 1 : -1);
|
33
|
+
}
|
34
|
+
|
35
|
+
return date;
|
36
|
+
}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
Date.prototype.toFormattedString = function(include_time) {
|
2
|
+
var hour;
|
3
|
+
var str = this.getFullYear() + "-" + Date.padded2(this.getMonth() + 1) + "-" +Date.padded2(this.getDate());
|
4
|
+
if (include_time) {
|
5
|
+
hour = this.getHours();
|
6
|
+
str += " " + this.getHours() + ":" + this.getPaddedMinutes();
|
7
|
+
}
|
8
|
+
return str;
|
9
|
+
};
|
10
|
+
|
11
|
+
Date.parseFormattedString = function (string) {
|
12
|
+
|
13
|
+
var regexp = "([0-9]{4})(-([0-9]{2})(-([0-9]{2})" +
|
14
|
+
"( ([0-9]{1,2}):([0-9]{2})?" +
|
15
|
+
"?)?)?)?";
|
16
|
+
|
17
|
+
var d = string.match(new RegExp(regexp, "i"));
|
18
|
+
if (d === null) {
|
19
|
+
return Date.parse(string); // at least give javascript a crack at it.
|
20
|
+
}
|
21
|
+
var offset = 0;
|
22
|
+
var date = new Date(d[1], 0, 1);
|
23
|
+
if (d[3]) {
|
24
|
+
date.setMonth(d[3] - 1);
|
25
|
+
}
|
26
|
+
if (d[5]) {
|
27
|
+
date.setDate(d[5]);
|
28
|
+
}
|
29
|
+
if (d[7]) {
|
30
|
+
date.setHours(d[7]);
|
31
|
+
}
|
32
|
+
if (d[8]) {
|
33
|
+
date.setMinutes(d[8]);
|
34
|
+
}
|
35
|
+
if (d[0]) {
|
36
|
+
date.setSeconds(d[0]);
|
37
|
+
}
|
38
|
+
if (d[2]) {
|
39
|
+
date.setMilliseconds(Number("0." + d[2]));
|
40
|
+
}
|
41
|
+
if (d[4]) {
|
42
|
+
offset = (Number(d[6])) + Number(d[8]);
|
43
|
+
offset = ((d[5] == '-') ? 1 : -1);
|
44
|
+
}
|
45
|
+
return date;
|
46
|
+
};
|
@@ -0,0 +1,24 @@
|
|
1
|
+
// Italian Format: 31/12/2000 23:00
|
2
|
+
// Thanks, Bigonazzi!
|
3
|
+
|
4
|
+
Date.prototype.toFormattedString = function(include_time){
|
5
|
+
str = this.getDate() + "/" + (this.getMonth() + 1) + "/" + this.getFullYear();
|
6
|
+
if (include_time) { str += " " + this.getHours() + ":" + this.getPaddedMinutes() }
|
7
|
+
return str;
|
8
|
+
}
|
9
|
+
|
10
|
+
Date.parseFormattedString = function (string) {
|
11
|
+
var regexp = '([0-9]{1,2})/(([0-9]{1,2})/(([0-9]{4})( ([0-9]{1,2}):([0-9]{2})? *)?)?)?';
|
12
|
+
var d = string.match(new RegExp(regexp, "i"));
|
13
|
+
if (d==null) return Date.parse(string); // at least give javascript a crack at it.
|
14
|
+
var offset = 0;
|
15
|
+
var date = new Date(d[5], 0, 1);
|
16
|
+
if (d[3]) { date.setMonth(d[3] - 1); }
|
17
|
+
if (d[5]) { date.setDate(d[1]); }
|
18
|
+
if (d[7]) {
|
19
|
+
date.setHours(parseInt(d[7], 10));
|
20
|
+
}
|
21
|
+
if (d[8]) { date.setMinutes(d[8]); }
|
22
|
+
if (d[10]) { date.setSeconds(d[10]); }
|
23
|
+
return date;
|
24
|
+
}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
Date.weekdays = $w('Mo Di Mi Do Fr Sa So');
|
2
|
+
Date.months = $w('Januar Februar März April Mai Juni Juli August September Oktober November Dezember');
|
3
|
+
|
4
|
+
Date.first_day_of_week = 1;
|
5
|
+
|
6
|
+
_translations = {
|
7
|
+
"OK": "OK",
|
8
|
+
"Now": "Jetzt",
|
9
|
+
"Today": "Heute",
|
10
|
+
"Clear": "Löschen"
|
11
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
Date.weekdays = $w("Ma Ti Ke To Pe La Su");
|
2
|
+
Date.months = $w("Tammikuu Helmikuu Maaliskuu Huhtikuu Toukokuu Kes�kuu Hein�kuu Elokuu Syyskuu Lokakuu Marraskuu Joulukuu" );
|
3
|
+
|
4
|
+
Date.first_day_of_week = 1
|
5
|
+
|
6
|
+
_translations = {
|
7
|
+
"OK": "OK",
|
8
|
+
"Now": "Nyt",
|
9
|
+
"Today": "T�n��n"
|
10
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
Date.weekdays = $w('L Ma Me J V S D');
|
2
|
+
Date.months = $w('Janvier Février Mars Avril Mai Juin Juillet Août Septembre Octobre Novembre Décembre');
|
3
|
+
|
4
|
+
Date.first_day_of_week = 1;
|
5
|
+
|
6
|
+
_translations = {
|
7
|
+
"OK": "OK",
|
8
|
+
"Now": "Maintenant",
|
9
|
+
"Today": "Aujourd'hui"
|
10
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
Date.weekdays = $w('P W Ś C P S N');
|
2
|
+
Date.months = $w('Styczeń Luty Marzec Kwiecień Maj Czerwiec Lipiec Sierpień Wrzesień Październik Listopad Grudzień');
|
3
|
+
|
4
|
+
Date.first_day_of_week = 1
|
5
|
+
|
6
|
+
_translations = {
|
7
|
+
"OK": "OK",
|
8
|
+
"Now": "Teraz",
|
9
|
+
"Today": "Dziś"
|
10
|
+
}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
Date.weekdays = $w('D S T Q Q S S');
|
2
|
+
Date.months = $w('Janeiro Fevereiro Março Abril Maio Junho Julho Agosto Setembro Outubro Novembro Dezembro');
|
3
|
+
|
4
|
+
Date.first_day_of_week = 0
|
5
|
+
|
6
|
+
_translations = {
|
7
|
+
"OK": "OK",
|
8
|
+
"Now": "Agora",
|
9
|
+
"Today": "Hoje",
|
10
|
+
"Clear": "Limpar"
|
11
|
+
}
|
@@ -0,0 +1,130 @@
|
|
1
|
+
.calendar_date_select {
|
2
|
+
color:white;
|
3
|
+
border:#777 1px solid;
|
4
|
+
display:block;
|
5
|
+
width:195px;
|
6
|
+
z-index: 1000;
|
7
|
+
}
|
8
|
+
/* this is a fun ie6 hack to get drop downs to stay behind the popup window. This should always be just underneath .calendar_date_select */
|
9
|
+
iframe.ie6_blocker {
|
10
|
+
position: absolute;
|
11
|
+
z-index: 999;
|
12
|
+
}
|
13
|
+
|
14
|
+
.calendar_date_select thead th {
|
15
|
+
font-weight:bold;
|
16
|
+
background-color: #000;
|
17
|
+
border-top:1px solid #777;
|
18
|
+
border-bottom:2px solid #334;
|
19
|
+
color: white !important;
|
20
|
+
}
|
21
|
+
|
22
|
+
.calendar_date_select .cds_buttons {
|
23
|
+
text-align:center;
|
24
|
+
padding:5px 0px;
|
25
|
+
background-color: #000055;
|
26
|
+
}
|
27
|
+
|
28
|
+
.calendar_date_select .cds_footer {
|
29
|
+
background-color: black;
|
30
|
+
padding:3px;
|
31
|
+
font-size:12px;
|
32
|
+
text-align:center;
|
33
|
+
}
|
34
|
+
|
35
|
+
.calendar_date_select table {
|
36
|
+
margin: 0px;
|
37
|
+
padding: 0px;
|
38
|
+
}
|
39
|
+
|
40
|
+
|
41
|
+
.calendar_date_select .cds_header {
|
42
|
+
background-color: #ccc;
|
43
|
+
border-bottom: 2px solid #aaa;
|
44
|
+
text-align:center;
|
45
|
+
}
|
46
|
+
|
47
|
+
.calendar_date_select .cds_header span {
|
48
|
+
font-size:15px;
|
49
|
+
color: black;
|
50
|
+
font-weight: bold;
|
51
|
+
}
|
52
|
+
|
53
|
+
.calendar_date_select select { font-size:11px;}
|
54
|
+
|
55
|
+
.calendar_date_select .cds_header a:hover {
|
56
|
+
color: white;
|
57
|
+
}
|
58
|
+
.calendar_date_select .cds_header a {
|
59
|
+
width:22px;
|
60
|
+
height:20px;
|
61
|
+
text-decoration: none;
|
62
|
+
font-size:14px;
|
63
|
+
color:black !important;
|
64
|
+
}
|
65
|
+
|
66
|
+
.calendar_date_select .cds_header a.prev {
|
67
|
+
float:left;
|
68
|
+
}
|
69
|
+
|
70
|
+
.calendar_date_select .cds_header a.next {
|
71
|
+
float:right;
|
72
|
+
}
|
73
|
+
|
74
|
+
.calendar_date_select .cds_header a.close {
|
75
|
+
float:right;
|
76
|
+
display:none;
|
77
|
+
}
|
78
|
+
|
79
|
+
|
80
|
+
.calendar_date_select .cds_header select.month {
|
81
|
+
width:90px;
|
82
|
+
}
|
83
|
+
|
84
|
+
.calendar_date_select .cds_header select.year {
|
85
|
+
width:61px;
|
86
|
+
}
|
87
|
+
|
88
|
+
.calendar_date_select .cds_buttons a {
|
89
|
+
color: white;
|
90
|
+
font-size: 9px;
|
91
|
+
}
|
92
|
+
|
93
|
+
.calendar_date_select td {
|
94
|
+
background-color: #000066;
|
95
|
+
font-size:12px;
|
96
|
+
width: 24px;
|
97
|
+
height: 21px;
|
98
|
+
text-align:center;
|
99
|
+
vertical-align: middle;
|
100
|
+
}
|
101
|
+
.calendar_date_select td.weekend {
|
102
|
+
background-color: #00005a;
|
103
|
+
}
|
104
|
+
|
105
|
+
.calendar_date_select td div.other {
|
106
|
+
color: #4C5593;
|
107
|
+
}
|
108
|
+
|
109
|
+
.calendar_date_select tbody td {
|
110
|
+
border-bottom: 1px solid #000044;
|
111
|
+
}
|
112
|
+
.calendar_date_select td.selected {
|
113
|
+
background-color:white;
|
114
|
+
color:black;
|
115
|
+
}
|
116
|
+
|
117
|
+
.calendar_date_select td:hover {
|
118
|
+
background-color:#ccc;
|
119
|
+
}
|
120
|
+
|
121
|
+
.calendar_date_select td.disabled div {
|
122
|
+
color: #000044;
|
123
|
+
}
|
124
|
+
.calendar_date_select td.today {
|
125
|
+
border: 1px dashed blue;
|
126
|
+
}
|
127
|
+
|
128
|
+
.fieldWithErrors .calendar_date_select {
|
129
|
+
border: 2px solid red;
|
130
|
+
}
|
@@ -0,0 +1,135 @@
|
|
1
|
+
.calendar_date_select {
|
2
|
+
color:white;
|
3
|
+
border:#777 1px solid;
|
4
|
+
display:block;
|
5
|
+
width:195px;
|
6
|
+
z-index: 1000;
|
7
|
+
}
|
8
|
+
/* this is a fun ie6 hack to get drop downs to stay behind the popup window. This should always be just underneath .calendar_date_select */
|
9
|
+
iframe.ie6_blocker {
|
10
|
+
position: absolute;
|
11
|
+
z-index: 999;
|
12
|
+
}
|
13
|
+
|
14
|
+
.calendar_date_select thead th {
|
15
|
+
font-weight:bold;
|
16
|
+
background-color: #aaa;
|
17
|
+
border-top:1px solid #777;
|
18
|
+
border-bottom:1px solid #777;
|
19
|
+
color: white !important;
|
20
|
+
}
|
21
|
+
|
22
|
+
.calendar_date_select .cds_buttons {
|
23
|
+
text-align:center;
|
24
|
+
padding:5px 0px;
|
25
|
+
background-color: #555;
|
26
|
+
}
|
27
|
+
|
28
|
+
.calendar_date_select .cds_footer {
|
29
|
+
background-color: black;
|
30
|
+
padding:3px;
|
31
|
+
font-size:12px;
|
32
|
+
text-align:center;
|
33
|
+
}
|
34
|
+
|
35
|
+
.calendar_date_select table {
|
36
|
+
margin: 0px;
|
37
|
+
padding: 0px;
|
38
|
+
}
|
39
|
+
|
40
|
+
|
41
|
+
.calendar_date_select .cds_header {
|
42
|
+
background-color: #ccc;
|
43
|
+
border-bottom: 2px solid #aaa;
|
44
|
+
text-align:center;
|
45
|
+
}
|
46
|
+
|
47
|
+
.calendar_date_select .cds_header span {
|
48
|
+
font-size:15px;
|
49
|
+
color: black;
|
50
|
+
font-weight: bold;
|
51
|
+
}
|
52
|
+
|
53
|
+
.calendar_date_select select { font-size:11px;}
|
54
|
+
|
55
|
+
.calendar_date_select .cds_header a:hover {
|
56
|
+
color: white;
|
57
|
+
}
|
58
|
+
.calendar_date_select .cds_header a {
|
59
|
+
width:22px;
|
60
|
+
height:20px;
|
61
|
+
text-decoration: none;
|
62
|
+
font-size:14px;
|
63
|
+
color:black !important;
|
64
|
+
}
|
65
|
+
|
66
|
+
.calendar_date_select .cds_header a.prev {
|
67
|
+
float:left;
|
68
|
+
}
|
69
|
+
.calendar_date_select .cds_header a.next {
|
70
|
+
float:right;
|
71
|
+
}
|
72
|
+
|
73
|
+
.calendar_date_select .cds_header a.close {
|
74
|
+
float:right;
|
75
|
+
display:none;
|
76
|
+
}
|
77
|
+
|
78
|
+
.calendar_date_select .cds_header select.month {
|
79
|
+
width:90px;
|
80
|
+
}
|
81
|
+
|
82
|
+
.calendar_date_select .cds_header select.year {
|
83
|
+
width:61px;
|
84
|
+
}
|
85
|
+
.calendar_date_select .cds_buttons a {
|
86
|
+
color: white;
|
87
|
+
font-size: 9px;
|
88
|
+
}
|
89
|
+
|
90
|
+
.calendar_date_select td {
|
91
|
+
font-size:12px;
|
92
|
+
width: 24px;
|
93
|
+
height: 21px;
|
94
|
+
text-align:center;
|
95
|
+
vertical-align: middle;
|
96
|
+
background-color: #fff;
|
97
|
+
}
|
98
|
+
.calendar_date_select td.weekend {
|
99
|
+
background-color: #eee;
|
100
|
+
border-left:1px solid #ddd;
|
101
|
+
border-right:1px solid #ddd;
|
102
|
+
}
|
103
|
+
|
104
|
+
.calendar_date_select td div {
|
105
|
+
color: #000;
|
106
|
+
}
|
107
|
+
.calendar_date_select td div.other {
|
108
|
+
color: #ccc;
|
109
|
+
}
|
110
|
+
.calendar_date_select td.selected div {
|
111
|
+
color:white;
|
112
|
+
}
|
113
|
+
|
114
|
+
.calendar_date_select tbody td {
|
115
|
+
border-bottom: 1px solid #ddd;
|
116
|
+
}
|
117
|
+
.calendar_date_select td.selected {
|
118
|
+
background-color:#777;
|
119
|
+
}
|
120
|
+
|
121
|
+
.calendar_date_select td:hover {
|
122
|
+
background-color:#ccc;
|
123
|
+
}
|
124
|
+
|
125
|
+
.calendar_date_select td.today {
|
126
|
+
border: 1px dashed #999;
|
127
|
+
}
|
128
|
+
|
129
|
+
.calendar_date_select td.disabled div {
|
130
|
+
color: #e6e6e6;
|
131
|
+
}
|
132
|
+
|
133
|
+
.fieldWithErrors .calendar_date_select {
|
134
|
+
border: 2px solid red;
|
135
|
+
}
|