- + +
diff --git a/src/app/pages/agenda/agenda.page.ts b/src/app/pages/agenda/agenda.page.ts index 1aac987eb..566e0b48a 100644 --- a/src/app/pages/agenda/agenda.page.ts +++ b/src/app/pages/agenda/agenda.page.ts @@ -25,6 +25,7 @@ import { AuthService } from 'src/app/services/auth.service'; import { User } from 'src/app/models/user.model'; import { DateAdapter } from '@angular/material/core'; import { ToastService } from 'src/app/services/toast.service'; +import { eventSource } from 'src/app/models/agenda/eventSource'; @Component({ selector: 'app-agenda', @@ -77,7 +78,8 @@ export class AgendaPage implements OnInit { showTimeline=true; /* List of events of our calendar */ - eventSource = []; + eventSource : eventSource[] = [] + /* The title of the calendar */ viewTitle: string; @@ -110,10 +112,6 @@ export class AgendaPage implements OnInit { profile:'mdgpr' | 'pr'; - eventsList: Event[]; - eventsListPessoal: Event[]; - eventsListOficial: Event[]; - // this will make toggle add event and. showEventEditOrOpen: "edit" | "add" | "" | "eventoToApprove" = "" prEventList: Event[]; @@ -358,39 +356,6 @@ export class AgendaPage implements OnInit { return momentG(date, formate , wgs) } - // for timeline - timeLineTemplate(startTime: string, eventlocation: string, eventDiscription: any, calendarName: string, subject: string, startTimeWisthS: string, endTime: string, eventIndex: number, profile: string): string{ - - const startHours = parseInt(startTimeWisthS.split(':')[0]); - const startMinutos = parseInt(startTimeWisthS.split(':')[1]); - - const endHours = parseInt(endTime.split(':')[0]); - const endMinutos = parseInt(endTime.split(':')[1]); - - let top = '0'; - - // console.log('startMinutos', startMinutos); - - if(startHours < endHours){ - if (startMinutos != 0 ){ - top = `${ Math.abs((startMinutos)) }` - } - } - - const profile_ = profile == 'md'? 'mdgpr': 'pr'; - - return ` -
-
- ${startHours.toString().padStart(2, '0')}:${startMinutos.toString().padStart(2, '0')}${eventlocation} -
-
- ${subject} -
-
- ` - } - // for timeline timelineFilter(calendarName, eventsList, profile){ @@ -408,12 +373,7 @@ export class AgendaPage implements OnInit { const startHours = new Date(element.StartDate).getHours().toLocaleString(); const EndHours = new Date(element.EndDate).getHours().toLocaleString(); - const startHoursOtherFormate = new Date(element.StartDate).getHours().toLocaleString()+':'+new Date(element.StartDate).getMinutes().toLocaleString(); - const EndHoursOtherFormate = formatDate(new Date(element.EndDate), 'HH:mm', 'pt'); - - events.push({ - title: this.timeLineTemplate(startHours, element.Location, element.Body, element.CalendarName, element.Subject,startHoursOtherFormate,EndHoursOtherFormate, eventIndex, profile), start: setHours(setMinutes(new Date(element.StartDate), 0), parseInt(startHours)), end: setHours(setMinutes(new Date(element.EndDate), 0), parseInt(EndHours)), color: { @@ -456,7 +416,6 @@ export class AgendaPage implements OnInit { if (startTimeSamp < endTimeSamp && (endMinutes + endHours) == 0) { endTime = new Date(endTime); endTime.setSeconds(endTime.getSeconds() - 1); - console.log('new date ======================================================') return new Date(endTime) } else { return new Date(endTime) @@ -464,8 +423,12 @@ export class AgendaPage implements OnInit { } + get LL () { + return this.eventSource.length + } + loadRangeEvents(startTime: Date, endTime: Date) { - + this.eventSelectedDate = new Date(startTime); this.showLoader = true; @@ -489,16 +452,16 @@ export class AgendaPage implements OnInit { // clear the current month only this.eventSource = this.eventSource.filter((e)=> { - if(new Date(startTime).getTime() <= new Date(e.StartDate).getTime() && - new Date(endTime).getTime() >= new Date(e.EndDate).getTime() && e.profile != 'md') { + if(new Date(startTime).getTime() <= new Date(e.startTime).getTime() && + new Date(endTime).getTime() >= new Date(e.endTime).getTime() && e.profile == 'md') { return false } return true }) - this.eventsList = response; + const eventsList = response; // loop - this.eventsList.forEach((element, eventIndex) => { + eventsList.forEach((element, eventIndex) => { this.eventSource.push({ title: element.Subject, @@ -512,7 +475,7 @@ export class AgendaPage implements OnInit { }); }); - const list = this.timelineFilter(this.timelineFilterState, this.eventsList, 'mdgpr'); + const list = this.timelineFilter(this.timelineFilterState, eventsList, 'mdgpr'); this.TimelineMDList = this.eventListBox(list) @@ -544,17 +507,17 @@ export class AgendaPage implements OnInit { // clear the current month only this.eventSource = this.eventSource.filter((e)=> { - if(new Date(startTime).getTime() <= new Date(e.StartDate).getTime() && - new Date(endTime).getTime() >= new Date(e.EndDate).getTime() && e.profile != 'pr') { + if(new Date(startTime).getTime() <= new Date(e.startTime).getTime() && + new Date(endTime).getTime() >= new Date(e.endTime).getTime() && e.profile == 'pr') { return false } return true }) - this.eventsList = response; + const eventsList = response; // calendar - this.eventsList.forEach((element, eventIndex) => { + eventsList.forEach((element, eventIndex) => { this.eventSource.push({ title: element.Subject, startTime: new Date(element.StartDate), @@ -568,7 +531,7 @@ export class AgendaPage implements OnInit { }); - const list = this.timelineFilter(this.timelineFilterState, this.eventsList, 'pr'); + const list = this.timelineFilter(this.timelineFilterState, eventsList, 'pr'); this.TimelineMDList = this.eventListBox(list) @@ -599,17 +562,17 @@ export class AgendaPage implements OnInit { // clear the current month only this.eventSource = this.eventSource.filter((e)=> { - if(new Date(startTime).getTime() <= new Date(e.StartDate).getTime() && - new Date(endTime).getTime() >= new Date(e.EndDate).getTime() && e.profile != 'pr') { + if(new Date(startTime).getTime() <= new Date(e.startTime).getTime() && + new Date(endTime).getTime() >= new Date(e.endTime).getTime() && e.profile == 'pr') { return false } return true }) - this.eventsList = response; + const eventsList = response; // calendar - this.eventsList.forEach((element, eventIndex) => { + eventsList.forEach((element, eventIndex) => { this.eventSource.push({ title: element.Subject, startTime: new Date(element.StartDate), @@ -623,7 +586,7 @@ export class AgendaPage implements OnInit { }); - const list = this.timelineFilter(this.timelineFilterState, this.eventsList, 'pr'); + const list = this.timelineFilter(this.timelineFilterState, eventsList, 'pr'); this.TimelineMDList = this.eventListBox(list) @@ -654,18 +617,18 @@ export class AgendaPage implements OnInit { // clear the current month only this.eventSource = this.eventSource.filter((e)=> { - if(new Date(startTime).getTime() <= new Date(e.StartDate).getTime() && - new Date(endTime).getTime() >= new Date(e.EndDate).getTime() && e.profile != 'md') { + if(new Date(startTime).getTime() <= new Date(e.startTime).getTime() && + new Date(endTime).getTime() >= new Date(e.endTime).getTime() && e.profile == 'md') { return false } return true }) - this.eventsListPessoal= []; - this.eventsListPessoal = response.filter(data => data.CalendarName == "Pessoal"); + + const eventsList = response.filter(data => data.CalendarName == "Pessoal"); // loop - this.eventsListPessoal.forEach((element, eventIndex) => { + eventsList.forEach((element, eventIndex) => { this.eventSource.push({ title: element.Subject, @@ -679,7 +642,7 @@ export class AgendaPage implements OnInit { }); }); - const list = this.timelineFilter(this.timelineFilterState, this.eventsListPessoal, 'mdgpr'); + const list = this.timelineFilter(this.timelineFilterState, eventsList, 'mdgpr'); this.TimelineMDList = this.eventListBox(list) @@ -704,15 +667,15 @@ export class AgendaPage implements OnInit { // clear the current month only this.eventSource = this.eventSource.filter((e)=> { - if(new Date(startTime).getTime() <= new Date(e.StartDate).getTime() && - new Date(endTime).getTime() >= new Date(e.EndDate).getTime() && e.profile != 'pr') { + if(new Date(startTime).getTime() <= new Date(e.startTime).getTime() && + new Date(endTime).getTime() >= new Date(e.endTime).getTime() && e.profile == 'pr') { return false } return true }) - this.eventsListPessoal = response.filter(data => data.CalendarName == "Pessoal"); - this.eventsListPessoal.forEach(element => { + const eventsList = response.filter(data => data.CalendarName == "Pessoal"); + eventsList.forEach(element => { this.eventSource.push({ title: element.Subject, startTime: new Date(element.StartDate), @@ -724,7 +687,7 @@ export class AgendaPage implements OnInit { }); }); - const list = this.timelineFilter(this.timelineFilterState, this.eventsListPessoal, 'pr'); + const list = this.timelineFilter(this.timelineFilterState, eventsList, 'pr'); this.TimelineMDList = this.eventListBox(list) @@ -748,7 +711,7 @@ export class AgendaPage implements OnInit { case "Oficial": //Inicializa o array eventSource - this.eventsListOficial = []; + const eventsList = []; if(this.profile == "mdgpr" && this.loggeduser.Profile == 'MDGPR') { this.eventService.getAllMdEvents(momentG(new Date(startTime),'yyyy-MM-dd HH:mm:ss'), momentG(new Date(endTime),'yyyy-MM-dd 23:59:59')).then((res:any) => { @@ -758,16 +721,16 @@ export class AgendaPage implements OnInit { // clear the current month only this.eventSource = this.eventSource.filter((e)=> { - if(new Date(startTime).getTime() <= new Date(e.StartDate).getTime() && - new Date(endTime).getTime() >= new Date(e.EndDate).getTime() && e.profile != 'md') { + if(new Date(startTime).getTime() <= new Date(e.startTime).getTime() && + new Date(endTime).getTime() >= new Date(e.endTime).getTime() && e.profile == 'md') { return false } return true }) - this.eventsListOficial = res.filter(data => data.CalendarName == "Oficial"); + const eventsList = res.filter(data => data.CalendarName == "Oficial"); - this.eventsListOficial.forEach(element => { + eventsList.forEach(element => { this.eventSource.push({ title: element.Subject, startTime: new Date(element.StartDate), @@ -779,7 +742,7 @@ export class AgendaPage implements OnInit { }); }); - const list = this.timelineFilter(this.timelineFilterState, this.eventsListOficial, 'mdgpr'); + const list = this.timelineFilter(this.timelineFilterState, eventsList, 'mdgpr'); this.TimelineMDList = this.eventListBox(list) @@ -803,15 +766,15 @@ export class AgendaPage implements OnInit { // clear the current month only this.eventSource = this.eventSource.filter((e)=> { - if(new Date(startTime).getTime() <= new Date(e.StartDate).getTime() && - new Date(endTime).getTime() >= new Date(e.EndDate).getTime() && e.profile != 'pr') { + if(new Date(startTime).getTime() <= new Date(e.startTime).getTime() && + new Date(endTime).getTime() >= new Date(e.endTime).getTime() && e.profile == 'pr') { return false } return true }) - this.eventsListOficial = res.filter(data => data.CalendarName == "Oficial"); - this.eventsListOficial.forEach(element => { + const eventsList = res.filter(data => data.CalendarName == "Oficial"); + eventsList.forEach(element => { this.eventSource.push({ title: element.Subject, startTime: new Date(element.StartDate), @@ -823,7 +786,7 @@ export class AgendaPage implements OnInit { }); }); - const list = this.timelineFilter(this.timelineFilterState, this.eventsListOficial, 'pr'); + const list = this.timelineFilter(this.timelineFilterState, eventsList, 'pr'); this.TimelineMDList = this.eventListBox(list) @@ -854,30 +817,30 @@ export class AgendaPage implements OnInit { this.eventService.getAllMdEvents( momentG(new Date(startTime),'yyyy-MM-dd HH:mm:ss'), momentG(new Date(endTime),'yyyy-MM-dd 23:59:59') ).then( (response:any) => { - + let eventsList; if(this.segment == 'Oficial') { - this.eventsList = response.filter(data => data.CalendarName == "Oficial"); + eventsList = response.filter(data => data.CalendarName == "Oficial"); } else if (this.segment == 'Pessoal') { - this.eventsList = response.filter(data => data.CalendarName == "Pessoal"); + eventsList = response.filter(data => data.CalendarName == "Pessoal"); } else { - this.eventsList = response; + eventsList = response; } - + + // clear the current month only this.eventSource = this.eventSource.filter((e)=> { - if(new Date(startTime).getTime() <= new Date(e.StartDate).getTime() && - new Date(endTime).getTime() >= new Date(e.EndDate).getTime() && e.profile != 'md') { + if(new Date(startTime).getTime() <= new Date(e.startTime).getTime() && + new Date(endTime).getTime() >= new Date(e.endTime).getTime() && e.profile == 'md') { return false } return true }) // loop - this.eventsList.forEach((element, eventIndex) => { + eventsList.forEach((element, eventIndex) => { // calendar this.eventSource.push({ - index: eventIndex, title: element.Subject, startTime: new Date(element.StartDate), endTime: this.EventTretment({ @@ -893,7 +856,7 @@ export class AgendaPage implements OnInit { }); - const MDEventList = this.timelineFilter(this.timelineFilterState, this.eventsList, 'mdgpr'); + const MDEventList = this.timelineFilter(this.timelineFilterState, eventsList, 'mdgpr'); this.TimelineMDList = this.eventListBox(MDEventList, 'md') @@ -919,27 +882,29 @@ export class AgendaPage implements OnInit { 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"); - } else if (this.segment == 'Pessoal') { - this.eventsList = response.filter(data => data.CalendarName == "Pessoal"); - } else { - this.eventsList = response; - } + let eventsList; + if(this.segment == 'Oficial') { + eventsList = response.filter(data => data.CalendarName == "Oficial"); + } else if (this.segment == 'Pessoal') { + eventsList = response.filter(data => data.CalendarName == "Pessoal"); + } else { + eventsList = response; + } + // clear the current month only this.eventSource = this.eventSource.filter((e)=> { - if(new Date(startTime).getTime() <= new Date(e.StartDate).getTime() && - new Date(endTime).getTime() >= new Date(e.EndDate).getTime() && e.profile != 'pr') { + if(new Date(startTime).getTime() <= new Date(e.startTime).getTime() && + new Date(endTime).getTime() >= new Date(e.endTime).getTime() && e.profile == 'pr') { + console.log('remove from agenda') return false } return true }) - this.eventsList.forEach((element, eventIndex) => { + eventsList.forEach((element, eventIndex) => { // calendar this.eventSource.push({ - index: eventIndex, title: element.Subject, startTime: new Date(element.StartDate), endTime: new Date(element.EndDate), @@ -952,7 +917,7 @@ export class AgendaPage implements OnInit { }); - this.TimelinePR = this.timelineFilter(this.timelineFilterState, this.eventsList, 'pr'); + this.TimelinePR = this.timelineFilter(this.timelineFilterState, eventsList, 'pr'); this.TimelinePRList = this.eventListBox(this.TimelinePR) @@ -980,27 +945,29 @@ export class AgendaPage implements OnInit { 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) => { + let eventsList; if(this.segment == 'Oficial') { - this.eventsList = response.filter(data => data.CalendarName == "Oficial"); + eventsList = response.filter(data => data.CalendarName == "Oficial"); } else if (this.segment == 'Pessoal') { - this.eventsList = response.filter(data => data.CalendarName == "Pessoal"); + eventsList = response.filter(data => data.CalendarName == "Pessoal"); } else { - this.eventsList = response; + eventsList = response; } + // clear the current month only this.eventSource = this.eventSource.filter((e)=> { - if(new Date(startTime).getTime() <= new Date(e.StartDate).getTime() && - new Date(endTime).getTime() >= new Date(e.EndDate).getTime() && e.profile != 'pr') { + if(new Date(startTime).getTime() <= new Date(e.startTime).getTime() && + new Date(endTime).getTime() >= new Date(e.endTime).getTime() && e.profile == 'pr') { + console.log('remove from agenda') return false } return true }) - this.eventsList.forEach((element, eventIndex) => { + eventsList.forEach((element, eventIndex) => { // calendar this.eventSource.push({ - index: eventIndex, title: element.Subject, startTime: new Date(element.StartDate), endTime: new Date(element.EndDate), @@ -1013,7 +980,7 @@ export class AgendaPage implements OnInit { }); - this.TimelinePR = this.timelineFilter(this.timelineFilterState, this.eventsList, 'pr'); + this.TimelinePR = this.timelineFilter(this.timelineFilterState, eventsList, 'pr'); this.TimelinePRList = this.eventListBox(this.TimelinePR) diff --git a/src/app/pages/agenda/eventListBox.ts b/src/app/pages/agenda/eventListBox.ts new file mode 100644 index 000000000..cd6725cbd --- /dev/null +++ b/src/app/pages/agenda/eventListBox.ts @@ -0,0 +1,5 @@ +export class eventListBox { + filterProfile() {} + daysBetween(){} + list() {} +} \ No newline at end of file diff --git a/src/app/pages/gabinete-digital/gabinete-digital.page.html b/src/app/pages/gabinete-digital/gabinete-digital.page.html index 5cd8850ed..dc561b98c 100644 --- a/src/app/pages/gabinete-digital/gabinete-digital.page.html +++ b/src/app/pages/gabinete-digital/gabinete-digital.page.html @@ -4,7 +4,6 @@ - @@ -13,6 +12,7 @@
+
Gabinete Digital