r3177 committed - datepicker refactor: added new datepicker dev branch from trunk r3175 ...

r3177 committed - datepicker refactor: added new datepicker dev branch from trunk r3175 ...


Revision: 3177
Author: pazu2k@gmail.com
Date: Sun Aug 30 04:15:00 2009
Log: datepicker refactor: added new datepicker dev branch from trunk r3175
with refactored tests applied.
http://code.google.com/p/jquery-ui/source/detail?r=3177
Added:
/branches/dev/datepicker2

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_event_beforeShow.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_event_beforeShowDay.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_event_onChangeMonthYear.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_event_onClose.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_event_onSelect.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_destroy.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_dialog.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_disable.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_enable.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_getDate.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_hide.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_isDisabled.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_option.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_setDate.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_show.html

/branches/dev/datepicker2/tests/visual/datepicker/datepicker_option_showButtonPanel.html
Modified:
/branches/dev/datepicker2/tests/unit/datepicker/datepicker_core.js
/branches/dev/datepicker2/tests/unit/datepicker/datepicker_events.js
/branches/dev/datepicker2/tests/unit/datepicker/datepicker_options.js
/branches/dev/datepicker2/ui/ui.datepicker.js
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_event_beforeShow.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,26 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker event beforeShow</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker({beforeShow: function(input, inst) {
+            $(inst.dpDiv).css('border','1px solid red');
+            return {
+                numberOfMonths: 2
+            };
+        }});
+    });
+    </script>
+</head>
+<body>
+
+<input id="datepicker">
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_event_beforeShowDay.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,56 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker event beforeShowDay</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <style type="text/css">
+        .holiday { background-color: red; }
+        .birthday { background-color: blue; }
+        .event { background-color: green; }
+    </style>
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        // format: specialDays.year.month.day
+        var specialDays = {
+            '2009': {
+                '1': {'1': {tooltip: "New Year's Day", className: "holiday"}},
+                '4': {
+                    '10': {tooltip: "Good Friday", className: "holiday"},
+                    '13': {tooltip: "Easter Monday", className: "holiday"}
+                },
+                '5': {
+                    '4': {tooltip: "Early May Bank Holiday", className: "holiday"},
+                    '15': {tooltip: "Spring Bank Holiday", className: "holiday"}
+                },
+                '8': {'31': {tooltip: "Summer Bank Holiday", className: "holiday"}},
+                '12': {
+                    '25': {tooltip: "Christmas Day", className: "holiday"},
+                    '28': {tooltip: "Boxing Day", className: "holiday"}
+                }
+            }
+        };
+
+        $('#datepicker').datepicker({beforeShowDay: function(date) {
+            var d = date.getDate(),
+                m = date.getMonth()+1,
+                y = date.getFullYear();
+
+            if (specialDays[y] && specialDays[y][m] && specialDays[y][m][d]) {
+                var s = specialDays[y][m][d];
+                return [true, s.className, s.tooltip];
+            }
+            return [true,'']; // no change
+        }});
+    });
+    </script>
+</head>
+<body>
+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_event_onChangeMonthYear.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,30 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker event onChangeMonthYear</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker({onChangeMonthYear: function(year, month,
inst) {
+            $('#datepicker_year').val(year);
+            $('#datepicker_month').val(month);
+            $('#datepicker_day').val(inst.currentDay);
+        },
+        onSelect: function(dateText, inst) {
+            $('#datepicker_day').val(inst.currentDay);
+        }});
+    });
+    </script>
+</head>
+<body>
+
+

Date: <input id="datepicker_day" type="text" size="2"
readonly="readonly"> / <input id="datepicker_month" type="text" size="2"
readonly="readonly"> / <input id="datepicker_year" type="text" size="4"
readonly="readonly">



+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_event_onClose.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,34 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker event onClose</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker({onClose: function(dateString, inst) {
+            var today = new Date();
+            var dateObj = new Date(dateString
+ ' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds());
+
+            if (dateObj > today) {
+                $('#msg').text('You chose a date in the future.');
+            } else if (dateObj < today) {
+                $('#msg').text('You chose a date in the past.');
+            } else {
+                $('#msg').text('Today is the day!');
+            }
+        }});
+    });
+    </script>
+</head>
+<body>
+
+<input id="datepicker">
+
+<p id="msg" style="color: red;">
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_event_onSelect.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,24 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker event onSelect</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker({onSelect: function(dateText, inst) {
+            $('#mydate').val(dateText);
+        }});
+    });
+    </script>
+</head>
+<body>
+
+

<input type="text" id="mydate" readonly="readonly">


