Attendees Enhancments

This commit is contained in:
Paulo Pinto
2020-08-26 14:24:18 +01:00
parent 97ac242c78
commit e8e47b8680
9 changed files with 187 additions and 48 deletions
@@ -1,7 +1,7 @@
import { Component, OnInit } from '@angular/core';
import { EventPerson } from 'src/app/models/eventperson.model';
import { EventsService } from 'src/app/services/events.service';
import { ModalController } from '@ionic/angular';
import { ModalController, NavController } from '@ionic/angular';
import { AttendeeModalPage } from '../attendee-modal/attendee-modal.page';
@Component({
@@ -11,14 +11,15 @@ import { AttendeeModalPage } from '../attendee-modal/attendee-modal.page';
})
export class AttendeesPage implements OnInit {
eventAttendeesInitial: EventPerson[];
eventAttendees: EventPerson[];
segment:string = "required";
shouldShowCancel:boolean = true;
showAttendees: EventPerson[];
searchCountryString = ''; // initialize your searchCountryString string empty
constructor(private eventService: EventsService, private modalCtrl: ModalController) {
constructor(private eventService: EventsService, private modalCtrl: ModalController,
private navCtrl: NavController) {
}
@@ -31,22 +32,49 @@ export class AttendeesPage implements OnInit {
}
loadAttendees(){
let isRequired: boolean = (this.segment == "required");
this.eventAttendees = this.eventService.lastloadedevent.Attendees.filter(function(person) {
return person.IsRequired == isRequired;
let isrequired: boolean = (this.segment == "required");
this.showAttendees = this.eventAttendees.filter(function(person) {
return person.IsRequired == isrequired;
});
this.eventAttendeesInitial = this.eventAttendees;
}
save(){
this.modalCtrl.dismiss(this.eventAttendees);
}
close(){
this.modalCtrl.dismiss(null);
}
async addAttendees()
{
const modal = await this.modalCtrl.create({
component: AttendeeModalPage,
componentProps: {
eventPersons: this.eventAttendees
},
cssClass: 'attendee-modal',
backdropDismiss: false
});
await modal.present();
modal.onDidDismiss();
modal.onDidDismiss().then((data) => {
let newattendees: EventPerson[] = data['data'];
if (newattendees != null)
{
newattendees.forEach(newattendee => {
let att = {
"EmailAddress": newattendee.EmailAddress,
"Name": newattendee.Name,
"IsRequired": (this.segment == "required")
};
this.eventAttendees.push(att);
this.showAttendees.push(att);
});
}
});
}
}