diff --git a/src/app/shared/agenda/edit-event/edit-event.page.ts b/src/app/shared/agenda/edit-event/edit-event.page.ts index 25e0db208..f30fd1a33 100644 --- a/src/app/shared/agenda/edit-event/edit-event.page.ts +++ b/src/app/shared/agenda/edit-event/edit-event.page.ts @@ -137,6 +137,8 @@ export class EditEventPage implements OnInit { this.postEvent.EventRecurrence.Type = this.postEvent.EventRecurrence.Type.toString(); + this.postEvent.EventRecurrence.LastOccurrence = this.currentDate; + setTimeout(() => { this.postEvent.EventRecurrence.Type = this.postEvent.EventRecurrence.Type.toString(); @@ -226,6 +228,8 @@ export class EditEventPage implements OnInit { } onSelectedRecurringChanged(ev:any){ + + this.calculetedLastOccurrence(ev); if(ev.length > 1){ @@ -236,6 +240,45 @@ export class EditEventPage implements OnInit { } } + calculetedLastOccurrence(type:number){ + console.log(type); + var valor; + var opcao: boolean; + if (type == 0) { + valor = 7; + opcao = true; + } else if(type == 1){ + valor = 30; + opcao = true; + } else if(type == 2){ + valor = 1; + opcao = false; + }else if(type == 3){ + valor = 5; + opcao = false; + } + this.defineLastOccurrence(valor, opcao); + } + + + defineLastOccurrence(valor:number, opcao:boolean){ + var time = new Date(this.postEvent.EndDate); + if (opcao == true) { + time.setDate(time.getDate() + valor); + this.postEvent.EventRecurrence.LastOccurrence = time; + } else { + time = new Date( + time.getFullYear() + valor, + time.getMonth(), + time.getDate(), + time.getHours(), + time.getMinutes() + ); + this.postEvent.EventRecurrence.LastOccurrence = time; + } + + } + async save() { diff --git a/src/app/shared/agenda/new-event/new-event.page.ts b/src/app/shared/agenda/new-event/new-event.page.ts index f4fa0b50a..b9819c308 100644 --- a/src/app/shared/agenda/new-event/new-event.page.ts +++ b/src/app/shared/agenda/new-event/new-event.page.ts @@ -365,6 +365,8 @@ export class NewEventPage implements OnInit { onSelectedRecurringChanged(ev:any){ + this.calculetedLastOccurrence(ev); + if(ev.length > 1){ this.postEvent.EventRecurrence.Type = ev.filter(data => data != '-1'); @@ -374,8 +376,45 @@ export class NewEventPage implements OnInit { } } + calculetedLastOccurrence(type:number){ + console.log(type); + var valor; + var opcao: boolean; + if (type == 0) { + valor = 7; + opcao = true; + } else if(type == 1){ + valor = 30; + opcao = true; + } else if(type == 2){ + valor = 1; + opcao = false; + }else if(type == 3){ + valor = 5; + opcao = false; + } + this.defineLastOccurrence(valor, opcao); + } + defineLastOccurrence(valor:number, opcao:boolean){ + var time = new Date(this.postEvent.EndDate); + if (opcao == true) { + time.setDate(time.getDate() + valor); + this.postEvent.EventRecurrence.LastOccurrence = time; + } else { + time = new Date( + time.getFullYear() + valor, + time.getMonth(), + time.getDate(), + time.getHours(), + time.getMinutes() + ); + this.postEvent.EventRecurrence.LastOccurrence = time; + } + + } + async save() { this.injectValidation()