mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-18 20:47:54 +00:00
Melhorias na opção Back do EventDetails. Melhorias na actualização de dados da Agenda.
This commit is contained in:
@@ -13,13 +13,22 @@ const routes: Routes = [
|
|||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path:'',
|
path:'',
|
||||||
loadChildren: ()=> import('../pages/events/events.module').then(m => m.EventsPageModule)
|
loadChildren: ()=> import('../pages/events/events.module').then(m => m.EventsPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:':eventId',
|
path:':eventId/:caller',
|
||||||
loadChildren: ()=> import('../pages/events/event-detail/event-detail.module').then(m => m.EventDetailPageModule)
|
loadChildren: ()=> import('../pages/events/event-detail/event-detail.module').then(m => m.EventDetailPageModule),
|
||||||
|
// children: [
|
||||||
|
// {
|
||||||
|
// path:'',
|
||||||
|
// loadChildren: ()=> import('../pages/events/event-detail/event-detail.module').then(m => m.EventDetailPageModule),
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// path:':caller',
|
||||||
|
// loadChildren: ()=> import('../pages/events/event-detail/event-detail.module').then(m => m.EventDetailPageModule),
|
||||||
|
// }
|
||||||
|
// ]
|
||||||
},
|
},
|
||||||
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -41,9 +50,8 @@ const routes: Routes = [
|
|||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path:'',
|
path:'',
|
||||||
loadChildren: ()=> import('../pages/events/attendees/attendees.module').then(m => m.AttendeesPageModule)
|
loadChildren: ()=> import('../pages/events/attendees/attendees.module').then(m => m.AttendeesPageModule)
|
||||||
},
|
},
|
||||||
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -51,9 +59,8 @@ const routes: Routes = [
|
|||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path:'',
|
path:'',
|
||||||
loadChildren: ()=> import('../pages/login/login.module').then(m => m.LoginPageModule)
|
loadChildren: ()=> import('../pages/login/login.module').then(m => m.LoginPageModule)
|
||||||
},
|
},
|
||||||
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -62,6 +69,10 @@ const routes: Routes = [
|
|||||||
{
|
{
|
||||||
path:'',
|
path:'',
|
||||||
loadChildren: ()=> import('../pages/agenda/agenda.module').then(m => m.AgendaPageModule)
|
loadChildren: ()=> import('../pages/agenda/agenda.module').then(m => m.AgendaPageModule)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path:':eventId/:caller',
|
||||||
|
loadChildren: ()=> import('../pages/events/event-detail/event-detail.module').then(m => m.EventDetailPageModule),
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -27,6 +27,8 @@ export class AgendaPage implements OnInit {
|
|||||||
};
|
};
|
||||||
|
|
||||||
selectedDate: Date;
|
selectedDate: Date;
|
||||||
|
rangeStartDate: Date;
|
||||||
|
rangeEndDate: Date;
|
||||||
|
|
||||||
@ViewChild(CalendarComponent) myCal: CalendarComponent;
|
@ViewChild(CalendarComponent) myCal: CalendarComponent;
|
||||||
|
|
||||||
@@ -52,11 +54,16 @@ export class AgendaPage implements OnInit {
|
|||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
//Inicializar segment
|
//Inicializar segment
|
||||||
this.segment = "Combinada";
|
|
||||||
|
|
||||||
this.router.events.forEach((event) => {
|
this.router.events.forEach((event) => {
|
||||||
if(event instanceof NavigationEnd && event.url == this.router.url) {
|
if(event instanceof NavigationEnd && event.url == "/home/agenda") {
|
||||||
/* this.loading(); */
|
if (this.segment == null)
|
||||||
|
{
|
||||||
|
this.segment = "Combinada";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
this.loadRangeEvents(this.rangeStartDate, this.rangeEndDate);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -75,11 +82,14 @@ export class AgendaPage implements OnInit {
|
|||||||
}
|
}
|
||||||
//Show information of the event
|
//Show information of the event
|
||||||
async onEventSelected(ev: { event: Event}){
|
async onEventSelected(ev: { event: Event}){
|
||||||
this.router.navigate(["/home/events", ev.event.EventId]);
|
this.router.navigate(["/home/agenda", ev.event.EventId, 'agenda']);
|
||||||
}
|
}
|
||||||
|
|
||||||
onRangeChanged (ev: { startTime: Date, endTime: Date }) {
|
onRangeChanged (ev: { startTime: Date, endTime: Date }) {
|
||||||
this.loadRangeEvents(ev.startTime, ev.endTime);
|
this.rangeStartDate = ev.startTime;
|
||||||
|
this.rangeEndDate = ev.endTime;
|
||||||
|
|
||||||
|
this.loadRangeEvents(this.rangeStartDate, this.rangeEndDate);
|
||||||
};
|
};
|
||||||
|
|
||||||
async openCalModal() {
|
async openCalModal() {
|
||||||
@@ -88,14 +98,31 @@ export class AgendaPage implements OnInit {
|
|||||||
cssClass: 'cal-modal',
|
cssClass: 'cal-modal',
|
||||||
backdropDismiss: false
|
backdropDismiss: false
|
||||||
});
|
});
|
||||||
|
|
||||||
await modal.present();
|
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.loading(); */
|
/* this.loading(); */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
async loadRangeEvents(startTime: Date, endTime: Date){
|
async loadRangeEvents(startTime: Date, endTime: Date){
|
||||||
this.showLoader = true;
|
this.showLoader = true;
|
||||||
|
|
||||||
switch (this.segment)
|
switch (this.segment)
|
||||||
{
|
{
|
||||||
case "Combinada":
|
case "Combinada":
|
||||||
@@ -112,8 +139,9 @@ export class AgendaPage implements OnInit {
|
|||||||
allDay: false,
|
allDay: false,
|
||||||
event: element
|
event: element
|
||||||
});
|
});
|
||||||
this.loading();
|
|
||||||
});
|
});
|
||||||
|
this.myCal.update();
|
||||||
|
this.myCal.loadEvents();
|
||||||
this.showLoader = false;
|
this.showLoader = false;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
@@ -133,8 +161,9 @@ export class AgendaPage implements OnInit {
|
|||||||
allDay: false,
|
allDay: false,
|
||||||
event: element
|
event: element
|
||||||
});
|
});
|
||||||
this.loading();
|
|
||||||
});
|
});
|
||||||
|
this.myCal.update();
|
||||||
|
this.myCal.loadEvents();
|
||||||
this.showLoader = false;
|
this.showLoader = false;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
@@ -154,8 +183,9 @@ export class AgendaPage implements OnInit {
|
|||||||
allDay: false,
|
allDay: false,
|
||||||
event: element
|
event: element
|
||||||
});
|
});
|
||||||
this.loading();
|
|
||||||
});
|
});
|
||||||
|
this.myCal.update();
|
||||||
|
this.myCal.loadEvents();
|
||||||
this.showLoader = false;
|
this.showLoader = false;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
@@ -163,25 +193,14 @@ export class AgendaPage implements OnInit {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RefreshEvents(ev: { startTime: Date, endTime: Date }){
|
doRefresh(ev: any){
|
||||||
this.loadRangeEvents(ev.startTime, ev.endTime);
|
this.loadRangeEvents(this.rangeStartDate, this.rangeEndDate);
|
||||||
}
|
|
||||||
|
|
||||||
loading(){
|
|
||||||
this.myCal.loadEvents();
|
|
||||||
}
|
|
||||||
|
|
||||||
doRefresh(ev){
|
|
||||||
this.loading();
|
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
ev.target.complete();
|
ev.target.complete();
|
||||||
}, 2000);
|
}, 250);
|
||||||
}
|
}
|
||||||
showAlert(){
|
showAlert(){
|
||||||
this.alertCrontroller.presentAlert("Funcionalidade em desenvolvimento.");
|
this.alertCrontroller.presentAlert("Funcionalidade em desenvolvimento.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ export class CalModalPage implements AfterViewInit {
|
|||||||
|
|
||||||
save(){
|
save(){
|
||||||
this.eventService.postEvent(this.postEvent, this.postEvent.CalendarName).subscribe();
|
this.eventService.postEvent(this.postEvent, this.postEvent.CalendarName).subscribe();
|
||||||
this.modalCtrl.dismiss();
|
this.modalCtrl.dismiss(this.postEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
onViewTitleChanged(title){
|
onViewTitleChanged(title){
|
||||||
@@ -58,7 +58,7 @@ export class CalModalPage implements AfterViewInit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
close(){
|
close(){
|
||||||
this.modalCtrl.dismiss();
|
this.modalCtrl.dismiss(this.postEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -97,7 +97,6 @@ export class CalModalPage implements AfterViewInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
this.postEvent.Attendees = this.eventAttendees;
|
this.postEvent.Attendees = this.eventAttendees;
|
||||||
console.log(this.eventAttendees);
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<ion-header>
|
<ion-header>
|
||||||
<ion-toolbar>
|
<ion-toolbar>
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<ion-back-button defaultHref="/home/events"></ion-back-button>
|
<ion-back-button defaultHref="{{ backURL }}"></ion-back-button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
<ion-title>Visualizar Evento</ion-title>
|
<ion-title>Visualizar Evento</ion-title>
|
||||||
<ion-buttons slot="end">
|
<ion-buttons slot="end">
|
||||||
@@ -57,7 +57,7 @@
|
|||||||
<ion-item>
|
<ion-item>
|
||||||
<ion-label>Data Fim</ion-label>
|
<ion-label>Data Fim</ion-label>
|
||||||
<ion-datetime value="{{loadedEvent.EndDate}}" [(ngModel)]="loadedEvent.EndDate" min="2020" max="2100"
|
<ion-datetime value="{{loadedEvent.EndDate}}" [(ngModel)]="loadedEvent.EndDate" min="2020" max="2100"
|
||||||
displayFormat="D MMM YYYY H:mm"
|
displayFormat="D MMM YYYY HH:mm"
|
||||||
monthShortNames="Jan, Fev, Mar, Abr, Mai, Jun, Jul, Aug, Sep, Out, Nov, Dez"></ion-datetime>
|
monthShortNames="Jan, Fev, Mar, Abr, Mai, Jun, Jul, Aug, Sep, Out, Nov, Dez"></ion-datetime>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
<div class="div-card-button">
|
<div class="div-card-button">
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { Component, OnInit, Injectable } from '@angular/core';
|
import { Component, OnInit, ViewChildren, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
import { EventsService } from 'src/app/services/events.service';
|
import { EventsService } from 'src/app/services/events.service';
|
||||||
import { Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
@@ -7,6 +7,7 @@ import { EventBody } from 'src/app/models/eventbody.model';
|
|||||||
import { AlertController, ModalController } from '@ionic/angular';
|
import { AlertController, ModalController } from '@ionic/angular';
|
||||||
import { EventPerson } from 'src/app/models/eventperson.model';
|
import { EventPerson } from 'src/app/models/eventperson.model';
|
||||||
import { AttendeesPage } from 'src/app/pages/events/attendees/attendees.page';
|
import { AttendeesPage } from 'src/app/pages/events/attendees/attendees.page';
|
||||||
|
import { DEFAULT_ENCODING } from 'crypto';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-event-detail',
|
selector: 'app-event-detail',
|
||||||
@@ -16,6 +17,9 @@ import { AttendeesPage } from 'src/app/pages/events/attendees/attendees.page';
|
|||||||
export class EventDetailPage implements OnInit {
|
export class EventDetailPage implements OnInit {
|
||||||
|
|
||||||
loadedEvent: Event;
|
loadedEvent: Event;
|
||||||
|
backURL: string;
|
||||||
|
|
||||||
|
minDate: Date;
|
||||||
|
|
||||||
constructor(public alertController: AlertController, private router: Router, private activatedRoute: ActivatedRoute, private eventsService: EventsService, private modalCtrl: ModalController) {
|
constructor(public alertController: AlertController, private router: Router, private activatedRoute: ActivatedRoute, private eventsService: EventsService, private modalCtrl: ModalController) {
|
||||||
this.loadedEvent = new Event();
|
this.loadedEvent = new Event();
|
||||||
@@ -28,20 +32,30 @@ export class EventDetailPage implements OnInit {
|
|||||||
|
|
||||||
loadEvent()
|
loadEvent()
|
||||||
{
|
{
|
||||||
|
let eventid: string;
|
||||||
|
|
||||||
this.activatedRoute.paramMap.subscribe(paramMap =>
|
this.activatedRoute.paramMap.subscribe(paramMap =>
|
||||||
{
|
{
|
||||||
if (!paramMap.has("eventId"))
|
if (!paramMap.has("eventId"))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
eventid = paramMap.get('eventId');
|
||||||
|
}
|
||||||
|
|
||||||
this.eventsService.getEvent(paramMap.get('eventId')).subscribe(response =>
|
if (paramMap.has("caller"))
|
||||||
{
|
{
|
||||||
this.loadedEvent = response;
|
this.backURL = "/home/" + paramMap.get('caller');
|
||||||
//this.eventsService.lastloadedevent = this.loadedEvent;
|
}
|
||||||
});
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
this.eventsService.getEvent(eventid).subscribe(response =>
|
||||||
|
{
|
||||||
|
this.loadedEvent = response;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
async openAttendees()
|
async openAttendees()
|
||||||
@@ -127,9 +141,11 @@ export class EventDetailPage implements OnInit {
|
|||||||
});
|
});
|
||||||
|
|
||||||
await alert.present();
|
await alert.present();
|
||||||
|
|
||||||
this.router.navigate(['/home/events']);
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
back()
|
||||||
|
{
|
||||||
|
//this.back();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -79,7 +79,7 @@
|
|||||||
<ion-item-sliding>
|
<ion-item-sliding>
|
||||||
<ion-item lines="none"
|
<ion-item lines="none"
|
||||||
*ngFor="let event of eventsList"
|
*ngFor="let event of eventsList"
|
||||||
[routerLink]="['/home/events', event.EventId]">
|
[routerLink]="['/home/events', event.EventId, 'events']">
|
||||||
<div class="div-item-{{event.CalendarName}}">
|
<div class="div-item-{{event.CalendarName}}">
|
||||||
<div class="div-up">
|
<div class="div-up">
|
||||||
<div class="div-icon">
|
<div class="div-icon">
|
||||||
|
|||||||
@@ -77,7 +77,6 @@ export class EventsPage implements OnInit {
|
|||||||
.subscribe(response => {
|
.subscribe(response => {
|
||||||
this.eventsList = response;
|
this.eventsList = response;
|
||||||
this.showLoader = false;
|
this.showLoader = false;
|
||||||
console.log(response[0].HasAttachments)
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user