Como posso passar o valor do html para minha diretiva , o valor é uma data segue meu codigo.
function () {
'use strict';
angular.module('finansi').directive('feriadoDirective', FeriadoDirective);
FeriadoDirective.$inject = ['BoletoService', '$timeout'];
/* @ngInject */
function FeriadoDirective(BoletoService, $timeout) {
return {
restrict: "AE",
//O TimeOut, espera uma requisição concluir após da mesma está concluida ele executa uma função já com a resposta da promessa atualizada
// O link serve para quando eu for manipular os dados é uma alternatica para o controller na directive.
// o promisse sempre vai retorna uma promessa ,se eu quiser manipular os dados eu tenho que usar um scope.
scope: {
},
require: "ngModel",
link: function (scope, elem, attrs, ngModelCtrl) {
BoletoService.getFeriados().then(ok, erro);
function ok(response) {
ngModel.
scope.desabilitados = response.data.lista;
scope.config = response.data.config;
scope.dataFinal = new Date();
scope.dataAux = new Date();
scope.dataFinal.setDate(scope.dataFinal.getDate()+ scope.config.diasProrogacao);
// console.log(scope.dataFinal);
var options = {
beforeShowDay: function (dateText) {
var desabilitar = [];
function alterar(dataAux) {
var data = new Date(dataAux);
var dia = data.getDate();
if (dia.toString().length === 1)
dia = "0" + dia;
var mes = data.getMonth() + 1;
if (mes.toString().length === 1)
mes = "0" + mes;
var ano = data.getFullYear();
return dia + "/" + mes + "/" + ano;
}
console.log(scope.desabilitados);
for (var i = 0; i < scope.desabilitados.length; i++) {
desabilitar[i] = alterar(scope.desabilitados[i]);
}
var datepickerDay = ('0' + dateText.getDate()).slice(-2) + '/'
+ ('0' + (dateText.getMonth() + 1)).slice(-2) + '/'
+ dateText.getFullYear();
console.log(datepickerDay);
console.log(desabilitar);
if (desabilitar.indexOf(datepickerDay.trim()) > -1) {
return [false, ""," dia não letivo"];
}
return [true, "", "disponivel"];
},
dayNames: ['Domingo', 'Segunda', 'Terça', 'Quarta', 'Quinta', 'Sexta', 'Sábado'],
dayNamesMin: ['D', 'S', 'T', 'Q', 'Q', 'S', 'S', 'D'],
dayNamesShort: ['Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb', 'Dom'],
monthNames: ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'],
monthNamesShort: ['Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez'],
nextText: 'Próximo',
prevText: 'Anterior',
minDate : new Date(),
maxDate : scope.dataFinal,
dateFormat: 'dd/mm/yy',
onSelect: function (dateText) {
updateModel(dateText);
}
};
elem.datepicker(options);
}
function erro(response) {
scope.desabilitados = response.data.lista;
}
var updateModel = function (dateText) {
scope.$apply(function () {
ngModelCtrl.$setViewValue(dateText);
});
};
}
};
}
}
)();