diff --git a/platform/forms/src/controllers/DateTimeController.js b/platform/forms/src/controllers/DateTimeController.js index 530c966380..c026e98935 100644 --- a/platform/forms/src/controllers/DateTimeController.js +++ b/platform/forms/src/controllers/DateTimeController.js @@ -68,13 +68,35 @@ define( } } + function updateDateTime(value) { + var m; + if (value !== undefined) { + m = moment.utc(value); + $scope.datetime = { + date: m.format(DATE_FORMAT), + hour: m.format("H"), + min: m.format("m"), + sec: m.format("s") + }; + } else { + $scope.datetime = {}; + } + } + + // ...and update form values when actual field in model changes + $scope.$watch("ngModel[field]", updateDateTime); + // Update value whenever any field changes. $scope.$watch("datetime.date", update); $scope.$watch("datetime.hour", update); $scope.$watch("datetime.min", update); $scope.$watch("datetime.sec", update); - $scope.datetime = {}; + // Initialize forms values + updateDateTime( + ($scope.ngModel && $scope.field) ? + $scope.ngModel[$scope.field] : undefined + ); } return DateTimeController;