Skip to content

Commit b7c99d1

Browse files
Fix reorg error
1 parent 693c410 commit b7c99d1

File tree

1 file changed

+95
-97
lines changed

1 file changed

+95
-97
lines changed

jquery-ui-timepicker-addon.js

Lines changed: 95 additions & 97 deletions
Original file line numberDiff line numberDiff line change
@@ -1439,6 +1439,101 @@ $.datepicker._optionDatepicker = function(target, name, value) {
14391439
return this._base_optionDatepicker(target, name, value);
14401440
};
14411441

1442+
//#######################################################################################
1443+
// jQuery extend now ignores nulls!
1444+
//#######################################################################################
1445+
function extendRemove(target, props) {
1446+
$.extend(target, props);
1447+
for (var name in props) {
1448+
if (props[name] === null || props[name] === undefined) {
1449+
target[name] = props[name];
1450+
}
1451+
}
1452+
return target;
1453+
}
1454+
1455+
//#######################################################################################
1456+
// Splits datetime string into date ans time substrings.
1457+
// Throws exception when date can't be parsed
1458+
// If only date is present, time substring eill be ''
1459+
//#######################################################################################
1460+
var splitDateTime = function(dateFormat, dateTimeString, dateSettings)
1461+
{
1462+
try {
1463+
var date = $.datepicker._base_parseDate(dateFormat, dateTimeString, dateSettings);
1464+
} catch (err) {
1465+
if (err.indexOf(":") >= 0) {
1466+
// Hack! The error message ends with a colon, a space, and
1467+
// the "extra" characters. We rely on that instead of
1468+
// attempting to perfectly reproduce the parsing algorithm.
1469+
var dateStringLength = dateTimeString.length-(err.length-err.indexOf(':')-2);
1470+
var timeString = dateTimeString.substring(dateStringLength);
1471+
1472+
return [dateTimeString.substring(0, dateStringLength), dateTimeString.substring(dateStringLength)];
1473+
1474+
} else {
1475+
throw err;
1476+
}
1477+
}
1478+
return [dateTimeString, ''];
1479+
};
1480+
1481+
//#######################################################################################
1482+
// Internal function to parse datetime interval
1483+
// Returns: {date: Date, timeObj: Object}, where
1484+
// date - parsed date without time (type Date)
1485+
// timeObj = {hour: , minute: , second: , millisec: } - parsed time. Optional
1486+
//#######################################################################################
1487+
var parseDateTimeInternal = function(dateFormat, timeFormat, dateTimeString, dateSettings, timeSettings)
1488+
{
1489+
var date;
1490+
var splitRes = splitDateTime(dateFormat, dateTimeString, dateSettings);
1491+
date = $.datepicker._base_parseDate(dateFormat, splitRes[0], dateSettings);
1492+
if (splitRes[1] !== '')
1493+
{
1494+
var timeString = splitRes[1];
1495+
var separator = timeSettings && timeSettings.separator ? timeSettings.separator : $.timepicker._defaults.separator;
1496+
if ( timeString.indexOf(separator) !== 0) {
1497+
throw 'Missing time separator';
1498+
}
1499+
timeString = timeString.substring(separator.length);
1500+
var parsedTime = $.datepicker.parseTime(timeFormat, timeString, timeSettings);
1501+
if (parsedTime === null) {
1502+
throw 'Wrong time format';
1503+
}
1504+
return {date: date, timeObj: parsedTime};
1505+
} else {
1506+
return {date: date};
1507+
}
1508+
};
1509+
1510+
//#######################################################################################
1511+
// Internal function to set timezone_select to the local timezone
1512+
//#######################################################################################
1513+
var selectLocalTimeZone = function(tp_inst, date)
1514+
{
1515+
if (tp_inst && tp_inst.timezone_select) {
1516+
tp_inst._defaults.useLocalTimezone = true;
1517+
var now = typeof date !== 'undefined' ? date : new Date();
1518+
var tzoffset = timeZoneString(now);
1519+
if (tp_inst._defaults.timezoneIso8601) {
1520+
tzoffset = tzoffset.substring(0, 3) + ':' + tzoffset.substring(3);
1521+
}
1522+
tp_inst.timezone_select.val(tzoffset);
1523+
}
1524+
};
1525+
1526+
// Input: Date Object
1527+
// Output: String with timezone offset, e.g. '+0100'
1528+
var timeZoneString = function(date)
1529+
{
1530+
var off = date.getTimezoneOffset() * -10100 / 60;
1531+
var timezone = (off >= 0 ? '+' : '-') + Math.abs(off).toString().substr(1);
1532+
return timezone;
1533+
};
1534+
1535+
$.timepicker = new Timepicker(); // singleton instance
1536+
$.timepicker.version = "1.0.2";
14421537

