smklib 1.0.6

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.
Files changed (102) hide show
  1. checksums.yaml +7 -0
  2. data/app/assets/images/add.png +0 -0
  3. data/app/assets/images/button_cancel.png +0 -0
  4. data/app/assets/images/button_ok.png +0 -0
  5. data/app/assets/images/cmseditor/16x16/text_block.png +0 -0
  6. data/app/assets/images/cmseditor/16x16/text_bold.png +0 -0
  7. data/app/assets/images/cmseditor/16x16/text_center.png +0 -0
  8. data/app/assets/images/cmseditor/16x16/text_italic.png +0 -0
  9. data/app/assets/images/cmseditor/16x16/text_left.png +0 -0
  10. data/app/assets/images/cmseditor/16x16/text_right.png +0 -0
  11. data/app/assets/images/cmseditor/16x16/text_strike.png +0 -0
  12. data/app/assets/images/cmseditor/16x16/text_sub.png +0 -0
  13. data/app/assets/images/cmseditor/16x16/text_super.png +0 -0
  14. data/app/assets/images/cmseditor/16x16/text_under.png +0 -0
  15. data/app/assets/images/cmseditor/22x22/text_block.png +0 -0
  16. data/app/assets/images/cmseditor/22x22/text_bold.png +0 -0
  17. data/app/assets/images/cmseditor/22x22/text_center.png +0 -0
  18. data/app/assets/images/cmseditor/22x22/text_italic.png +0 -0
  19. data/app/assets/images/cmseditor/22x22/text_left.png +0 -0
  20. data/app/assets/images/cmseditor/22x22/text_right.png +0 -0
  21. data/app/assets/images/cmseditor/22x22/text_strike.png +0 -0
  22. data/app/assets/images/cmseditor/22x22/text_sub.png +0 -0
  23. data/app/assets/images/cmseditor/22x22/text_super.png +0 -0
  24. data/app/assets/images/cmseditor/22x22/text_under.png +0 -0
  25. data/app/assets/images/trashcan_empty.png +0 -0
  26. data/app/assets/javascripts/collapsable.js +56 -0
  27. data/app/assets/javascripts/hide_show.js +39 -0
  28. data/app/assets/javascripts/jscalendar-1.0/calendar-setup.js +200 -0
  29. data/app/assets/javascripts/jscalendar-1.0/calendar.js +1806 -0
  30. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-af.js +39 -0
  31. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-al.js +101 -0
  32. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-bg.js +124 -0
  33. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-big5-utf8.js +123 -0
  34. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-big5.js +123 -0
  35. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-br.js +108 -0
  36. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-ca.js +123 -0
  37. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-cs-utf8.js +65 -0
  38. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-cs-win.js +65 -0
  39. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-da.js +123 -0
  40. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-de.js +124 -0
  41. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-du.js +45 -0
  42. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-el.js +89 -0
  43. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-en.js +127 -0
  44. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-es.js +129 -0
  45. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-fi.js +98 -0
  46. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-fr.js +125 -0
  47. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-he-utf8.js +123 -0
  48. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-hr-utf8.js +49 -0
  49. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-hr.js +0 -0
  50. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-hu.js +124 -0
  51. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-it.js +124 -0
  52. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-jp.js +45 -0
  53. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-ko-utf8.js +120 -0
  54. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-ko.js +120 -0
  55. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-lt-utf8.js +114 -0
  56. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-lt.js +114 -0
  57. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-lv.js +123 -0
  58. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-nl.js +73 -0
  59. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-no.js +114 -0
  60. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-pl-utf8.js +93 -0
  61. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-pl.js +56 -0
  62. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-pt.js +123 -0
  63. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-ro.js +66 -0
  64. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-ru.js +123 -0
  65. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-ru_win_.js +123 -0
  66. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-si.js +94 -0
  67. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-sk.js +99 -0
  68. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-sp.js +110 -0
  69. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-sv.js +93 -0
  70. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-tr.js +58 -0
  71. data/app/assets/javascripts/jscalendar-1.0/lang/calendar-zh.js +119 -0
  72. data/app/assets/javascripts/jscalendar-1.0/lang/cn_utf8.js +123 -0
  73. data/app/assets/stylesheets/jscalendar-1.0/skins/aqua/active-bg.gif +0 -0
  74. data/app/assets/stylesheets/jscalendar-1.0/skins/aqua/dark-bg.gif +0 -0
  75. data/app/assets/stylesheets/jscalendar-1.0/skins/aqua/hover-bg.gif +0 -0
  76. data/app/assets/stylesheets/jscalendar-1.0/skins/aqua/menuarrow.gif +0 -0
  77. data/app/assets/stylesheets/jscalendar-1.0/skins/aqua/normal-bg.gif +0 -0
  78. data/app/assets/stylesheets/jscalendar-1.0/skins/aqua/rowhover-bg.gif +0 -0
  79. data/app/assets/stylesheets/jscalendar-1.0/skins/aqua/status-bg.gif +0 -0
  80. data/app/assets/stylesheets/jscalendar-1.0/skins/aqua/theme.css +236 -0
  81. data/app/assets/stylesheets/jscalendar-1.0/skins/aqua/title-bg.gif +0 -0
  82. data/app/assets/stylesheets/jscalendar-1.0/skins/aqua/today-bg.gif +0 -0
  83. data/app/views/error_mailer/snapshot.rhtml +71 -0
  84. data/lib/smklib.rb +6 -0
  85. data/lib/smklib/array_ext.rb +76 -0
  86. data/lib/smklib/browsers.rb +69 -0
  87. data/lib/smklib/builder_ext.rb +103 -0
  88. data/lib/smklib/date_ext.rb +23 -0
  89. data/lib/smklib/debug_support.rb +27 -0
  90. data/lib/smklib/error_mailer.rb +70 -0
  91. data/lib/smklib/hash_ext.rb +19 -0
  92. data/lib/smklib/htmlutils.rb +604 -0
  93. data/lib/smklib/movable_children.rb +28 -0
  94. data/lib/smklib/object_ext.rb +34 -0
  95. data/lib/smklib/php_serialize.rb +309 -0
  96. data/lib/smklib/railtie.rb +6 -0
  97. data/lib/smklib/somekool_scaffold.rb +198 -0
  98. data/lib/smklib/super_looking_list.rb +63 -0
  99. data/lib/smklib/version.rb +11 -0
  100. data/vendor/calendar_helper.rb +100 -0
  101. data/vendor/htmltokenizer.rb +259 -0
  102. metadata +158 -0
