Просмотр исходного кода

HUE-1549 [oozie] Date widget does not persist manually entered date

Added onChange handler to the date fields
Enrico Berti 12 лет назад
Родитель
Сommit
92cc4a98b9

+ 1 - 1
apps/oozie/src/oozie/templates/editor/create_bundle.mako

@@ -61,6 +61,6 @@ ${ layout.menubar(section='bundles') }
   </form>
 </div>
 
-${ utils.decorate_datetime_fields() }
+${ utils.decorate_datetime_fields(False) }
 
 ${ commonfooter(messages) | n,unicode }

+ 1 - 1
apps/oozie/src/oozie/templates/editor/edit_bundle.mako

@@ -521,6 +521,6 @@ ${ layout.menubar(section='bundles') }
 % endif
 
 
-${ utils.decorate_datetime_fields() }
+${ utils.decorate_datetime_fields(False) }
 
 ${ commonfooter(messages) | n,unicode }

+ 10 - 1
apps/oozie/src/oozie/templates/utils.inc.mako

@@ -361,7 +361,7 @@
 </%def>
 
 
-<%def name="decorate_datetime_fields()">
+<%def name="decorate_datetime_fields(is_range=True)">
 
   <link rel="stylesheet" href="/static/ext/css/bootstrap-datepicker.min.css" type="text/css" media="screen" title="no title" charset="utf-8" />
   <link rel="stylesheet" href="/static/ext/css/bootstrap-timepicker.min.css" type="text/css" media="screen" title="no title" charset="utf-8" />
@@ -395,6 +395,15 @@
         format:DATE_FORMAT.toLowerCase()
       });
 
+      $(".dateInput").on("change", function () {
+        var _this = $(this);
+        var startDate = moment(_this.val() + " " + _this.parent().parent().find(".timepicker-default").val(), DATETIME_FORMAT);
+        _this.parent().datepicker('setValue', startDate.format(DATE_FORMAT));
+        %if is_range:
+          rangeHandler(_this.attr("name").indexOf("start") > -1);
+        %endif
+      });
+
       $("input[name='start_0']").parent().datepicker().on("changeDate", function () {
         rangeHandler(true);
       });