MDL-59667 form: stop datepicker from rendering outside viewport
authorRyan Wyllie <ryan@moodle.com>
Mon, 14 Aug 2017 02:47:38 +0000 (02:47 +0000)
committerRyan Wyllie <ryan@moodle.com>
Tue, 15 Aug 2017 01:24:52 +0000 (01:24 +0000)
Stop the date picker panel from being rendered outside of the
viewport, for example when being displayed in a modal.

lib/form/yui/build/moodle-form-dateselector/moodle-form-dateselector-debug.js
lib/form/yui/build/moodle-form-dateselector/moodle-form-dateselector-min.js
lib/form/yui/build/moodle-form-dateselector/moodle-form-dateselector.js
lib/form/yui/src/dateselector/js/dateselector.js

index 33b011c..217fc4a 100644 (file)
Binary files a/lib/form/yui/build/moodle-form-dateselector/moodle-form-dateselector-debug.js and b/lib/form/yui/build/moodle-form-dateselector/moodle-form-dateselector-debug.js differ
index 2b4e22a..ca09d67 100644 (file)
Binary files a/lib/form/yui/build/moodle-form-dateselector/moodle-form-dateselector-min.js and b/lib/form/yui/build/moodle-form-dateselector/moodle-form-dateselector-min.js differ
index 33b011c..217fc4a 100644 (file)
Binary files a/lib/form/yui/build/moodle-form-dateselector/moodle-form-dateselector.js and b/lib/form/yui/build/moodle-form-dateselector/moodle-form-dateselector.js differ
index 278e352..bf84531 100644 (file)
@@ -67,7 +67,8 @@ M.form.dateselector = {
         this.panel = new Y.Overlay({
             visible: false,
             bodyContent: Y.Node.create('<div id="dateselector-calendar-content"></div>'),
-            id: 'dateselector-calendar-panel'
+            id: 'dateselector-calendar-panel',
+            constrain: true // constrain panel to viewport.
         });
         this.panel.render(document.body);
         // zIndex is added by panel.render() and is set to 0.
@@ -129,7 +130,6 @@ M.form.dateselector = {
                 ];
             }
 
-
             this.panel.set('align', {
                 node: this.currentowner.get('node').one('select'),
                 points: alignpoints