UNPKG

@ciebit/calendario

Version:

Representa um calendário visual

54 lines (53 loc) 2.26 kB
///<reference path="../../js/datatempo/data.ts"/> var Ciebit; (function (Ciebit) { var Calendario; (function (Calendario_1) { var Controlador = (function () { function Controlador(Layout, Calendario) { this.Layout = Layout; this.Calendario = Calendario; } Controlador.prototype.atualizar = function () { var data = this.Calendario.obterData(); var dataTempo = new DataTempo(data); this.Layout.definirAno(data.getFullYear()); this.Layout.definirMes(dataTempo.obterMesAbr()); this.Layout.definirDias(this.indicesDias(data)); return this; }; //Retorna um array com os numeros que serão inseridos no calendário Controlador.prototype.indicesDias = function (data) { var indice = new Date(data.getFullYear(), data.getMonth(), 1).getDay(); var ultimo_dia_mes_anterior = new Date(data.getFullYear(), data.getMonth(), 0).getDate(); var ultimo_dia_mes_atual = new Date(data.getFullYear(), data.getMonth() + 1, 0).getDate(); var array = []; console.log(ultimo_dia_mes_atual); var x, y, z; x = y = z = 0; if (indice > 0) { x = (ultimo_dia_mes_anterior + 1) - indice; } for (var i = 0; i < 42; i++) { if (x <= ultimo_dia_mes_anterior) { array.push(x); x++; } else if (x > ultimo_dia_mes_anterior) { if (y >= ultimo_dia_mes_atual) { z++; array.push(z); } else { y++; array.push(y); } } } return array; }; return Controlador; }()); Calendario_1.Controlador = Controlador; })(Calendario = Ciebit.Calendario || (Ciebit.Calendario = {})); })(Ciebit || (Ciebit = {}));