From e738859f9a8d0b01f494ee4433a570be828a3393 Mon Sep 17 00:00:00 2001 From: Peter Maquiran Date: Tue, 29 Jun 2021 10:14:57 +0100 Subject: [PATCH 1/4] save --- src/app/pages/agenda/agenda.page.html | 4 +- src/app/pages/agenda/agenda.page.ts | 137 +++++++++++------- .../shared/agenda/new-event/new-event.page.ts | 2 +- 3 files changed, 89 insertions(+), 54 deletions(-) diff --git a/src/app/pages/agenda/agenda.page.html b/src/app/pages/agenda/agenda.page.html index db321e04d..1fdb0f96d 100644 --- a/src/app/pages/agenda/agenda.page.html +++ b/src/app/pages/agenda/agenda.page.html @@ -407,12 +407,12 @@ > - - + --> { + const startTimeSamp = new Date(element.startTime).toLocaleDateString() + const endTimeSamp = new Date(element.endTime).toLocaleDateString() + + const endMinutes = new Date(element.endTime).getMinutes() + const endHours = new Date(element.endTime).getHours() + const endDay: number = new Date(element.endTime).getDate() + const startDay = new Date(element.startTime).getDate() + const profile_ = element.profile == 'md'? 'mdgpr': 'pr'; const eventtype = element.event.CalendarName; + + // if (startTimeSamp < endTimeSamp && endDay == 29 && (endMinutes + endHours) == 0) { + // // console.log(id, (endMinutes + endHours)) + // classs.push(`calendar-event-border`); + // } + classs.push(`calendar-event-border calendar-${profile_}-event-type-${eventtype}`); }); - + return classs.join(' '); } @@ -422,6 +436,25 @@ export class AgendaPage implements OnInit { return ((new Date(this.timelineDate)).getDate()).toString().padStart(2,'0') } + EventTretment ({startTime, endTime}) { + + const startTimeSamp = new Date(startTime).toLocaleDateString() + const endTimeSamp = new Date(endTime).toLocaleDateString() + + const endMinutes = new Date(endTime).getMinutes() + const endHours = new Date(endTime).getHours() + + if (startTimeSamp < endTimeSamp && (endMinutes + endHours) == 0) { + endTime = new Date(endTime); + endTime.setSeconds(endTime.getSeconds() - 1); + + return new Date(endTime) + } else { + return new Date(endTime) + } + + } + loadRangeEvents(startTime: Date, endTime: Date){ this.eventSelectedDate = new Date(startTime); @@ -753,7 +786,10 @@ export class AgendaPage implements OnInit { index: eventIndex, title: element.Subject, startTime: new Date(element.StartDate), - endTime: new Date(element.EndDate), + endTime: this.EventTretment({ + startTime: element.StartDate, + endTime: element.EndDate + }), allDay: false, event: element, calendarName: element.CalendarName, @@ -762,11 +798,11 @@ export class AgendaPage implements OnInit { }); }); - - const MDEventList = this.timelineFilter(this.timelineFilterState, this.eventsList, 'mdgpr'); - - this.TimelineMDList = this.eventListBox(MDEventList, 'md') + const MDEventList = this.timelineFilter(this.timelineFilterState, this.eventsList, 'mdgpr'); + + this.TimelineMDList = this.eventListBox(MDEventList, 'md') + this.events = MDEventList; this.TimelineMD = MDEventList; @@ -776,13 +812,13 @@ export class AgendaPage implements OnInit { this.showTimelineMD = true; counter++; - if(counter==2){ + if(counter==2) { this.showLoader = false; } - }); + }); - this.eventService.getAllSharedEvents(momentG(new Date(startTime),'yyyy-MM-dd HH:mm:ss'), momentG(new Date(endTime),'yyyy-MM-dd 23:59:59')).then((response:any) => { + this.eventService.getAllSharedEvents(momentG(new Date(startTime),'yyyy-MM-dd HH:mm:ss'), momentG(new Date(endTime),'yyyy-MM-dd 23:59:59')).then((response:any) => { if(this.segment == 'Oficial') { this.eventsList = response.filter(data => data.CalendarName == "Oficial"); @@ -827,59 +863,56 @@ export class AgendaPage implements OnInit { this.showLoader = false; } - }); + }); + } else { - - }else{ - console.log('PR'); - this.eventService.getAllPrEvents(momentG(new Date(startTime),'yyyy-MM-dd HH:mm:ss'), momentG(new Date(endTime),'yyyy-MM-dd 23:59:59')).then((response:any) => { - if(this.segment == 'Oficial') { - this.eventsList = response.filter(data => data.CalendarName == "Oficial"); - } else if (this.segment == 'Pessoal') { - this.eventsList = response.filter(data => data.CalendarName == "Pessoal"); - } else { - this.eventsList = response; - } - - this.eventSource = this.eventSource.filter(e => e.profile != 'pr'); + if(this.segment == 'Oficial') { + this.eventsList = response.filter(data => data.CalendarName == "Oficial"); + } else if (this.segment == 'Pessoal') { + this.eventsList = response.filter(data => data.CalendarName == "Pessoal"); + } else { + this.eventsList = response; + } + + this.eventSource = this.eventSource.filter(e => e.profile != 'pr'); - this.eventsList.forEach((element, eventIndex) => { - - // calendar - this.eventSource.push({ - index: eventIndex, - title: element.Subject, - startTime: new Date(element.StartDate), - endTime: new Date(element.EndDate), - allDay: false, - event: element, - calendarName: element.CalendarName, - profile:'pr', - id: element.EventId, - }); + this.eventsList.forEach((element, eventIndex) => { + // calendar + this.eventSource.push({ + index: eventIndex, + title: element.Subject, + startTime: new Date(element.StartDate), + endTime: new Date(element.EndDate), + allDay: false, + event: element, + calendarName: element.CalendarName, + profile:'pr', + id: element.EventId, }); - this.TimelinePR = this.timelineFilter(this.timelineFilterState, this.eventsList, 'pr'); - + }); - this.TimelinePRList = this.eventListBox(this.TimelinePR) + this.TimelinePR = this.timelineFilter(this.timelineFilterState, this.eventsList, 'pr'); + - this.myCal.update(); - this.myCal.loadEvents(); + this.TimelinePRList = this.eventListBox(this.TimelinePR) - this.showTimelinePR = true; - - counter++; + this.myCal.update(); + this.myCal.loadEvents(); - if(counter==2 || this.loggeduser.Profile == 'PR') { - this.showLoader = false; - } + this.showTimelinePR = true; + + counter++; + + if(counter==2 || this.loggeduser.Profile == 'PR') { + this.showLoader = false; + } }); @@ -894,13 +927,16 @@ export class AgendaPage implements OnInit { list.forEach( (event:any)=> { var startDate: any = new Date(event.start); - var endDate: any = new Date(event.end); + var endDate: any = this.EventTretment({ + startTime: startDate, + endTime: event.end + }) + const day = (((new Date (event.start)).getDate())).toString().padStart(2,'0') event.manyDays = false - if(!days.hasOwnProperty(day)) { days[day] = [] } @@ -952,7 +988,6 @@ export class AgendaPage implements OnInit { event.start = newDate if(!days.hasOwnProperty(otherDays)) { - days[otherDays] = [] } 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 01fcb2410..a3bf1ec21 100644 --- a/src/app/shared/agenda/new-event/new-event.page.ts +++ b/src/app/shared/agenda/new-event/new-event.page.ts @@ -330,7 +330,7 @@ export class NewEventPage implements OnInit { this.runValidation() // dont runt this function - if (!this.Form.valid) return false + // if (!this.Form.valid) return false this.getDatepickerData() From 58375eaf8f6e400725cf8b8ab3ea3e40b9ccd506 Mon Sep 17 00:00:00 2001 From: Peter Maquiran Date: Tue, 29 Jun 2021 10:29:45 +0100 Subject: [PATCH 2/4] Improve --- src/app/pages/agenda/agenda.page.html | 4 ++-- src/app/shared/agenda/view-event/view-event.page.ts | 9 --------- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/src/app/pages/agenda/agenda.page.html b/src/app/pages/agenda/agenda.page.html index 1fdb0f96d..db321e04d 100644 --- a/src/app/pages/agenda/agenda.page.html +++ b/src/app/pages/agenda/agenda.page.html @@ -407,12 +407,12 @@ > - + { - const alert = await this.alertController.create({ - cssClass: 'my-custom-class', - header: 'Evento removido', - buttons: ['OK'] - }); - - setTimeout(()=>{ - alert.dismiss(); - }, 1500); this.toastService.successMessage('Evento apagado'); this.close(); }); From c360f9436c38bac4d5080760cb509bf96fe41e5e Mon Sep 17 00:00:00 2001 From: Peter Maquiran Date: Tue, 29 Jun 2021 10:31:45 +0100 Subject: [PATCH 3/4] Improve --- src/app/pages/login/login.page.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/pages/login/login.page.html b/src/app/pages/login/login.page.html index 52d0ee3c9..4f8568efd 100644 --- a/src/app/pages/login/login.page.html +++ b/src/app/pages/login/login.page.html @@ -74,7 +74,7 @@ Entrar com senha -
+
Limpar
From a5be718a147fa445869e872a80897be6e145e0c3 Mon Sep 17 00:00:00 2001 From: "tiago.kayaya" Date: Tue, 29 Jun 2021 10:50:05 +0100 Subject: [PATCH 4/4] change events agenda --- .../agenda/edit-event/edit-event.page.html | 2 +- .../agenda/edit-event/edit-event.page.ts | 38 ++++++++++++------- .../agenda/view-event/view-event.page.ts | 19 +++++++--- src/app/services/events.service.ts | 13 ++++--- .../agenda/edit-event/edit-event.page.ts | 22 +++++------ 5 files changed, 57 insertions(+), 37 deletions(-) diff --git a/src/app/pages/agenda/edit-event/edit-event.page.html b/src/app/pages/agenda/edit-event/edit-event.page.html index 27ba6a432..f852f03f4 100644 --- a/src/app/pages/agenda/edit-event/edit-event.page.html +++ b/src/app/pages/agenda/edit-event/edit-event.page.html @@ -36,7 +36,7 @@
- { // if not mobile remove all component @@ -102,25 +108,31 @@ export class EditEventPage implements OnInit { this.modalController.dismiss(); } + goBack() { + console.log(this.caller); + this.router.navigate(['/home',this.caller]); + } + save() { - this.postEvent.Attendees = this.taskParticipants.concat(this.taskParticipantsCc) - try{ this.eventsService.editEvent(this.postEvent, 2, 3).subscribe(async () => { - /* const alert = await this.alertController.create({ - cssClass: 'my-custom-class', - header: 'Evento actualizado', - buttons: ['OK'] - }); - await alert.present(); */ + if(this.initCalendarName != this.postEvent.CalendarName){ + let body = { + "EventId": this.postEvent.EventId, + "CalendarDestinationName": this.postEvent.CalendarName, + } + console.log(body); + await this.eventsService.changeAgenda(body).toPromise(); + } + this.toastService.successMessage(); - this.toastService.successMessage() }, error => { this.toastService.badRequest() }); this.isEventEdited = true; + this.goBack(); this.modalController.dismiss(this.isEventEdited); } catch (error) { @@ -179,7 +191,7 @@ export class EditEventPage implements OnInit { } addParticipantsCC(){ - this.adding = 'CC' + this.adding = 'CC'; this.openAttendees(); } 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 0b413e7c6..ee43756f9 100644 --- a/src/app/pages/agenda/view-event/view-event.page.ts +++ b/src/app/pages/agenda/view-event/view-event.page.ts @@ -35,6 +35,7 @@ export class ViewEventPage implements OnInit { profile:string; eventId:string; + caller:string; customDate:any; today:any; @@ -62,8 +63,12 @@ export class ViewEventPage implements OnInit { this.eventBody = { BodyType : "1", Text : ""}; this.loadedEvent.Body = this.eventBody; - this.activatedRoute.paramMap.subscribe(paramMap =>{ - this.eventId = paramMap['params'].eventId; + this.activatedRoute.paramMap.subscribe(params =>{ + this.eventId = params['params'].eventId; + if(params["params"].caller){ + this.caller = (params["params"].caller); + } + }); /* this.activatedRoute.queryParams.subscribe(params => { @@ -76,7 +81,6 @@ export class ViewEventPage implements OnInit { } ngOnInit() { - console.log('Notifi teste '+this.eventId); this.loadEvent(); this.getAttachments(); @@ -136,8 +140,8 @@ export class ViewEventPage implements OnInit { setTimeout(()=>{ alert.dismiss(); }, 1500); + this.goBack(); this.toastService.successMessage('Evento apagado'); - this.close(); }); } @@ -154,11 +158,14 @@ export class ViewEventPage implements OnInit { async editEventDetail() { + console.log(this.caller); + + const modal = await this.modalController.create({ component: EditEventPage, componentProps: { eventId: this.loadedEvent.EventId, - profile: this.profile, + caller: this.caller, }, cssClass: 'modal modal-desktop', @@ -192,7 +199,7 @@ export class ViewEventPage implements OnInit { component: EditEventPage, componentProps:{ event: this.loadedEvent, - profile: this.profile, + caller: this.caller, }, cssClass: classs, }); diff --git a/src/app/services/events.service.ts b/src/app/services/events.service.ts index c5c4d8f96..a17062b26 100644 --- a/src/app/services/events.service.ts +++ b/src/app/services/events.service.ts @@ -90,11 +90,6 @@ export class EventsService { this.headers = new HttpHeaders(); this.headers = this.headers.set('Authorization', this.loggeduser.BasicAuthKey); - - - - - } /* getAllEvents(startdate:string, enddate:string): Observable{ @@ -297,6 +292,14 @@ export class EventsService { return this.http.put(`${puturl}`, event, options) } + changeAgenda(body:any){ + const puturl = environment.apiURL + 'Calendar/MoveEvent'; + let options = { + headers: this.headers, + }; + return this.http.post(`${puturl}`, body, options); + } + /* postEvent(event:Event, calendarName:string, sharedagenda:string) { const puturl = environment.apiURL + 'calendar/' + ((sharedagenda != '') ? sharedagenda : 'PostEvent'); 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 ed6876d02..82437eff7 100644 --- a/src/app/shared/agenda/edit-event/edit-event.page.ts +++ b/src/app/shared/agenda/edit-event/edit-event.page.ts @@ -25,6 +25,7 @@ export class EditEventPage implements OnInit { isRecurring:string; isEventEdited: boolean; loadedEvent: Event; + initCalendarName: string; eventBody: EventBody; segment:string = "true"; eventAttendees: EventPerson[]; @@ -157,19 +158,16 @@ export class EditEventPage implements OnInit { this.showLoader = true await this.eventsService.editEvent(this.postEvent, 2, 3).subscribe(async () => { - this.showLoader = false - - const alert = await this.alertController.create({ - cssClass: 'my-custom-class', - header: 'Evento actualizado', - buttons: ['OK'] - }); - + if(this.initCalendarName != this.postEvent.CalendarName){ + let body = { + "EventId": this.postEvent.EventId, + "CalendarDestinationName": this.postEvent.CalendarName, + } + console.log(body); + await this.eventsService.changeAgenda(body).toPromise(); + } + this.showLoader = false; this.toastService.successMessage() - setTimeout(()=>{ - alert.dismiss(); - }, 1500); - }, error => { this.showLoader = false