benzen / angular-bootstrap3-datepicker

A Simple datepicker directive based on bootstrap3-datetimepicker
Apache License 2.0
19 stars 24 forks source link

defaultDate #23

Closed heyokdang closed 8 years ago

heyokdang commented 8 years ago

i added the "default date" similar with the way to done the "date format". But failed

heyokdang commented 8 years ago

no need this feature, i only used ng-model and i can set default date from scope

heyokdang commented 8 years ago

The problem happended with default date in popup when i only set default value in $scope.ngmodelnamedate, but after i add default date the same default format date with defaultDate: $scope.ngmodelnamedate then the problem fixed.

In controller i set default value:

$scope.startdate = "Dec 2018"

In ng-bs3-datepicker.js replace link with below code:

 link: function($scope, element, attr) {
      var attributes, dateFormat, input, resetValue, dateViewMode, dateMinViewMode, defaultDate;
      dateFormat = "";
      dateViewMode="";
      dateMinViewMode = "";
      defaultDate = "";
      attributes = element.prop("attributes");
      input = element.find("input");
      resetValue = false;
      angular.forEach(attributes, function(e) {
        if (e.name !== "class") {
            input.attr(e.name, e.value);
        }
        if (e.name === "date-format") {
            dateFormat = e.value;
        }
        if(e.name === "date-view-mode") {
            dateViewMode = e.value;
        }
        if(e.name === "date-min-view-mode") {
            dateMinViewMode = e.value;
        }
        if(e.name === "default-date") {
            defaultDate = e.value;
        }
      });
      $scope.$watch(attr.language, function(value) {
        var language;
        language = value ? value : input.attr('language');
        return input.datetimepicker({
          language: language,
          pickTime: false,
          format: dateFormat,
          viewMode: dateViewMode,
          minViewMode: dateMinViewMode,
          defaultDate: $scope.startdate,
          icons: {
            time: 'fa fa-clock-o',
            date: 'fa fa-calendar',
            up: 'fa fa-arrow-up',
            down: 'fa fa-arrow-down'
          }
        });
      });