@@ -0,0 +1,119 @@
1
+ // ** I18N
2
+
3
+ // Calendar ZH language
4
+ // Author: muziq, <muziq@sina.com>
5
+ // Encoding: GB2312 or GBK
6
+ // Distributed under the same terms as the calendar itself.
7
+
8
+ // full day names
9
+ Calendar._DN = new Array
10
+ ("������",
11
+ "����һ",
12
+ "���ڶ�",
13
+ "������",
14
+ "������",
15
+ "������",
16
+ "������",
17
+ "������");
18
+
19
+ // Please note that the following array of short day names (and the same goes
20
+ // for short month names, _SMN) isn't absolutely necessary. We give it here
21
+ // for exemplification on how one can customize the short day names, but if
22
+ // they are simply the first N letters of the full name you can simply say:
23
+ //
24
+ // Calendar._SDN_len = N; // short day name length
25
+ // Calendar._SMN_len = N; // short month name length
26
+ //
27
+ // If N = 3 then this is not needed either since we assume a value of 3 if not
28
+ // present, to be compatible with translation files that were written before
29
+ // this feature.
30
+
31
+ // short day names
32
+ Calendar._SDN = new Array
33
+ ("��",
34
+ "һ",
35
+ "��",
36
+ "��",
37
+ "��",
38
+ "��",
39
+ "��",
40
+ "��");
41
+
42
+ // full month names
43
+ Calendar._MN = new Array
44
+ ("һ��",
45
+ "����",
46
+ "����",
47
+ "����",
48
+ "����",
49
+ "����",
50
+ "����",
51
+ "����",
52
+ "����",
53
+ "ʮ��",
54
+ "ʮһ��",
55
+ "ʮ����");
56
+
57
+ // short month names
58
+ Calendar._SMN = new Array
59
+ ("һ��",
60
+ "����",
61
+ "����",
62
+ "����",
63
+ "����",
64
+ "����",
65
+ "����",
66
+ "����",
67
+ "����",
68
+ "ʮ��",
69
+ "ʮһ��",
70
+ "ʮ����");
71
+
72
+ // tooltips
73
+ Calendar._TT = {};
74
+ Calendar._TT["INFO"] = "����";
75
+
76
+ Calendar._TT["ABOUT"] =
77
+ "DHTML Date/Time Selector\n" +
78
+ "(c) dynarch.com 2002-2005 / Author: Mihai Bazon\n" + // don't translate this this ;-)
79
+ "For latest version visit: http://www.dynarch.com/projects/calendar/\n" +
80
+ "Distributed under GNU LGPL. See http://gnu.org/licenses/lgpl.html for details." +
81
+ "\n\n" +
82
+ "ѡ������:\n" +
83
+ "- ��� \xab, \xbb ��ťѡ�����\n" +
84
+ "- ��� " + String.fromCharCode(0x2039) + ", " + String.fromCharCode(0x203a) + " ��ťѡ���·�\n" +
85
+ "- �������ϰ�ť�ɴӲ˵��п���ѡ����ݻ��·�";
86
+ Calendar._TT["ABOUT_TIME"] = "\n\n" +
87
+ "ѡ��ʱ��:\n" +
88
+ "- ���Сʱ����ӿ�ʹ����ֵ��һ\n" +
89
+ "- ��סShift�����Сʱ����ӿ�ʹ����ֵ��һ\n" +
90
+ "- ����϶����ɽ��п���ѡ��";
91
+
92
+ Calendar._TT["PREV_YEAR"] = "��һ�� (��ס���˵�)";
93
+ Calendar._TT["PREV_MONTH"] = "��һ�� (��ס���˵�)";
94
+ Calendar._TT["GO_TODAY"] = "ת������";
95
+ Calendar._TT["NEXT_MONTH"] = "��һ�� (��ס���˵�)";
96
+ Calendar._TT["NEXT_YEAR"] = "��һ�� (��ס���˵�)";
97
+ Calendar._TT["SEL_DATE"] = "ѡ������";
98
+ Calendar._TT["DRAG_TO_MOVE"] = "�϶�";
99
+ Calendar._TT["PART_TODAY"] = " (����)";
100
+
101
+ // the following is to inform that "%s" is to be the first day of week
102
+ // %s will be replaced with the day name.
103
+ Calendar._TT["DAY_FIRST"] = "�������ʾ%s";
104
+
105
+ // This may be locale-dependent. It specifies the week-end days, as an array
106
+ // of comma-separated numbers. The numbers are from 0 to 6: 0 means Sunday, 1
107
+ // means Monday, etc.
108
+ Calendar._TT["WEEKEND"] = "0,6";
109
+
110
+ Calendar._TT["CLOSE"] = "�ر�";
111
+ Calendar._TT["TODAY"] = "����";
112
+ Calendar._TT["TIME_PART"] = "(Shift-)��������϶��ı�ֵ";
113
+
114
+ // date formats
115
+ Calendar._TT["DEF_DATE_FORMAT"] = "%Y-%m-%d";
116
+ Calendar._TT["TT_DATE_FORMAT"] = "%A, %b %e��";
117
+
118
+ Calendar._TT["WK"] = "��";
119
+ Calendar._TT["TIME"] = "ʱ��:";
@@ -0,0 +1,123 @@
1
+ // ** I18N
2
+
3
+ // Calendar EN language
4
+ // Author: Mihai Bazon, <mishoo@infoiasi.ro>
5
+ // Encoding: any
6
+ // Translator : Niko <nikoused@gmail.com>
7
+ // Distributed under the same terms as the calendar itself.
8
+
9
+ // For translators: please use UTF-8 if possible. We strongly believe that
10
+ // Unicode is the answer to a real internationalized world. Also please
11
+ // include your contact information in the header, as can be seen above.
12
+
13
+ // full day names
14
+ Calendar._DN = new Array
15
+ ("\u5468\u65e5",//\u5468\u65e5
16
+ "\u5468\u4e00",//\u5468\u4e00
17
+ "\u5468\u4e8c",//\u5468\u4e8c
18
+ "\u5468\u4e09",//\u5468\u4e09
19
+ "\u5468\u56db",//\u5468\u56db
20
+ "\u5468\u4e94",//\u5468\u4e94
21
+ "\u5468\u516d",//\u5468\u516d
22
+ "\u5468\u65e5");//\u5468\u65e5
23
+
24
+ // Please note that the following array of short day names (and the same goes
25
+ // for short month names, _SMN) isn't absolutely necessary. We give it here
26
+ // for exemplification on how one can customize the short day names, but if
27
+ // they are simply the first N letters of the full name you can simply say:
28
+ //
29
+ // Calendar._SDN_len = N; // short day name length
30
+ // Calendar._SMN_len = N; // short month name length
31
+ //
32
+ // If N = 3 then this is not needed either since we assume a value of 3 if not
33
+ // present, to be compatible with translation files that were written before
34
+ // this feature.
35
+
36
+ // short day names
37
+ Calendar._SDN = new Array
38
+ ("\u5468\u65e5",
39
+ "\u5468\u4e00",
40
+ "\u5468\u4e8c",
41
+ "\u5468\u4e09",
42
+ "\u5468\u56db",
43
+ "\u5468\u4e94",
44
+ "\u5468\u516d",
45
+ "\u5468\u65e5");
46
+
47
+ // full month names
48
+ Calendar._MN = new Array
49
+ ("\u4e00\u6708",
50
+ "\u4e8c\u6708",
51
+ "\u4e09\u6708",
52
+ "\u56db\u6708",
53
+ "\u4e94\u6708",
54
+ "\u516d\u6708",
55
+ "\u4e03\u6708",
56
+ "\u516b\u6708",
57
+ "\u4e5d\u6708",
58
+ "\u5341\u6708",
59
+ "\u5341\u4e00\u6708",
60
+ "\u5341\u4e8c\u6708");
61
+
62
+ // short month names
63
+ Calendar._SMN = new Array
64
+ ("\u4e00\u6708",
65
+ "\u4e8c\u6708",
66
+ "\u4e09\u6708",
67
+ "\u56db\u6708",
68
+ "\u4e94\u6708",
69
+ "\u516d\u6708",
70
+ "\u4e03\u6708",
71
+ "\u516b\u6708",
72
+ "\u4e5d\u6708",
73
+ "\u5341\u6708",
74
+ "\u5341\u4e00\u6708",
75
+ "\u5341\u4e8c\u6708");
76
+
77
+ // tooltips
78
+ Calendar._TT = {};
79
+ Calendar._TT["INFO"] = "\u5173\u4e8e";
80
+
81
+ Calendar._TT["ABOUT"] =
82
+ " DHTML \u65e5\u8d77/\u65f6\u95f4\u9009\u62e9\u63a7\u4ef6\n" +
83
+ "(c) dynarch.com 2002-2005 / Author: Mihai Bazon\n" + // don't translate this this ;-)
84
+ "For latest version visit: \u6700\u65b0\u7248\u672c\u8bf7\u767b\u9646http://www.dynarch.com/projects/calendar/\u5bdf\u770b\n" +
85
+ "\u9075\u5faaGNU LGPL. \u7ec6\u8282\u53c2\u9605 http://gnu.org/licenses/lgpl.html" +
86
+ "\n\n" +
87
+ "\u65e5\u671f\u9009\u62e9:\n" +
88
+ "- \u70b9\u51fb\xab(\xbb)\u6309\u94ae\u9009\u62e9\u4e0a(\u4e0b)\u4e00\u5e74\u5ea6.\n" +
89
+ "- \u70b9\u51fb" + String.fromCharCode(0x2039) + "(" + String.fromCharCode(0x203a) + ")\u6309\u94ae\u9009\u62e9\u4e0a(\u4e0b)\u4e2a\u6708\u4efd.\n" +
90
+ "- \u957f\u65f6\u95f4\u6309\u7740\u6309\u94ae\u5c06\u51fa\u73b0\u66f4\u591a\u9009\u62e9\u9879.";
91
+ Calendar._TT["ABOUT_TIME"] = "\n\n" +
92
+ "\u65f6\u95f4\u9009\u62e9:\n" +
93
+ "-\u5728\u65f6\u95f4\u90e8\u5206(\u5206\u6216\u8005\u79d2)\u4e0a\u5355\u51fb\u9f20\u6807\u5de6\u952e\u6765\u589e\u52a0\u5f53\u524d\u65f6\u95f4\u90e8\u5206(\u5206\u6216\u8005\u79d2)\n" +
94
+ "-\u5728\u65f6\u95f4\u90e8\u5206(\u5206\u6216\u8005\u79d2)\u4e0a\u6309\u4f4fShift\u952e\u540e\u5355\u51fb\u9f20\u6807\u5de6\u952e\u6765\u51cf\u5c11\u5f53\u524d\u65f6\u95f4\u90e8\u5206(\u5206\u6216\u8005\u79d2).";
95
+
96
+ Calendar._TT["PREV_YEAR"] = "\u4e0a\u4e00\u5e74";
97
+ Calendar._TT["PREV_MONTH"] = "\u4e0a\u4e2a\u6708";
98
+ Calendar._TT["GO_TODAY"] = "\u5230\u4eca\u5929";
99
+ Calendar._TT["NEXT_MONTH"] = "\u4e0b\u4e2a\u6708";
100
+ Calendar._TT["NEXT_YEAR"] = "\u4e0b\u4e00\u5e74";
101
+ Calendar._TT["SEL_DATE"] = "\u9009\u62e9\u65e5\u671f";
102
+ Calendar._TT["DRAG_TO_MOVE"] = "\u62d6\u52a8";
103
+ Calendar._TT["PART_TODAY"] = " (\u4eca\u5929)";
104
+
105
+ // the following is to inform that "%s" is to be the first day of week
106
+ // %s will be replaced with the day name.
107
+ Calendar._TT["DAY_FIRST"] = "%s\u4e3a\u8fd9\u5468\u7684\u7b2c\u4e00\u5929";
108
+
109
+ // This may be locale-dependent. It specifies the week-end days, as an array
110
+ // of comma-separated numbers. The numbers are from 0 to 6: 0 means Sunday, 1
111
+ // means Monday, etc.
112
+ Calendar._TT["WEEKEND"] = "0,6";
113
+
114
+ Calendar._TT["CLOSE"] = "\u5173\u95ed";
115
+ Calendar._TT["TODAY"] = "\u4eca\u5929";
116
+ Calendar._TT["TIME_PART"] = "(\u6309\u7740Shift\u952e)\u5355\u51fb\u6216\u62d6\u52a8\u6539\u53d8\u503c";
117
+
118
+ // date formats
119
+ Calendar._TT["DEF_DATE_FORMAT"] = "%Y-%m-%d";
120
+ Calendar._TT["TT_DATE_FORMAT"] = "%a, %b %e\u65e5";
121
+
122
+ Calendar._TT["WK"] = "\u5468";
123
+ Calendar._TT["TIME"] = "\u65f6\u95f4:";
@@ -0,0 +1,236 @@
1
+ /* Distributed as part of The Coolest DHTML Calendar
2
+ Author: Mihai Bazon, www.bazon.net/mishoo
3
+ Copyright Dynarch.com 2005, www.dynarch.com
4
+ */
5
+
6
+ /* The main calendar widget. DIV containing a table. */
7
+
8
+ div.calendar { position: relative; }
9
+
10
+ .calendar, .calendar table {
11
+ border: 1px solid #bdb2bf;
12
+ font-size: 11px;
13
+ color: #000;
14
+ cursor: default;
15
+ background: url("normal-bg.gif");
16
+ font-family: "trebuchet ms",verdana,tahoma,sans-serif;
17
+ }
18
+
19
+ .calendar {
20
+ border-color: #797979;
21
+ }
22
+
23
+ /* Header part -- contains navigation buttons and day names. */
24
+
25
+ .calendar .button { /* "<<", "<", ">", ">>" buttons have this class */
26
+ text-align: center; /* They are the navigation buttons */
27
+ padding: 2px; /* Make the buttons seem like they're pressing */
28
+ background: url("title-bg.gif") repeat-x 0 100%; color: #000;
29
+ font-weight: bold;
30
+ }
31
+
32
+ .calendar .nav {
33
+ font-family: verdana,tahoma,sans-serif;
34
+ }
35
+
36
+ .calendar .nav div {
37
+ background: transparent url("menuarrow.gif") no-repeat 100% 100%;
38
+ }
39
+
40
+ .calendar thead tr { background: url("title-bg.gif") repeat-x 0 100%; color: #000; }
41
+
42
+ .calendar thead .title { /* This holds the current "month, year" */
43
+ font-weight: bold; /* Pressing it will take you to the current date */
44
+ text-align: center;
45
+ padding: 2px;
46
+ background: url("title-bg.gif") repeat-x 0 100%; color: #000;
47
+ }
48
+
49
+ .calendar thead .headrow { /* Row <TR> containing navigation buttons */
50
+ }
51
+
52
+ .calendar thead .name { /* Cells <TD> containing the day names */
53
+ border-bottom: 1px solid #797979;
54
+ padding: 2px;
55
+ text-align: center;
56
+ color: #000;
57
+ }
58
+
59
+ .calendar thead .weekend { /* How a weekend day name shows in header */
60
+ color: #c44;
61
+ }
62
+
63
+ .calendar thead .hilite { /* How do the buttons in header appear when hover */
64
+ background: url("hover-bg.gif");
65
+ border-bottom: 1px solid #797979;
66
+ padding: 2px 2px 1px 2px;
67
+ }
68
+
69
+ .calendar thead .active { /* Active (pressed) buttons in header */
70
+ background: url("active-bg.gif"); color: #fff;
71
+ padding: 3px 1px 0px 3px;
72
+ border-bottom: 1px solid #797979;
73
+ }
74
+
75
+ .calendar thead .daynames { /* Row <TR> containing the day names */
76
+ background: url("dark-bg.gif");
77
+ }
78
+
79
+ /* The body part -- contains all the days in month. */
80
+
81
+ .calendar tbody .day { /* Cells <TD> containing month days dates */
82
+ font-family: verdana,tahoma,sans-serif;
83
+ width: 2em;
84
+ color: #000;
85
+ text-align: right;
86
+ padding: 2px 4px 2px 2px;
87
+ }
88
+ .calendar tbody .day.othermonth {
89
+ font-size: 80%;
90
+ color: #999;
91
+ }
92
+ .calendar tbody .day.othermonth.oweekend {
93
+ color: #f99;
94
+ }
95
+
96
+ .calendar table .wn {
97
+ padding: 2px 3px 2px 2px;
98
+ border-right: 1px solid #797979;
99
+ background: url("dark-bg.gif");
100
+ }
101
+
102
+ .calendar tbody .rowhilite td,
103
+ .calendar tbody .rowhilite td.wn {
104
+ background: url("rowhover-bg.gif");
105
+ }
106
+
107
+ .calendar tbody td.today { font-weight: bold; /* background: url("today-bg.gif") no-repeat 70% 50%; */ }
108
+
109
+ .calendar tbody td.hilite { /* Hovered cells <TD> */
110
+ background: url("hover-bg.gif");
111
+ padding: 1px 3px 1px 1px;
112
+ border: 1px solid #bbb;
113
+ }
114
+
115
+ .calendar tbody td.active { /* Active (pressed) cells <TD> */
116
+ padding: 2px 2px 0px 2px;
117
+ }
118
+
119
+ .calendar tbody td.weekend { /* Cells showing weekend days */
120
+ color: #c44;
121
+ }
122
+
123
+ .calendar tbody td.selected { /* Cell showing selected date */
124
+ font-weight: bold;
125
+ border: 1px solid #797979;
126
+ padding: 1px 3px 1px 1px;
127
+ background: url("active-bg.gif"); color: #fff;
128
+ }
129
+
130
+ .calendar tbody .disabled { color: #999; }
131
+
132
+ .calendar tbody .emptycell { /* Empty cells (the best is to hide them) */
133
+ visibility: hidden;
134
+ }
135
+
136
+ .calendar tbody .emptyrow { /* Empty row (some months need less than 6 rows) */
137
+ display: none;
138
+ }
139
+
140
+ /* The footer part -- status bar and "Close" button */
141
+
142
+ .calendar tfoot .footrow { /* The <TR> in footer (only one right now) */
143
+ text-align: center;
144
+ background: #565;
145
+ color: #fff;
146
+ }
147
+
148
+ .calendar tfoot .ttip { /* Tooltip (status bar) cell <TD> */
149
+ padding: 2px;
150
+ background: url("status-bg.gif") repeat-x 0 0; color: #000;
151
+ }
152
+
153
+ .calendar tfoot .hilite { /* Hover style for buttons in footer */
154
+ background: #afa;
155
+ border: 1px solid #084;
156
+ color: #000;
157
+ padding: 1px;
158
+ }
159
+
160
+ .calendar tfoot .active { /* Active (pressed) style for buttons in footer */
161
+ background: #7c7;
162
+ padding: 2px 0px 0px 2px;
163
+ }
164
+
165
+ /* Combo boxes (menus that display months/years for direct selection) */
166
+
167
+ .calendar .combo {
168
+ position: absolute;
169
+ display: none;
170
+ top: 0px;
171
+ left: 0px;
172
+ width: 4em;
173
+ cursor: default;
174
+ border-width: 0 1px 1px 1px;
175
+ border-style: solid;
176
+ border-color: #797979;
177
+ background: url("normal-bg.gif"); color: #000;
178
+ z-index: 100;
179
+ font-size: 90%;
180
+ }
181
+
182
+ .calendar .combo .label,
183
+ .calendar .combo .label-IEfix {
184
+ text-align: center;
185
+ padding: 1px;
186
+ }
187
+
188
+ .calendar .combo .label-IEfix {
189
+ width: 4em;
190
+ }
191
+
192
+ .calendar .combo .hilite {
193
+ background: url("hover-bg.gif"); color: #000;
194
+ }
195
+
196
+ .calendar .combo .active {
197
+ background: url("active-bg.gif"); color: #fff;
198
+ font-weight: bold;
199
+ }
200
+
201
+ .calendar td.time {
202
+ border-top: 1px solid #797979;
203
+ padding: 1px 0px;
204
+ text-align: center;
205
+ background: url("dark-bg.gif");
206
+ }
207
+
208
+ .calendar td.time .hour,
209
+ .calendar td.time .minute,
210
+ .calendar td.time .ampm {
211
+ padding: 0px 5px 0px 6px;
212
+ font-weight: bold;
213
+ background: url("normal-bg.gif"); color: #000;
214
+ }
215
+
216
+ .calendar td.time .hour,
217
+ .calendar td.time .minute {
218
+ font-family: monospace;
219
+ }
220
+
221
+ .calendar td.time .ampm {
222
+ text-align: center;
223
+ }
224
+
225
+ .calendar td.time .colon {
226
+ padding: 0px 2px 0px 3px;
227
+ font-weight: bold;
228
+ }
229
+
230
+ .calendar td.time span.hilite {
231
+ background: url("hover-bg.gif"); color: #000;
232
+ }
233
+
234
+ .calendar td.time span.active {
235
+ background: url("active-bg.gif"); color: #fff;
236
+ }