Version Notes
1.3.2
Download this release
Release Info
| Developer | Magento Core Team |
| Extension | Lib_Js_Calendar |
| Version | 1.3.2 |
| Comparing to | |
| See all releases | |
Code changes from version 1.3.1 to 1.3.2
- js/calendar/calendar.js +38 -20
- package.xml +5 -5
js/calendar/calendar.js
CHANGED
|
@@ -416,7 +416,7 @@ Calendar.tableMouseUp = function(ev) {
|
|
| 416 |
var mon = Calendar.findMonth(target);
|
| 417 |
var date = null;
|
| 418 |
if (mon) {
|
| 419 |
-
date = new
|
| 420 |
if (mon.month != date.getMonth()) {
|
| 421 |
date.setMonth(mon.month);
|
| 422 |
cal.setDate(date);
|
|
@@ -426,7 +426,7 @@ Calendar.tableMouseUp = function(ev) {
|
|
| 426 |
} else {
|
| 427 |
var year = Calendar.findYear(target);
|
| 428 |
if (year) {
|
| 429 |
-
date = new
|
| 430 |
if (year.year != date.getFullYear()) {
|
| 431 |
date.setFullYear(year.year);
|
| 432 |
cal.setDate(date);
|
|
@@ -660,7 +660,7 @@ Calendar.cellClick = function(el, ev) {
|
|
| 660 |
date = cal.date;
|
| 661 |
var other_month = !(cal.dateClicked = !el.otherMonth);
|
| 662 |
if (!other_month && !cal.currentDateEl)
|
| 663 |
-
cal._toggleMultipleDate(new
|
| 664 |
else
|
| 665 |
newdate = !el.disabled;
|
| 666 |
// a date was clicked
|
|
@@ -672,9 +672,9 @@ Calendar.cellClick = function(el, ev) {
|
|
| 672 |
cal.callCloseHandler();
|
| 673 |
return;
|
| 674 |
}
|
| 675 |
-
date = new
|
| 676 |
if (el.navtype == 0)
|
| 677 |
-
date.setDateOnly(new
|
| 678 |
// unless "today" was clicked, we assume no date was clicked so
|
| 679 |
// the selected handler will know not to close the calenar when
|
| 680 |
// in single-click mode.
|
|
@@ -795,7 +795,7 @@ Calendar.prototype.create = function (_par) {
|
|
| 795 |
parent = _par;
|
| 796 |
this.isPopup = false;
|
| 797 |
}
|
| 798 |
-
this.date = this.dateStr ? new
|
| 799 |
|
| 800 |
var table = Calendar.createElement("table");
|
| 801 |
this.table = table;
|
|
@@ -1074,12 +1074,12 @@ Calendar._keyEvent = function(ev) {
|
|
| 1074 |
ne = cal.ar_days[y][x];
|
| 1075 |
};setVars();
|
| 1076 |
function prevMonth() {
|
| 1077 |
-
var date = new
|
| 1078 |
date.setDate(date.getDate() - step);
|
| 1079 |
cal.setDate(date);
|
| 1080 |
};
|
| 1081 |
function nextMonth() {
|
| 1082 |
-
var date = new
|
| 1083 |
date.setDate(date.getDate() + step);
|
| 1084 |
cal.setDate(date);
|
| 1085 |
};
|
|
@@ -1146,7 +1146,7 @@ Calendar._keyEvent = function(ev) {
|
|
| 1146 |
* (RE)Initializes the calendar to the given date and firstDayOfWeek
|
| 1147 |
*/
|
| 1148 |
Calendar.prototype._init = function (firstDayOfWeek, date) {
|
| 1149 |
-
var today = new
|
| 1150 |
TY = today.getFullYear(),
|
| 1151 |
TM = today.getMonth(),
|
| 1152 |
TD = today.getDate();
|
|
@@ -1160,7 +1160,7 @@ Calendar.prototype._init = function (firstDayOfWeek, date) {
|
|
| 1160 |
date.setFullYear(year);
|
| 1161 |
}
|
| 1162 |
this.firstDayOfWeek = firstDayOfWeek;
|
| 1163 |
-
this.date = new
|
| 1164 |
var month = date.getMonth();
|
| 1165 |
var mday = date.getDate();
|
| 1166 |
var no_days = date.getMonthDays();
|
|
@@ -1231,7 +1231,7 @@ Calendar.prototype._init = function (firstDayOfWeek, date) {
|
|
| 1231 |
}
|
| 1232 |
}
|
| 1233 |
if (!cell.disabled) {
|
| 1234 |
-
cell.caldate = new
|
| 1235 |
cell.ttip = "_";
|
| 1236 |
if (!this.multiple && current_month
|
| 1237 |
&& iday == mday && this.hiliteToday) {
|
|
@@ -1256,7 +1256,7 @@ Calendar.prototype._init = function (firstDayOfWeek, date) {
|
|
| 1256 |
this.table.style.visibility = "visible";
|
| 1257 |
this._initMultipleDates();
|
| 1258 |
// PROFILE
|
| 1259 |
-
// this.tooltips.innerHTML = "Generated in " + ((new
|
| 1260 |
};
|
| 1261 |
|
| 1262 |
Calendar.prototype._initMultipleDates = function() {
|
|
@@ -1649,7 +1649,7 @@ Date.DAY = 24 * Date.HOUR;
|
|
| 1649 |
Date.WEEK = 7 * Date.DAY;
|
| 1650 |
|
| 1651 |
Date.parseDate = function(str, fmt) {
|
| 1652 |
-
var today = new
|
| 1653 |
var y = 0;
|
| 1654 |
var m = -1;
|
| 1655 |
var d = 0;
|
|
@@ -1731,7 +1731,7 @@ Date.parseDate = function(str, fmt) {
|
|
| 1731 |
if (isNaN(hr)) hr = today.getHours();
|
| 1732 |
if (isNaN(min)) min = today.getMinutes();
|
| 1733 |
if (y != 0 && m != -1 && d != 0)
|
| 1734 |
-
return new
|
| 1735 |
y = 0; m = -1; d = 0;
|
| 1736 |
for (i = 0; i < a.length; ++i) {
|
| 1737 |
if (a[i].search(/[a-zA-Z]+/) != -1) {
|
|
@@ -1757,7 +1757,7 @@ Date.parseDate = function(str, fmt) {
|
|
| 1757 |
if (y == 0)
|
| 1758 |
y = today.getFullYear();
|
| 1759 |
if (m != -1 && d != 0)
|
| 1760 |
-
return new
|
| 1761 |
return today;
|
| 1762 |
};
|
| 1763 |
|
|
@@ -1776,15 +1776,15 @@ Date.prototype.getMonthDays = function(month) {
|
|
| 1776 |
|
| 1777 |
/** Returns the number of day in the year. */
|
| 1778 |
Date.prototype.getDayOfYear = function() {
|
| 1779 |
-
var now = new
|
| 1780 |
-
var then = new
|
| 1781 |
var time = now - then;
|
| 1782 |
return Math.floor(time / Date.DAY);
|
| 1783 |
};
|
| 1784 |
|
| 1785 |
/** Returns the number of the week in year, as defined in ISO 8601. */
|
| 1786 |
Date.prototype.getWeekNumber = function() {
|
| 1787 |
-
var d = new
|
| 1788 |
var DoW = d.getDay();
|
| 1789 |
d.setDate(d.getDate() - (DoW + 6) % 7 + 3); // Nearest Thu
|
| 1790 |
var ms = d.valueOf(); // GMT
|
|
@@ -1804,7 +1804,7 @@ Date.prototype.equalsTo = function(date) {
|
|
| 1804 |
|
| 1805 |
/** Set only the year, month, date parts (keep existing time) */
|
| 1806 |
Date.prototype.setDateOnly = function(date) {
|
| 1807 |
-
var tmp = new
|
| 1808 |
this.setDate(1);
|
| 1809 |
this.setFullYear(tmp.getFullYear());
|
| 1810 |
this.setMonth(tmp.getMonth());
|
|
@@ -1880,13 +1880,31 @@ Date.prototype.print = function (str) {
|
|
| 1880 |
|
| 1881 |
Date.prototype.__msh_oldSetFullYear = Date.prototype.setFullYear;
|
| 1882 |
Date.prototype.setFullYear = function(y) {
|
| 1883 |
-
var d = new
|
| 1884 |
d.__msh_oldSetFullYear(y);
|
| 1885 |
if (d.getMonth() != this.getMonth())
|
| 1886 |
this.setDate(28);
|
| 1887 |
this.__msh_oldSetFullYear(y);
|
| 1888 |
};
|
| 1889 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1890 |
// END: DATE OBJECT PATCHES
|
| 1891 |
|
| 1892 |
|
| 416 |
var mon = Calendar.findMonth(target);
|
| 417 |
var date = null;
|
| 418 |
if (mon) {
|
| 419 |
+
date = new CalendarDateObject(cal.date);
|
| 420 |
if (mon.month != date.getMonth()) {
|
| 421 |
date.setMonth(mon.month);
|
| 422 |
cal.setDate(date);
|
| 426 |
} else {
|
| 427 |
var year = Calendar.findYear(target);
|
| 428 |
if (year) {
|
| 429 |
+
date = new CalendarDateObject(cal.date);
|
| 430 |
if (year.year != date.getFullYear()) {
|
| 431 |
date.setFullYear(year.year);
|
| 432 |
cal.setDate(date);
|
| 660 |
date = cal.date;
|
| 661 |
var other_month = !(cal.dateClicked = !el.otherMonth);
|
| 662 |
if (!other_month && !cal.currentDateEl)
|
| 663 |
+
cal._toggleMultipleDate(new CalendarDateObject(date));
|
| 664 |
else
|
| 665 |
newdate = !el.disabled;
|
| 666 |
// a date was clicked
|
| 672 |
cal.callCloseHandler();
|
| 673 |
return;
|
| 674 |
}
|
| 675 |
+
date = new CalendarDateObject(cal.date);
|
| 676 |
if (el.navtype == 0)
|
| 677 |
+
date.setDateOnly(new CalendarDateObject()); // TODAY
|
| 678 |
// unless "today" was clicked, we assume no date was clicked so
|
| 679 |
// the selected handler will know not to close the calenar when
|
| 680 |
// in single-click mode.
|
| 795 |
parent = _par;
|
| 796 |
this.isPopup = false;
|
| 797 |
}
|
| 798 |
+
this.date = this.dateStr ? new CalendarDateObject(this.dateStr) : new CalendarDateObject();
|
| 799 |
|
| 800 |
var table = Calendar.createElement("table");
|
| 801 |
this.table = table;
|
| 1074 |
ne = cal.ar_days[y][x];
|
| 1075 |
};setVars();
|
| 1076 |
function prevMonth() {
|
| 1077 |
+
var date = new CalendarDateObject(cal.date);
|
| 1078 |
date.setDate(date.getDate() - step);
|
| 1079 |
cal.setDate(date);
|
| 1080 |
};
|
| 1081 |
function nextMonth() {
|
| 1082 |
+
var date = new CalendarDateObject(cal.date);
|
| 1083 |
date.setDate(date.getDate() + step);
|
| 1084 |
cal.setDate(date);
|
| 1085 |
};
|
| 1146 |
* (RE)Initializes the calendar to the given date and firstDayOfWeek
|
| 1147 |
*/
|
| 1148 |
Calendar.prototype._init = function (firstDayOfWeek, date) {
|
| 1149 |
+
var today = new CalendarDateObject(),
|
| 1150 |
TY = today.getFullYear(),
|
| 1151 |
TM = today.getMonth(),
|
| 1152 |
TD = today.getDate();
|
| 1160 |
date.setFullYear(year);
|
| 1161 |
}
|
| 1162 |
this.firstDayOfWeek = firstDayOfWeek;
|
| 1163 |
+
this.date = new CalendarDateObject(date);
|
| 1164 |
var month = date.getMonth();
|
| 1165 |
var mday = date.getDate();
|
| 1166 |
var no_days = date.getMonthDays();
|
| 1231 |
}
|
| 1232 |
}
|
| 1233 |
if (!cell.disabled) {
|
| 1234 |
+
cell.caldate = new CalendarDateObject(date);
|
| 1235 |
cell.ttip = "_";
|
| 1236 |
if (!this.multiple && current_month
|
| 1237 |
&& iday == mday && this.hiliteToday) {
|
| 1256 |
this.table.style.visibility = "visible";
|
| 1257 |
this._initMultipleDates();
|
| 1258 |
// PROFILE
|
| 1259 |
+
// this.tooltips.innerHTML = "Generated in " + ((new CalendarDateObject()) - today) + " ms";
|
| 1260 |
};
|
| 1261 |
|
| 1262 |
Calendar.prototype._initMultipleDates = function() {
|
| 1649 |
Date.WEEK = 7 * Date.DAY;
|
| 1650 |
|
| 1651 |
Date.parseDate = function(str, fmt) {
|
| 1652 |
+
var today = new CalendarDateObject();
|
| 1653 |
var y = 0;
|
| 1654 |
var m = -1;
|
| 1655 |
var d = 0;
|
| 1731 |
if (isNaN(hr)) hr = today.getHours();
|
| 1732 |
if (isNaN(min)) min = today.getMinutes();
|
| 1733 |
if (y != 0 && m != -1 && d != 0)
|
| 1734 |
+
return new CalendarDateObject(y, m, d, hr, min, 0);
|
| 1735 |
y = 0; m = -1; d = 0;
|
| 1736 |
for (i = 0; i < a.length; ++i) {
|
| 1737 |
if (a[i].search(/[a-zA-Z]+/) != -1) {
|
| 1757 |
if (y == 0)
|
| 1758 |
y = today.getFullYear();
|
| 1759 |
if (m != -1 && d != 0)
|
| 1760 |
+
return new CalendarDateObject(y, m, d, hr, min, 0);
|
| 1761 |
return today;
|
| 1762 |
};
|
| 1763 |
|
| 1776 |
|
| 1777 |
/** Returns the number of day in the year. */
|
| 1778 |
Date.prototype.getDayOfYear = function() {
|
| 1779 |
+
var now = new CalendarDateObject(this.getFullYear(), this.getMonth(), this.getDate(), 0, 0, 0);
|
| 1780 |
+
var then = new CalendarDateObject(this.getFullYear(), 0, 0, 0, 0, 0);
|
| 1781 |
var time = now - then;
|
| 1782 |
return Math.floor(time / Date.DAY);
|
| 1783 |
};
|
| 1784 |
|
| 1785 |
/** Returns the number of the week in year, as defined in ISO 8601. */
|
| 1786 |
Date.prototype.getWeekNumber = function() {
|
| 1787 |
+
var d = new CalendarDateObject(this.getFullYear(), this.getMonth(), this.getDate(), 0, 0, 0);
|
| 1788 |
var DoW = d.getDay();
|
| 1789 |
d.setDate(d.getDate() - (DoW + 6) % 7 + 3); // Nearest Thu
|
| 1790 |
var ms = d.valueOf(); // GMT
|
| 1804 |
|
| 1805 |
/** Set only the year, month, date parts (keep existing time) */
|
| 1806 |
Date.prototype.setDateOnly = function(date) {
|
| 1807 |
+
var tmp = new CalendarDateObject(date);
|
| 1808 |
this.setDate(1);
|
| 1809 |
this.setFullYear(tmp.getFullYear());
|
| 1810 |
this.setMonth(tmp.getMonth());
|
| 1880 |
|
| 1881 |
Date.prototype.__msh_oldSetFullYear = Date.prototype.setFullYear;
|
| 1882 |
Date.prototype.setFullYear = function(y) {
|
| 1883 |
+
var d = new CalendarDateObject(this);
|
| 1884 |
d.__msh_oldSetFullYear(y);
|
| 1885 |
if (d.getMonth() != this.getMonth())
|
| 1886 |
this.setDate(28);
|
| 1887 |
this.__msh_oldSetFullYear(y);
|
| 1888 |
};
|
| 1889 |
|
| 1890 |
+
CalendarDateObject.prototype = new Date();
|
| 1891 |
+
CalendarDateObject.prototype.constructor = CalendarDateObject;
|
| 1892 |
+
CalendarDateObject.prototype.parent = Date.prototype;
|
| 1893 |
+
function CalendarDateObject() {
|
| 1894 |
+
var dateObj;
|
| 1895 |
+
if (arguments.length > 1) {
|
| 1896 |
+
dateObj = eval("new this.parent.constructor("+Array.prototype.slice.call(arguments).join(",")+");");
|
| 1897 |
+
} else if (arguments.length > 0) {
|
| 1898 |
+
dateObj = new this.parent.constructor(arguments[0]);
|
| 1899 |
+
} else {
|
| 1900 |
+
dateObj = new this.parent.constructor();
|
| 1901 |
+
if (typeof(CalendarDateObject._LOCAL_TIMZEONE_OFFSET_SECONDS) != "undefined") {
|
| 1902 |
+
dateObj.setTime(dateObj.getTime()+(CalendarDateObject._LOCAL_TIMZEONE_OFFSET_SECONDS - dateObj.getTimezoneOffset())*1000);
|
| 1903 |
+
}
|
| 1904 |
+
}
|
| 1905 |
+
return dateObj;
|
| 1906 |
+
}
|
| 1907 |
+
|
| 1908 |
// END: DATE OBJECT PATCHES
|
| 1909 |
|
| 1910 |
|
package.xml
CHANGED
|
@@ -1,18 +1,18 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Lib_Js_Calendar</name>
|
| 4 |
-
<version>1.3.
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license>Mixed</license>
|
| 7 |
<channel>community</channel>
|
| 8 |
<extends/>
|
| 9 |
<summary>Javascript Calendar for Magento</summary>
|
| 10 |
<description>Javascript Calendar for Magento</description>
|
| 11 |
-
<notes>1.3.
|
| 12 |
<authors><author><name>Magento Core Team</name><user>auto-converted</user><email>core@magentocommerce.com</email></author></authors>
|
| 13 |
-
<date>2009-
|
| 14 |
-
<time>
|
| 15 |
-
<contents><target name="mageweb"><dir name="js"><dir name="calendar"><dir name="skins"><dir name="aqua"><file name="active-bg.gif" hash="f8fb9f2b7428c94b41320aa1bc9cf601"/><file name="dark-bg.gif" hash="949f6a11667cbdfbb96f8986464ba81b"/><file name="hover-bg.gif" hash="803ac4dbc56c05739f515d6ac6a66163"/><file name="menuarrow.gif" hash="1f8c673c8f76832febaeeac88a5f4353"/><file name="normal-bg.gif" hash="851134e42206fd3b173a3db654981bb6"/><file name="rowhover-bg.gif" hash="c097de7289bcf68723e89c248b9a2749"/><file name="status-bg.gif" hash="123882ca533030f07ee55c3818fc46b9"/><file name="theme.css" hash="ec69465f70d45213258fe1f89c52eceb"/><file name="title-bg.gif" hash="8d652fc5b683706fcbbf1103131c6ac2"/><file name="today-bg.gif" hash="9befc7d912cad22ddf2ec3fc21188bfd"/></dir></dir><file name="calendar-blue.css" hash="b8bb29e3c1573d0d2917cd3112b5052d"/><file name="calendar-blue2.css" hash="654dfacebcdd70c75ccaf2b4aee2d059"/><file name="calendar-brown.css" hash="f326a6a84037e549a9cd71a92346f210"/><file name="calendar-green.css" hash="b44e2c25ff56efaa6e37d84df202e5d5"/><file name="calendar-setup.js" hash="1bd1051973ea17f452fd8fe966940452"/><file name="calendar-system.css" hash="9b446e2ee0e9e4420fce20922405cec7"/><file name="calendar-tas.css" hash="fa3baa9367504954ef03c1f05d44f1a6"/><file name="calendar-win2k-1.css" hash="e3c61212e6abc28844005381d8fe9690"/><file name="calendar-win2k-2.css" hash="332d8bc7dab6acd575dba49a15b62947"/><file name="calendar-win2k-cold-1.css" hash="b0810ce949e6c954c54053c52b21e74a"/><file name="calendar-win2k-cold-2.css" hash="3487ec4e054141057673d794ce6d1032"/><file name="calendar.js" hash="
|
| 16 |
<compatible/>
|
| 17 |
<dependencies><required><package><name>Mage_Pear_Helpers</name><channel>community</channel><min>1.0.18800</min><max></max></package></required></dependencies>
|
| 18 |
</package>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Lib_Js_Calendar</name>
|
| 4 |
+
<version>1.3.2</version>
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license>Mixed</license>
|
| 7 |
<channel>community</channel>
|
| 8 |
<extends/>
|
| 9 |
<summary>Javascript Calendar for Magento</summary>
|
| 10 |
<description>Javascript Calendar for Magento</description>
|
| 11 |
+
<notes>1.3.2</notes>
|
| 12 |
<authors><author><name>Magento Core Team</name><user>auto-converted</user><email>core@magentocommerce.com</email></author></authors>
|
| 13 |
+
<date>2009-05-29</date>
|
| 14 |
+
<time>18:42:21</time>
|
| 15 |
+
<contents><target name="mageweb"><dir name="js"><dir name="calendar"><dir name="skins"><dir name="aqua"><file name="active-bg.gif" hash="f8fb9f2b7428c94b41320aa1bc9cf601"/><file name="dark-bg.gif" hash="949f6a11667cbdfbb96f8986464ba81b"/><file name="hover-bg.gif" hash="803ac4dbc56c05739f515d6ac6a66163"/><file name="menuarrow.gif" hash="1f8c673c8f76832febaeeac88a5f4353"/><file name="normal-bg.gif" hash="851134e42206fd3b173a3db654981bb6"/><file name="rowhover-bg.gif" hash="c097de7289bcf68723e89c248b9a2749"/><file name="status-bg.gif" hash="123882ca533030f07ee55c3818fc46b9"/><file name="theme.css" hash="ec69465f70d45213258fe1f89c52eceb"/><file name="title-bg.gif" hash="8d652fc5b683706fcbbf1103131c6ac2"/><file name="today-bg.gif" hash="9befc7d912cad22ddf2ec3fc21188bfd"/></dir></dir><file name="calendar-blue.css" hash="b8bb29e3c1573d0d2917cd3112b5052d"/><file name="calendar-blue2.css" hash="654dfacebcdd70c75ccaf2b4aee2d059"/><file name="calendar-brown.css" hash="f326a6a84037e549a9cd71a92346f210"/><file name="calendar-green.css" hash="b44e2c25ff56efaa6e37d84df202e5d5"/><file name="calendar-setup.js" hash="1bd1051973ea17f452fd8fe966940452"/><file name="calendar-system.css" hash="9b446e2ee0e9e4420fce20922405cec7"/><file name="calendar-tas.css" hash="fa3baa9367504954ef03c1f05d44f1a6"/><file name="calendar-win2k-1.css" hash="e3c61212e6abc28844005381d8fe9690"/><file name="calendar-win2k-2.css" hash="332d8bc7dab6acd575dba49a15b62947"/><file name="calendar-win2k-cold-1.css" hash="b0810ce949e6c954c54053c52b21e74a"/><file name="calendar-win2k-cold-2.css" hash="3487ec4e054141057673d794ce6d1032"/><file name="calendar.js" hash="9bd3d66fb1226c4c1d6e9fde9fbb1294"/><file name="img.gif" hash="c1e5255bd358fcd5a0779a0cc310a2fe"/><file name="menuarrow.gif" hash="b5a91d7a2755198b2eb729541ad3288c"/><file name="menuarrow2.gif" hash="1f8c673c8f76832febaeeac88a5f4353"/></dir></dir></target></contents>
|
| 16 |
<compatible/>
|
| 17 |
<dependencies><required><package><name>Mage_Pear_Helpers</name><channel>community</channel><min>1.0.18800</min><max></max></package></required></dependencies>
|
| 18 |
</package>
|
