[pollen] branch feature/dateTimePicker updated (54f37c7 -> c32d90c)
This is an automated email from the git hooks/post-receive script. New change to branch feature/dateTimePicker in repository pollen. See http://git.chorem.org/pollen.git from 54f37c7 add directive dateTimePicker new 1bee25b Improve directive dateTimePicker new c32d90c add dateTimePicker in poll settings The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit c32d90c76027559da490ec90394ce75312fffde2 Author: Adrien Garandel <a.garandel@dralagen.fr> Date: Wed Jul 30 11:34:54 2014 +0200 add dateTimePicker in poll settings commit 1bee25ba052f194ba7f38ea3f5b22573f3892d72 Author: Adrien Garandel <a.garandel@dralagen.fr> Date: Wed Jul 30 11:34:44 2014 +0200 Improve directive dateTimePicker Summary of changes: .../src/main/webapp/js/controllers/pollCtrl.js | 1 + pollen-ui-angular/src/main/webapp/js/directives.js | 54 ++++++++++++++++---- .../src/main/webapp/partials/dateTimePicker.html | 2 +- .../src/main/webapp/partials/poll-settings.html | 59 +++++++++------------- 4 files changed, 68 insertions(+), 48 deletions(-) -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/dateTimePicker in repository pollen. See http://git.chorem.org/pollen.git commit 1bee25ba052f194ba7f38ea3f5b22573f3892d72 Author: Adrien Garandel <a.garandel@dralagen.fr> Date: Wed Jul 30 11:34:44 2014 +0200 Improve directive dateTimePicker --- pollen-ui-angular/src/main/webapp/js/directives.js | 54 +++++++++++++++++----- .../src/main/webapp/partials/dateTimePicker.html | 2 +- 2 files changed, 44 insertions(+), 12 deletions(-) diff --git a/pollen-ui-angular/src/main/webapp/js/directives.js b/pollen-ui-angular/src/main/webapp/js/directives.js index f96a65e..83fc937 100644 --- a/pollen-ui-angular/src/main/webapp/js/directives.js +++ b/pollen-ui-angular/src/main/webapp/js/directives.js @@ -486,12 +486,15 @@ angular.module('pollenDirective', []) } }]) -.directive("datetimepicker", ["$timeout", "SessionStorage", function ($timeout, SessionStorage) { +.directive("datetimepicker", ["$timeout", "$route", "SessionStorage", function ($timeout, $route, SessionStorage) { return { restrict : "E", scope : { ngModel: '=', - focus: '=' + focus: '=', + minDate: '=', + maxDate: '=', + forId: '@' }, templateUrl:"partials/dateTimePicker.html", link: function(scope, element, attrs) { @@ -500,20 +503,50 @@ angular.module('pollenDirective', []) language: SessionStorage.get().locale }); - if (angular.isDate(scope.ngModel)) { - scope.dateTimePicker.data("DateTimePicker").setDate(new Date(scope.ngModel)); - } + var setDate = function () { + if (angular.isDefined(scope.ngModel)) { + scope.dateTimePicker.data("DateTimePicker").setDate(new Date(scope.ngModel)); + } + }; setDate(); + + var setMinDate = function () { + if (angular.isDefined(scope.minDate)) { + scope.dateTimePicker.data("DateTimePicker").setMinDate(moment(scope.minDate).subtract('day', 1)); + } + }; setMinDate(); scope.$on("switchLocale", function () { - scope.dateTimePicker.data("DateTimePicker").setLanguage(SessionStorage.get().locale); + scope.dateTimePicker.data("DateTimePicker").destroy(); + scope.dateTimePicker.datetimepicker({ + language: SessionStorage.get().locale + }); + setDate(); }) + var setMaxDate = function () { + if (angular.isDefined(scope.maxDate)) { + scope.dateTimePicker.data("DateTimePicker").setMaxDate(moment(scope.maxDate).add('day', 1)); + } + }; setMaxDate(); + $timeout(function () { scope.$watch('ngModel', function (newVal, oldVal) { - if (angular.isDate(newVal) && newVal != oldVal) { - scope.dateTimePicker.data("DateTimePicker").setDate(new Date(newVal)); + if (newVal != oldVal) { + setDate(); } - }) + }); + + scope.$watch('minDate', function (newVal, oldVal) { + if (newVal != oldVal) { + setMinDate(); + } + }); + + scope.$watch('maxDate', function (newVal, oldVal) { + if (newVal != oldVal) { + setMaxDate(); + } + }); }); scope.dateTimePicker.on("dp.change", function(e) { @@ -522,11 +555,10 @@ angular.module('pollenDirective', []) scope.timeout = $timeout(function () { scope.$apply(function () { scope.ngModel = new Date(scope.dateTimePicker.data("DateTimePicker").getDate().format()); + element.trigger("change"); }); }, 500); - element.trigger("change"); - }); scope.exit = function() { diff --git a/pollen-ui-angular/src/main/webapp/partials/dateTimePicker.html b/pollen-ui-angular/src/main/webapp/partials/dateTimePicker.html index a346e6c..857fb78 100644 --- a/pollen-ui-angular/src/main/webapp/partials/dateTimePicker.html +++ b/pollen-ui-angular/src/main/webapp/partials/dateTimePicker.html @@ -1,5 +1,5 @@ <div class="input-group date datetimepicker"> - <input type="text" class="form-control" focus-me="focus" ng-exit="exit()" /> + <input type="text" class="form-control" focus-me="focus" ng-exit="exit()" id="{{forId}}" /> <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span> </span> </div> -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/dateTimePicker in repository pollen. See http://git.chorem.org/pollen.git commit c32d90c76027559da490ec90394ce75312fffde2 Author: Adrien Garandel <a.garandel@dralagen.fr> Date: Wed Jul 30 11:34:54 2014 +0200 add dateTimePicker in poll settings --- .../src/main/webapp/js/controllers/pollCtrl.js | 1 + .../src/main/webapp/partials/poll-settings.html | 59 +++++++++------------- 2 files changed, 24 insertions(+), 36 deletions(-) diff --git a/pollen-ui-angular/src/main/webapp/js/controllers/pollCtrl.js b/pollen-ui-angular/src/main/webapp/js/controllers/pollCtrl.js index 3e3ee16..efea4f5 100644 --- a/pollen-ui-angular/src/main/webapp/js/controllers/pollCtrl.js +++ b/pollen-ui-angular/src/main/webapp/js/controllers/pollCtrl.js @@ -58,6 +58,7 @@ angular.module('pollControllers', ['ngRoute', 'pollenServices', 'pascalprecht.tr } $scope.session = SessionStorage.get(); + $scope.globalVariables.toDay = new Date(); $scope.globalVariables.minify = $scope.session.menuMinify; /** diff --git a/pollen-ui-angular/src/main/webapp/partials/poll-settings.html b/pollen-ui-angular/src/main/webapp/partials/poll-settings.html index 1ea211e..8369256 100644 --- a/pollen-ui-angular/src/main/webapp/partials/poll-settings.html +++ b/pollen-ui-angular/src/main/webapp/partials/poll-settings.html @@ -23,29 +23,23 @@ <h4>{{ 'poll.config.title.poll' | translate }}</h4> <div class="form-group row"> - <label class="col-sm-4 control-label" for="beginDate">{{ 'poll.config.label.beginDate' | translate }}</label> + <label class="col-sm-4 control-label" for="formBeginDate">{{ 'poll.config.label.beginDate' | translate }}</label> <div class="col-sm-8"> - <input id="beginDate" class="form-control" type="text" - datepicker-popup="dd/MM/yyyy" - min-date="toDay" - max-date="data.poll.endDate" - ng-model="data.poll.beginDate" - is-open="beginDateOpened" - ng-click="beginDateOpened = true" - auto-save="autoSavePoll()" /> + <datetimepicker min-date="globalVariables.toDay" + max-date="data.poll.endDate" + ng-model="data.poll.beginDate" + auto-save="autoSavePoll()" + for-id="formBeginDate"></datetimepicker> </div> </div> <div class="form-group row"> - <label class="col-sm-4 control-label" for="endDate">{{ 'poll.config.label.endDate' | translate }}</label> + <label class="col-sm-4 control-label" for="formEndDate">{{ 'poll.config.label.endDate' | translate }}</label> <div class="col-sm-8"> - <input id="endDate" class="form-control" type="text" - datepicker-popup="dd/MM/yyyy" - min-date="data.poll.beginDate" - ng-model="data.poll.endDate" - is-open="endDateOpened" - ng-click="endDateOpened = true" - auto-save="autoSavePoll()" /> + <datetimepicker min-date="data.poll.beginDate" + ng-model="data.poll.endDate" + auto-save="autoSavePoll()" + for-id="formEndDate"></datetimepicker> </div> </div> @@ -100,27 +94,21 @@ <div class="form-group row" ng-show="data.poll.choiceAddAllowed"> <label class="col-sm-4 control-label" for="beginChoiceDate">{{ 'poll.config.label.beginChoiceDate' | translate }}</label> <div class="col-sm-8"> - <input class="form-control" type="text" id="beginChoiceDate" - datepicker-popup="dd/MM/yyyy" - min-date="data.poll.beginDate" - max-date="data.poll.endChoiceDate" - ng-model="data.poll.beginChoiceDate" - is-open="beginChoiceDateOpened" - ng-click="beginChoiceDateOpened = true" - auto-save="autoSavePoll()" /> + <datetimepicker min-date="data.poll.beginDate" + max-date="data.poll.endChoiceDate" + ng-model="data.poll.beginChoiceDate" + auto-save="autoSavePoll()" for-id="beginChoiceDate"></datetimepicker> + </div> </div> <div class="form-group row" ng-if="data.poll.choiceAddAllowed"> <label class="col-sm-4 control-label" for="endChoiceDate">{{ 'poll.config.label.endChoiceDate' | translate }}</label> <div class="col-sm-8"> - <input class="form-control" type="text" id="endChoiceDate" - datepicker-popup="dd/MM/yyyy" - min-date="data.poll.beginChoiceDate" - max-date="data.poll.endDate" - ng-model="data.poll.endChoiceDate" - is-open="endChoiceDateOpened" - ng-click="endChoiceDateOpened = true" - auto-save="autoSavePoll()" /> + <datetimepicker min-date="data.poll.beginChoiceDate" + max-date="data.poll.endDate" + ng-model="data.poll.endChoiceDate" + auto-save="autoSavePoll()" + for-id="endChoiceDate"></datetimepicker> </div> </div> @@ -192,10 +180,9 @@ </div> <div class="form-group row"> - <label class="col-sm-4 control-label">{{ 'poll.config.label.anonymousVoteAllowed' | translate }}</label> + <label class="col-sm-4 control-label" for="formAnonymousVoteAllowed">{{ 'poll.config.label.anonymousVoteAllowed' | translate }}</label> <div class="col-sm-8 btn-group"> - <button class="btn btn-default" ng-model="data.poll.anonymousVoteAllowed" btn-radio="true" auto-save="autoSavePoll()">Oui</button> - <button class="btn btn-default" ng-model="data.poll.anonymousVoteAllowed" btn-radio="false" auto-save="autoSavePoll()">Non</button> + <input type="checkbox" id="formAnonymousVoteAllowed" ng-model="data.poll.anonymousVoteAllowed" auto-save="autoSavePoll()" /> </div> </div> -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
participants (1)
-
chorem.org scm