1 | <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.2//EN"> |
---|
2 | <html> |
---|
3 | <head> |
---|
4 | <title>jscalendar release notes</title> |
---|
5 | |
---|
6 | <style type="text/css"> |
---|
7 | h1 { border-bottom: 1px solid #000; } |
---|
8 | h2 { border-bottom: 1px solid #444; } |
---|
9 | ul li { margin-top: 0.5em; margin-bottom: 0.5em; } |
---|
10 | </style> |
---|
11 | </head> |
---|
12 | |
---|
13 | <body> |
---|
14 | <h1>jscalendar release notes</h1> |
---|
15 | |
---|
16 | <p>This release compiled at Friday, 6 Feb 2004 (21:40).</p> |
---|
17 | |
---|
18 | <h2>0.9.6</h2> |
---|
19 | |
---|
20 | <ul> |
---|
21 | |
---|
22 | <li> |
---|
23 | "Smart" (TM :-) positioning algorithm. The new algorithm will |
---|
24 | try to keep the calendar in the browser view, which is helpful |
---|
25 | in situations when the input field is near the bottom or the |
---|
26 | right edge. This code is only tested with IE and Mozilla, but |
---|
27 | it should work with other browsers too. Many thanks to <a |
---|
28 | href="http://www.ex3.com">Sunny Chowdhury</a> for sponsoring |
---|
29 | this feature! |
---|
30 | </li> |
---|
31 | |
---|
32 | <li> |
---|
33 | Support for IE5/Win is back. I also want to thank Janusz |
---|
34 | Piwowarski for keeping his eye on the CVS ;-) He reviewed my |
---|
35 | IE5-related changes and sent me a much cleaner patch. |
---|
36 | </li> |
---|
37 | |
---|
38 | <li> |
---|
39 | The calendar will now allow any day of week to be "the first |
---|
40 | day of week". This was requested long time ago, by someone |
---|
41 | whose name I forgot (sorry). The reason was that in certain |
---|
42 | countries weeks start on Saturday. So I thought that instead |
---|
43 | of having a "mondayFirst" and a "saturdayFirst" parameter, |
---|
44 | :-), it's better to have a "firstDayOfWeek" parameter; now |
---|
45 | it's present and its meaning is: "0 for Sunday", "1 for |
---|
46 | Monday", "2 for Tuesday", etc. The equivalent parameter for |
---|
47 | Calendar.setup is "firstDay". The end user can also change |
---|
48 | it very easy: click on the day name in the calendar display. |
---|
49 | </li> |
---|
50 | |
---|
51 | <li> |
---|
52 | The above feature triggered one <b>important change</b>: the |
---|
53 | notion of "weekend" is now defined in the language file. |
---|
54 | Added parameters: |
---|
55 | |
---|
56 | <pre> |
---|
57 | Calendar._TT["WEEKEND"] = "0,6"; |
---|
58 | Calendar._TT["DAY_FIRST"] = "Display %s first";</pre> |
---|
59 | |
---|
60 | "WEEKEND" specifies a string with comma-separated numbers from |
---|
61 | 0 to 7; they define what days are marked as "weekend". 5 and |
---|
62 | 6 mean, of course, "Sunday" and "Saturday". Day first is the |
---|
63 | tooltip displayed when a day name is hovered; "%s" will get |
---|
64 | replaced with the day name. Updated languages are "en" and |
---|
65 | "ro", which I maintain. Please note that languages wich are |
---|
66 | not updated <b>will not work</b>. If yours is one of them, |
---|
67 | please consider fixing it and sending me the fix so that I can |
---|
68 | include it in the distro. |
---|
69 | </li> |
---|
70 | |
---|
71 | <li> |
---|
72 | The calendar can now display days from the months adjacent to |
---|
73 | the currently displayed one. This is optional, of course, and |
---|
74 | the parameter name is "showsOtherMonths" (or "showOthers" in |
---|
75 | Calendar.setup). All theme files were updated. |
---|
76 | </li> |
---|
77 | |
---|
78 | <li> |
---|
79 | Displays "Time:" near the time selector, only if defined in |
---|
80 | the language file. |
---|
81 | </li> |
---|
82 | |
---|
83 | <li> |
---|
84 | Some bugs fixed in the date parsing code (which has also been |
---|
85 | rewritten a little bit cleaner). |
---|
86 | </li> |
---|
87 | |
---|
88 | <li> |
---|
89 | Calendar.setup will now configure the calendar to trigger the |
---|
90 | input fields' "onchange" event, if specified, when a date is |
---|
91 | selected. |
---|
92 | </li> |
---|
93 | |
---|
94 | <li> |
---|
95 | New parameter in Calendar.setup: "cache" (<b>defaults to |
---|
96 | false</b>). If set to true then the popup calendar object |
---|
97 | will be "cached", meaning, it will be created only once, no |
---|
98 | matter how many input fields are there in the page. Sometimes |
---|
99 | this is not desirable, which is why I've added this |
---|
100 | parameter. Please note that it defaults to "false" (thus the |
---|
101 | default behavior has changed). |
---|
102 | </li> |
---|
103 | |
---|
104 | <li> |
---|
105 | Added a simple PHP wrapper. It provides code which loads all |
---|
106 | the required scripts and theme file, and one function which |
---|
107 | creates and configures an input field for date input. It |
---|
108 | takes care of creating and assigning unique ID-s for the |
---|
109 | calendar fields and it also creates the "Calendar.setup" code. |
---|
110 | Functions to create more specialized fields can be added very |
---|
111 | easily. This feature was requested by the FreeMED.org project |
---|
112 | (thanks for donating!). |
---|
113 | </li> |
---|
114 | |
---|
115 | </ul> |
---|
116 | |
---|
117 | <p>Wow, there were quite some changes :-D Enjoy it!</p> |
---|
118 | |
---|
119 | <h2>0.9.5</h2> |
---|
120 | |
---|
121 | <p> |
---|
122 | This release's primary goal is to fix a wrong license statement which |
---|
123 | can be found in some files from 0.9.4. For instance in README or |
---|
124 | calendar.js, the statement was that the code is distributed under the |
---|
125 | GNU GPL; that's because I had plans to change the license, then |
---|
126 | changed my mind but unfortunately I committed files so. I am sorry |
---|
127 | for this inconvenience, please use the latest (0.9.5) release which is |
---|
128 | fully covered by LGPL. |
---|
129 | </p> |
---|
130 | |
---|
131 | <p>Other changes:</p> |
---|
132 | |
---|
133 | <ul> |
---|
134 | |
---|
135 | <li> |
---|
136 | <b>Fixed</b> an annoying bug that prevented the calendar to display |
---|
137 | correctly when it was configured for an input field inside a |
---|
138 | <b>scrolling area</b>. <b>Many thanks</b> to Ian Barrack (<a |
---|
139 | href="http://www.simban.com">Simban.com</a>) who pointed it up and |
---|
140 | donated quite some money for the Calendar project! |
---|
141 | </li> |
---|
142 | |
---|
143 | <li> |
---|
144 | All examples use UTF-8 now; the translations may not be all |
---|
145 | up-to-date, but I <strong>strongly</strong> suggest everyone to use |
---|
146 | UTF-8; other encodings are a plain mess. So far I know for sure |
---|
147 | that Romanian translation will work with UTF-8 and <em>not |
---|
148 | anymore</em> with ISO-8859-2. Other translations are probably |
---|
149 | usable under UTF-8, but if your preferred language isn't... ;-) |
---|
150 | please make it and send it to me for inclusion. |
---|
151 | </li> |
---|
152 | |
---|
153 | <li> |
---|
154 | Fixed small bug in the documentation (one footnote didn't appear |
---|
155 | where it should have). |
---|
156 | </li> |
---|
157 | |
---|
158 | <li> |
---|
159 | Updated translations: DE, ES, HU, IT, RO. Thanks to everyone who |
---|
160 | sent translations! |
---|
161 | </li> |
---|
162 | |
---|
163 | </ul> |
---|
164 | |
---|
165 | <h2>0.9.4</h2> |
---|
166 | |
---|
167 | <h3>New stuff</h3> |
---|
168 | |
---|
169 | <ul> |
---|
170 | |
---|
171 | <li>Supports time selection. Yes. ;-) This work has been largely |
---|
172 | sponsored by <strong>Himanshukumar Shah</strong> (thank you!). See |
---|
173 | the docs and example files for details on how to setup.</li> |
---|
174 | |
---|
175 | <li>Easy to link 2 or more fields by using the new |
---|
176 | <code>onUpdate</code> parameter of <code>Calendar.setup</code>. This |
---|
177 | is useful, say, to automatically set a value in a second field based |
---|
178 | on the value selected in the first field. See the documentation and |
---|
179 | first sample in <a href="simple-1.html">simple-1.html</a>.</li> |
---|
180 | |
---|
181 | <li>Other <code>Calendar.setup</code> low-level parameters, for those |
---|
182 | wanting to have the complete control: <code>onSelect</code> and |
---|
183 | <code>onClose</code>. The handlers are called when something is |
---|
184 | selected in the calendar or when the calendar is closed.</li> |
---|
185 | |
---|
186 | <li>The translation files can optionally include the short day names |
---|
187 | and the short month names. That's because in some languages, like |
---|
188 | German, the short form is not the first 3 letters of the entire name |
---|
189 | but only the first 2. Also in other languages short names can't be |
---|
190 | as easily derived from the full name by just calling substr, so this |
---|
191 | patch solves the problem.</li> |
---|
192 | |
---|
193 | <li>Implemented a nice way to make some dates "special" (look |
---|
194 | different). Specifically, the <code>setDisabledHandler</code> method |
---|
195 | was replaced with the more general <code>setDateStatusHandler</code> |
---|
196 | method (the old one is still available for backwards compatibility but |
---|
197 | <em>will</em> be removed). More details about this in the |
---|
198 | documentation. Also see <a href="simple-3.html">simple-3.html</a> |
---|
199 | for a live sample.</li> |
---|
200 | |
---|
201 | <li>Date parsing and formatting engine is now rewritten and supports a |
---|
202 | subset of <code>strftime</code> format specifiers from ANSI C. This |
---|
203 | makes it possible to use dates like "YYYYMMDD" (the corresponding |
---|
204 | format for this would be "%Y%m%d"). Details in the documentation. |
---|
205 | <b>Please note that the new engine is not compatibile with older |
---|
206 | calendar releases!</b></li> |
---|
207 | |
---|
208 | <li>Along with the new date parser I workarounded an unpleasant crash |
---|
209 | that occurred in IE when certain accented characters appeared in the |
---|
210 | texts. I think German was one of the language with such problems, and |
---|
211 | the workaround was to use the letter without an accent. Well, now you |
---|
212 | can translate to whatever you want.</li> |
---|
213 | |
---|
214 | <li>"Fixes" (I mean, "horrible workarounds") for Konqueror (and |
---|
215 | hopefully Safari). Unfortunately, this otherwise excellent browser |
---|
216 | still has some bugs that keep the calendar from working |
---|
217 | <em>exactly</em> as it should.. But they're going to be fixed, |
---|
218 | right? ;-)</li> |
---|
219 | |
---|
220 | <li>CSS themes got pretty much modified too so if you wrote your theme |
---|
221 | you need to update it. Aside for the time selector support, the CSS |
---|
222 | themes contain a simple hack that makes the navigation buttons show |
---|
223 | a little arrow in the lower-right corner which indicates that if one |
---|
224 | holds the mouse a menu will appear.</li> |
---|
225 | |
---|
226 | </ul> |
---|
227 | |
---|
228 | <h3>Translation files</h3> |
---|
229 | |
---|
230 | <p>The translation files need to be updated in order for the calendar to |
---|
231 | work properly. Currently the only updated files are calendar-en.js |
---|
232 | (main file) and calendar-ro.js (well, yes, I am a Romanian ;-).</p> |
---|
233 | |
---|
234 | <p>Specifically, they need the following:</p> |
---|
235 | |
---|
236 | <ul> |
---|
237 | |
---|
238 | <li>Correct date format, according with the new format specifiers |
---|
239 | introduced in 0.9.4. Details about the available format specifiers |
---|
240 | in the documentation</li> |
---|
241 | |
---|
242 | <li>Short day or month names, <em>if required</em>. If they can be |
---|
243 | derived by taking the first N letters of the full name then a simple |
---|
244 | Calendar._SDN_len = N or Calendar._SMN_len = N will suffice. If N |
---|
245 | is 3 then nothing needs to be done as we take it for granted if no |
---|
246 | other option is offered ;-)</li> |
---|
247 | |
---|
248 | <li>We have some new texts that shows short usage information as well |
---|
249 | as copyright information.</li> |
---|
250 | |
---|
251 | </ul> |
---|
252 | |
---|
253 | <p>If your favorite language is not there yet, or it is but not updated |
---|
254 | according to the main calendar-en.js file, then please consider |
---|
255 | translating calendar-en.js and send the translation back to me so that |
---|
256 | I include it in the official distribution.</p> |
---|
257 | |
---|
258 | <h3>Bug status</h3> |
---|
259 | |
---|
260 | <p>Check <a |
---|
261 | href="http://sourceforge.net/tracker/?atid=544285&group_id=75569&func=browse">SourceForge</a>, |
---|
262 | I didn't keep track. However, there were a lot of bugfixes.</p> |
---|
263 | |
---|
264 | <h2>0.9.3</h2> |
---|
265 | |
---|
266 | <h3>New stuff</h3> |
---|
267 | |
---|
268 | <ul> |
---|
269 | |
---|
270 | <li>Opera 7 compatibility — keyboard navigation is |
---|
271 | still not available; text selection can't be disabled, leading to an |
---|
272 | ugly effect when walking through the month/year menus.</li> |
---|
273 | |
---|
274 | <li>Ability to align the calendar relative to the input field (or any |
---|
275 | other element). Vertical: top, center, bottom. Horizontal: left, |
---|
276 | center, right. This is established as a new parameter for |
---|
277 | <tt>showAtElement</tt>.</li> |
---|
278 | |
---|
279 | <li>Added <tt>dateClicked</tt> property (boolean). This can be |
---|
280 | inspected in the "onSelect" handler to determine if a date was |
---|
281 | really clicked or the user only changed month/year using the menus. |
---|
282 | You <em>need</em> to check this for "single-click" calendars and |
---|
283 | only close/hide the calendar if it's <tt>true</tt>.</li> |
---|
284 | |
---|
285 | <li>Full documentation in <a href="doc/html/reference.html">HTML</a> |
---|
286 | and <a href="doc/reference.pdf">PDF</a> format is now available in the |
---|
287 | distribution archive.</li> |
---|
288 | |
---|
289 | <li>New language definition files: HU, HR, PT, ZH. Thanks those who |
---|
290 | submitted!</li> |
---|
291 | |
---|
292 | </ul> |
---|
293 | |
---|
294 | <h3>Bug status</h3> |
---|
295 | |
---|
296 | <p>This covers only those bugs that have been reported <a |
---|
297 | href="http://sourceforge.net/projects/jscalendar" target="_blank" |
---|
298 | title="Project page at SourceForge">at SourceForge</a>.</p> |
---|
299 | |
---|
300 | <ol> |
---|
301 | |
---|
302 | <li><a href="http://sourceforge.net/tracker/index.php?func=detail&aid=703238&group_id=75569&atid=544285" target="_blank" |
---|
303 | title="Go to bug description at sourceforge"><tt>#703,238</tt></a> — fixed</li> |
---|
304 | <li><a href="http://sourceforge.net/tracker/index.php?func=detail&aid=703814&group_id=75569&atid=544285" target="_blank" |
---|
305 | title="Go to bug description at sourceforge"><tt>#703,814</tt></a> — fixed</li> |
---|
306 | <li><a href="http://sourceforge.net/tracker/index.php?func=detail&aid=716777&group_id=75569&atid=544285" target="_blank" |
---|
307 | title="Go to bug description at sourceforge"><tt>#716,777</tt></a> — closed (was fixed already in 0.9.2-1)</li> |
---|
308 | <li><a href="http://sourceforge.net/tracker/index.php?func=detail&aid=723335&group_id=75569&atid=544285" target="_blank" |
---|
309 | title="Go to bug description at sourceforge"><tt>#723,335</tt></a> — fixed</li> |
---|
310 | <li><a href="http://sourceforge.net/tracker/index.php?func=detail&aid=715122&group_id=75569&atid=544285" target="_blank" |
---|
311 | title="Go to bug description at sourceforge"><tt>#715,122</tt></a> — feature request; implemented.</li> |
---|
312 | <li><a href="http://sourceforge.net/tracker/index.php?func=detail&aid=721206&group_id=75569&atid=544285" target="_blank" |
---|
313 | title="Go to bug description at sourceforge"><tt>#721,206</tt></a> — fixed (added "refresh()" function)</li> |
---|
314 | <li><a href="http://sourceforge.net/tracker/index.php?func=detail&aid=721833&group_id=75569&atid=544285" target="_blank" |
---|
315 | title="Go to bug description at sourceforge"><tt>#721,833</tt></a> — fixed (bug concerning the "yy" format |
---|
316 | parsing)</li> |
---|
317 | <li><a href="http://sourceforge.net/tracker/index.php?func=detail&aid=721833&group_id=75569&atid=544285" target="_blank" |
---|
318 | title="Go to bug description at sourceforge"><tt>#721,833</tt></a> — won't fix (we won't set the time to |
---|
319 | midnight; time might actually be useful when we implement support |
---|
320 | for time selection). |
---|
321 | |
---|
322 | </ol> |
---|
323 | |
---|
324 | <hr /> |
---|
325 | <address><a href="http://dynarch.com/mishoo/">Mihai Bazon</a></address> |
---|
326 | <!-- Created: Tue Jul 8 17:29:37 EEST 2003 --> |
---|
327 | <!-- hhmts start --> |
---|
328 | Last modified on Wed Oct 29 02:37:07 2003 |
---|
329 | <!-- hhmts end --> |
---|
330 | <!-- doc-lang: English --> |
---|
331 | </body> |
---|
332 | </html> |
---|
333 | |
---|
334 | |
---|