From fefb6dcc379ee56426188d6172f1f2672a57a20b Mon Sep 17 00:00:00 2001 From: "tiago.kayaya" Date: Fri, 29 Jan 2021 15:55:49 +0100 Subject: [PATCH] implementation of add + view event modals --- src/app/pages/agenda/agenda.page.ts | 29 ++++++--- .../agenda/new-event/new-event.page.html | 5 +- .../pages/agenda/new-event/new-event.page.ts | 6 +- .../agenda/view-event/view-event.page.html | 26 ++++---- .../agenda/view-event/view-event.page.ts | 61 ++++++++++++++++++- src/app/pages/events/events.page.ts | 1 - 6 files changed, 102 insertions(+), 26 deletions(-) diff --git a/src/app/pages/agenda/agenda.page.ts b/src/app/pages/agenda/agenda.page.ts index 958d0f7c7..ecb366955 100644 --- a/src/app/pages/agenda/agenda.page.ts +++ b/src/app/pages/agenda/agenda.page.ts @@ -60,7 +60,9 @@ export class AgendaPage implements OnInit { private eventService: EventsService, private router: Router, private alertCrontroller: AlertService - ) {} + ) { + this.showLoader = false; + } ngOnInit() { this.profile = "mdgpr"; @@ -97,7 +99,7 @@ export class AgendaPage implements OnInit { } //Show information of the event async onEventSelected(ev: { event: Event}){ - this.viewEventDetail(); + this.viewEventDetail(ev.event.EventId); /* this.router.navigate(["/home/agenda", ev.event.EventId, 'agenda']); */ } @@ -307,18 +309,31 @@ export class AgendaPage implements OnInit { backdropDismiss: false }); await modal.present(); - modal.onDidDismiss(); + modal.onDidDismiss().then((data) => { + let postEvent: Event = data['data']; + if (postEvent.Subject != null) + { + this.eventSource.push({ + title: postEvent.Subject, + startTime: new Date(postEvent.StartDate), + endTime: new Date(postEvent.EndDate), + allDay: false, + event: postEvent + }); + this.myCal.update(); + this.myCal.loadEvents(); + this.loadRangeEvents(this.rangeStartDate, this.rangeEndDate); + } + }); } - async viewEventDetail() { + async viewEventDetail(eventId:any) { console.log(this.profile); const modal = await this.modalCtrl.create({ component: ViewEventPage, componentProps:{ - segment: this.segment, - profile: this.profile, - /* eventSelectedDate: this.eventSelectedDate, */ + eventId: eventId, }, cssClass: 'modal', backdropDismiss: false diff --git a/src/app/pages/agenda/new-event/new-event.page.html b/src/app/pages/agenda/new-event/new-event.page.html index d77776339..9b1002e74 100644 --- a/src/app/pages/agenda/new-event/new-event.page.html +++ b/src/app/pages/agenda/new-event/new-event.page.html @@ -55,7 +55,10 @@
- + Reunião Viagem Conferência diff --git a/src/app/pages/agenda/new-event/new-event.page.ts b/src/app/pages/agenda/new-event/new-event.page.ts index 0bed92d60..e801214df 100644 --- a/src/app/pages/agenda/new-event/new-event.page.ts +++ b/src/app/pages/agenda/new-event/new-event.page.ts @@ -38,14 +38,12 @@ export class NewEventPage implements OnInit { ngOnInit() { console.log(this.profile); - let selectedStartdDate = this.selectedDate; let selectedEndDate = new Date(this.selectedDate); /* Set + 30minutes to seleted datetime */ - /* selectedEndDate.setMinutes(this.selectedDate.getMinutes() + 30) */ - - /* this.minDate = this.selectedDate.toString(); */ + selectedEndDate.setMinutes(this.selectedDate.getMinutes() + 30) ; + this.minDate = this.selectedDate.toString(); if(this.selectedSegment != "Combinada"){ this.postEvent ={ diff --git a/src/app/pages/agenda/view-event/view-event.page.html b/src/app/pages/agenda/view-event/view-event.page.html index 0548ab179..353d477c8 100644 --- a/src/app/pages/agenda/view-event/view-event.page.html +++ b/src/app/pages/agenda/view-event/view-event.page.html @@ -4,7 +4,7 @@
- Ver Evento + {{loadedEvent.Subject}}
@@ -19,18 +19,18 @@
- Texto + {{loadedEvent.Location}}
- Texto + {{loadedEvent.CalendarName}}
-

Texto

-

das Texto às Texto

-

(Não se repete)

-

Repete

+

{{customDate}}

+

das {{loadedEvent.StartDate | date: 'hh:mm'}} às {{loadedEvent.EndDate | date: 'hh:mm'}}

+

(Não se repete)

+

Repete

@@ -38,13 +38,15 @@

Intervenientes

-

Texto

+
+

{{attendee.Name}}

+

Detalhes

-

Texto

+

{{loadedEvent.Body.Text}}

@@ -53,9 +55,9 @@

Documentos Anexados

- -

Receita por Natureza

-

Texto

+ +

{{attach.SourceName}}

+

{{attach.Stakeholders}}{{ attach.CreateDate | date: 'dd-MM-yy' }}

diff --git a/src/app/pages/agenda/view-event/view-event.page.ts b/src/app/pages/agenda/view-event/view-event.page.ts index 613e27819..552a2873c 100644 --- a/src/app/pages/agenda/view-event/view-event.page.ts +++ b/src/app/pages/agenda/view-event/view-event.page.ts @@ -1,4 +1,11 @@ import { Component, OnInit } from '@angular/core'; +import { ModalController, NavParams } from '@ionic/angular'; +import { AuthConnstants } from 'src/app/config/auth-constants'; +import { Attachment } from 'src/app/models/attachment.model'; +import { EventBody } from 'src/app/models/eventbody.model'; +import { AttachmentsService } from 'src/app/services/attachments.service'; +import { EventsService } from 'src/app/services/events.service'; +import { Event } from '../../../models/event.model'; @Component({ selector: 'app-view-event', @@ -7,9 +14,61 @@ import { Component, OnInit } from '@angular/core'; }) export class ViewEventPage implements OnInit { - constructor() { } + loadedEvent: Event; + eventBody: EventBody; + loadedAttachments:any; + loadedEventAttachments: Attachment[]; + pageId: string; + showLoader: boolean; + + minDate: Date; + + profile:string; + eventId:string; + customDate:any; + today:any; + + months = ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"]; + days = ["Domingo", "Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado"]; + + constructor( + private modalController: ModalController, + private navParams: NavParams, + private eventsService: EventsService, + private attachmentsService: AttachmentsService, + ) { + this.loadedEvent = new Event(); + this.eventBody = { BodyType : "1", Text : ""}; + this.loadedEvent.Body = this.eventBody; + this.eventId = this.navParams.get('eventId'); + } ngOnInit() { + /* console.log(this.eventId); */ + this.loadEvent(); + this.getAttachments(); + } + loadEvent(){ + this.eventsService.getEvent(this.eventId).subscribe(res => { + this.loadedEvent = res; + + console.log(res); + + this.today = new Date(res.StartDate); + console.log(new Date(this.today)); + this.customDate = this.days[this.today.getDay()]+ ", " + this.today.getDate() +" de " + ( this.months[this.today.getMonth()]); + }); + } + + getAttachments(){ + this.attachmentsService.getAttachmentsById(this.eventId).subscribe(res=>{ + this.loadedAttachments = res; + console.log(res); + }); + } + + + } diff --git a/src/app/pages/events/events.page.ts b/src/app/pages/events/events.page.ts index f2cb9c221..8b70cbe41 100644 --- a/src/app/pages/events/events.page.ts +++ b/src/app/pages/events/events.page.ts @@ -106,7 +106,6 @@ export class EventsPage implements OnInit { this.storageService.get(AuthConnstants.USER).then(res=>{ console.log(res); - }); this.showGreeting();