+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_destroy.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,22 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker method destroy</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker();
+        $('#datepicker').datepicker('destroy');
+    });
+    </script>
+</head>
+<body>
+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_dialog.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,22 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker method dialog</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker();
+        $('#datepicker').datepicker('dialog');
+    });
+    </script>
+</head>
+<body>
+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_disable.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,22 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker method disable</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker();
+        $('#datepicker').datepicker('disable');
+    });
+    </script>
+</head>
+<body>
+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_enable.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,22 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker method enable</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker().datepicker('disable');
+        $('#datepicker').datepicker('enable');
+    });
+    </script>
+</head>
+<body>
+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_getDate.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,23 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker method getDate</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker();
+        $('#msg').text($('#datepicker').datepicker('getDate'));
+    });
+    </script>
+</head>
+<body>
+
+<div id="msg"></div>
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_hide.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,22 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker method hide</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker();
+        $('#datepicker').datepicker('hide');
+    });
+    </script>
+</head>
+<body>
+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_isDisabled.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,22 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker method isDisabled</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker();
+        $('#datepicker').datepicker('isDisabled');
+    });
+    </script>
+</head>
+<body>
+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_option.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,24 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker method option</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker')
+            .datepicker()
+            .datepicker('option', 'changeMonth', true)
+            .datepicker('option', 'changeYear', true);
+    });
+    </script>
+</head>
+<body>
+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_setDate.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,22 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker method setDate</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker();
+        $('#datepicker').datepicker('setDate','+1y');
+    });
+    </script>
+</head>
+<body>
+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_method_show.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,22 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker method show</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker();
+        $('#datepicker').datepicker('show');
+    });
+    </script>
+</head>
+<body>
+
+<div id="datepicker"></div>
+
+</body>
+</html>
=======================================
--- /dev/null
+++
/branches/dev/datepicker2/tests/visual/datepicker/datepicker_option_showButtonPanel.html    
Sun Aug 30 04:15:00 2009
@@ -0,0 +1,23 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <title>Datepicker Visual Test : Datepicker option showButtonPanel</title>
+    <link rel="stylesheet" href="../visual.css" type="text/css" />
+    <link rel="stylesheet" href="../../../themes/base/ui.all.css"
type="text/css">
+    <script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
+    <script type="text/javascript" src="../../../ui/ui.core.js"></script>
+    <script type="text/javascript"
src="../../../ui/ui.datepicker.js"></script>
+    <script type="text/javascript">
+    $(function() {
+        $('#datepicker').datepicker({
+            showButtonPanel: true
+        });
+    });
+    </script>
+</head>
+<body>
+
+<input id="datepicker">
+
+</body>
+</html>
=======================================
--- /trunk/tests/unit/datepicker/datepicker_core.js    Wed Apr 1 03:15:29 2009
+++ /branches/dev/datepicker2/tests/unit/datepicker/datepicker_core.js    Sun
Aug 30 04:15:00 2009
@@ -32,7 +32,7 @@
}
function init(id, options) {
-    $.datepicker.setDefaults($.datepicker.regional['']);
+    $.ui.datepicker.setDefaults($.ui.datepicker.regional['']);
    return $(id).datepicker($.extend({duration: ''}, options || {}));
}
@@ -160,7 +160,7 @@
test('customStructure', function() {
    var dp = $('#ui-datepicker-div');
    // Check right-to-left localisation
-    var inp = init('#inp', $.datepicker.regional['he']);
+    var inp = init('#inp', $.ui.datepicker.regional['he']);
    inp.data('showButtonPanel.datepicker',true);
    inp.focus();
    var iframe = ($.browser.msie && parseInt($.browser.version) < 7);
=======================================
--- /trunk/tests/unit/datepicker/datepicker_events.js    Tue Feb 3 20:27:14
2009
+++ /branches/dev/datepicker2/tests/unit/datepicker/datepicker_events.js    
Sun Aug 30 04:15:00 2009
@@ -29,17 +29,17 @@
        simulate('keydown', {keyCode: $.simulate.VK_ENTER});
    equals(selectedThis, inp[0], 'Callback selected this');
    equals(selectedInst, $.data(inp[0], PROP_NAME), 'Callback selected inst');
-    equals(selectedDate, $.datepicker.formatDate('mm/dd/yy', date),
+    equals(selectedDate, $.ui.datepicker.formatDate('mm/dd/yy', date),
        'Callback selected date');
    inp.val('').datepicker('show').
        simulate('keydown', {ctrlKey: true, keyCode: $.simulate.VK_DOWN}).
        simulate('keydown', {keyCode: $.simulate.VK_ENTER});
    date.setDate(date.getDate() + 7);
-    equals(selectedDate, $.datepicker.formatDate('mm/dd/yy', date),
+    equals(selectedDate, $.ui.datepicker.formatDate('mm/dd/yy', date),
        'Callback selected date - ctrl+down');
    inp.val('').datepicker('show').
        simulate('keydown', {keyCode: $.simulate.VK_ESC});
-    equals(selectedDate, $.datepicker.formatDate('mm/dd/yy', date),
+    equals(selectedDate, $.ui.datepicker.formatDate('mm/dd/yy', date),
        'Callback selected date - esc');
    // onChangeMonthYear
    inp.datepicker('option', {onChangeMonthYear: callback2, onSelect: null}).
@@ -104,7 +104,7 @@
    equals(selectedDate, '', 'Callback close date - esc');
    inp.val('').datepicker('show').
        simulate('keydown', {keyCode: $.simulate.VK_ENTER});
-    equals(selectedDate, $.datepicker.formatDate('mm/dd/yy', new Date()),
+    equals(selectedDate, $.ui.datepicker.formatDate('mm/dd/yy', new Date()),
        'Callback close date - enter');
    inp.val('02/04/2008').datepicker('show').
        simulate('keydown', {keyCode: $.simulate.VK_ESC});
=======================================
--- /trunk/tests/unit/datepicker/datepicker_options.js    Wed Jul 22 01:37:28
2009
+++ /branches/dev/datepicker2/tests/unit/datepicker/datepicker_options.js    
Sun Aug 30 04:15:00 2009
@@ -8,11 +8,11 @@
test('setDefaults', function() {
    var inp = init('#inp');