14431538
//#######################################################################################
14441539
// Changes by simonvwade to better handle time range limits
@@ -1547,101 +1642,4 @@ $.timepicker.handleRange = function( method, startTime, endTime, options ) {
15471642
return $([startTime.get(0), endTime.get(0)]);
15481643
};
15491644

1550-
//#######################################################################################
1551-
// jQuery extend now ignores nulls!
1552-
//#######################################################################################
1553-
function extendRemove(target, props) {
1554-
$.extend(target, props);
1555-
for (var name in props) {
1556-
if (props[name] === null || props[name] === undefined) {
1557-
target[name] = props[name];
1558-
}
1559-
}
1560-
return target;
1561-
}
1562-
1563-
//#######################################################################################
1564-
// Splits datetime string into date ans time substrings.
1565-
// Throws exception when date can't be parsed
1566-
// If only date is present, time substring eill be ''
1567-
//#######################################################################################
1568-
var splitDateTime = function(dateFormat, dateTimeString, dateSettings)
1569-
{
1570-
try {
1571-
var date = $.datepicker._base_parseDate(dateFormat, dateTimeString, dateSettings);
1572-
} catch (err) {
1573-
if (err.indexOf(":") >= 0) {
1574-
// Hack! The error message ends with a colon, a space, and
1575-
// the "extra" characters. We rely on that instead of
1576-
// attempting to perfectly reproduce the parsing algorithm.
1577-
var dateStringLength = dateTimeString.length-(err.length-err.indexOf(':')-2);
1578-
var timeString = dateTimeString.substring(dateStringLength);
1579-
1580-
return [dateTimeString.substring(0, dateStringLength), dateTimeString.substring(dateStringLength)];
1581-
1582-
} else {
1583-
throw err;
1584-
}
1585-
}
1586-
return [dateTimeString, ''];
1587-
};
1588-
1589-
//#######################################################################################
1590-
// Internal function to parse datetime interval
1591-
// Returns: {date: Date, timeObj: Object}, where
1592-
// date - parsed date without time (type Date)
1593-
// timeObj = {hour: , minute: , second: , millisec: } - parsed time. Optional
1594-
//#######################################################################################
1595-
var parseDateTimeInternal = function(dateFormat, timeFormat, dateTimeString, dateSettings, timeSettings)
1596-
{
1597-
var date;
1598-
var splitRes = splitDateTime(dateFormat, dateTimeString, dateSettings);
1599-
date = $.datepicker._base_parseDate(dateFormat, splitRes[0], dateSettings);
1600-
if (splitRes[1] !== '')
1601-
{
1602-
var timeString = splitRes[1];
1603-
var separator = timeSettings && timeSettings.separator ? timeSettings.separator : $.timepicker._defaults.separator;
1604-
if ( timeString.indexOf(separator) !== 0) {
1605-
throw 'Missing time separator';
1606-
}
1607-
timeString = timeString.substring(separator.length);
1608-
var parsedTime = $.datepicker.parseTime(timeFormat, timeString, timeSettings);
1609-
if (parsedTime === null) {
1610-
throw 'Wrong time format';
1611-
}
1612-
return {date: date, timeObj: parsedTime};
1613-
} else {
1614-
return {date: date};
1615-
}
1616-
};
1617-
1618-
//#######################################################################################
1619-
// Internal function to set timezone_select to the local timezone
1620-
//#######################################################################################
1621-
var selectLocalTimeZone = function(tp_inst, date)
1622-
{
1623-
if (tp_inst && tp_inst.timezone_select) {
1624-
tp_inst._defaults.useLocalTimezone = true;
1625-
var now = typeof date !== 'undefined' ? date : new Date();
1626-
var tzoffset = timeZoneString(now);
1627-
if (tp_inst._defaults.timezoneIso8601) {
1628-
tzoffset = tzoffset.substring(0, 3) + ':' + tzoffset.substring(3);
1629-
}
1630-
tp_inst.timezone_select.val(tzoffset);
1631-
}
1632-
};
1633-
1634-
// Input: Date Object
1635-
// Output: String with timezone offset, e.g. '+0100'
1636-
var timeZoneString = function(date)
1637-
{
1638-
var off = date.getTimezoneOffset() * -10100 / 60;
1639-
var timezone = (off >= 0 ? '+' : '-') + Math.abs(off).toString().substr(1);
1640-
return timezone;
1641-
};
1642-
1643-
$.timepicker = new Timepicker(); // singleton instance
1644-
$.timepicker.version = "1.0.2";
1645-
1646-
16471645
})(jQuery);

0 commit comments

Comments
 (0)