2020-08-21 16:18:37 +01:00
|
|
|
import { Component, OnInit, LOCALE_ID } from '@angular/core';
|
2020-08-18 23:32:12 +01:00
|
|
|
|
|
|
|
|
import { Event } from '../../models/event.model';
|
|
|
|
|
import { EventsService } from 'src/app/services/events.service';
|
|
|
|
|
import { Router } from '@angular/router';
|
2020-08-21 18:26:03 +01:00
|
|
|
import { ActivatedRoute, NavigationEnd } from '@angular/router';
|
2020-08-21 16:18:37 +01:00
|
|
|
import { formatDate } from '@angular/common';
|
2020-08-28 11:37:28 +01:00
|
|
|
import { AlertService } from 'src/app/services/alert.service';
|
2020-08-28 15:28:38 +01:00
|
|
|
import { AuthService } from 'src/app/services/auth.service';
|
2020-08-18 23:32:12 +01:00
|
|
|
|
|
|
|
|
@Component({
|
|
|
|
|
selector: 'app-events',
|
|
|
|
|
templateUrl: './events.page.html',
|
|
|
|
|
styleUrls: ['./events.page.scss'],
|
|
|
|
|
})
|
|
|
|
|
export class EventsPage implements OnInit {
|
2020-08-21 16:18:37 +01:00
|
|
|
/* Get current system date */
|
|
|
|
|
today = new Date();
|
|
|
|
|
|
|
|
|
|
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"];
|
2020-08-18 23:32:12 +01:00
|
|
|
|
2020-08-21 16:18:37 +01:00
|
|
|
customDate = this.days[this.today.getDay()]+ ", " + this.today.getDate() +" de " + ( this.months[this.today.getMonth()]);
|
2020-08-18 23:32:12 +01:00
|
|
|
|
2020-08-21 16:18:37 +01:00
|
|
|
/* Setting appropriate greeting according to the time */
|
|
|
|
|
grettings = ["Bom dia", "Boa tarde", "Boa noite"];
|
|
|
|
|
greetting='';
|
2020-08-18 23:32:12 +01:00
|
|
|
|
2020-08-21 16:18:37 +01:00
|
|
|
timeDate = this.today.getHours() + ":" + this.today.getMinutes();
|
|
|
|
|
/* Set segment variable */
|
|
|
|
|
segment:string;
|
2020-08-18 23:32:12 +01:00
|
|
|
|
2020-08-21 18:26:03 +01:00
|
|
|
eventsList: Event[];
|
|
|
|
|
officialeventsList: Event[];
|
|
|
|
|
personaleventsList: Event[];
|
|
|
|
|
|
2020-08-28 10:10:46 +01:00
|
|
|
customText = false;
|
|
|
|
|
|
2020-08-28 11:45:50 +01:00
|
|
|
showLoader: boolean;
|
2020-08-18 23:32:12 +01:00
|
|
|
|
2020-08-28 11:37:28 +01:00
|
|
|
constructor(private eventService: EventsService,
|
|
|
|
|
private router: Router,
|
|
|
|
|
public activatedRoute: ActivatedRoute,
|
2020-08-28 15:28:38 +01:00
|
|
|
private alertController: AlertService,
|
|
|
|
|
private authService: AuthService) { }
|
2020-08-21 16:18:37 +01:00
|
|
|
|
|
|
|
|
ngOnInit() {
|
|
|
|
|
//Inicializar segment
|
2020-08-21 18:26:03 +01:00
|
|
|
this.segment = "Combinada";
|
2020-08-21 16:18:37 +01:00
|
|
|
this.showGreeting();
|
|
|
|
|
|
2020-08-21 18:26:03 +01:00
|
|
|
this.router.events.forEach((event) => {
|
|
|
|
|
if(event instanceof NavigationEnd && event.url == this.router.url) {
|
|
|
|
|
this.RefreshEvents();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
doRefresh(event) {
|
|
|
|
|
this.RefreshEvents();
|
2020-08-28 13:38:10 +01:00
|
|
|
event.target.complete();
|
|
|
|
|
// setTimeout(() => {
|
|
|
|
|
// event.target.complete();
|
|
|
|
|
// }, 2000);
|
2020-08-21 18:26:03 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
onSegmentChange(){
|
|
|
|
|
this.RefreshEvents();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
RefreshEvents(){
|
|
|
|
|
this.showLoader = true;
|
|
|
|
|
switch (this.segment)
|
|
|
|
|
{
|
|
|
|
|
case "Combinada":
|
|
|
|
|
this.eventService.getAllEvents(formatDate(new Date(), 'yyyy-MM-dd', 'pt') + ' 00:00:00', formatDate(new Date(), 'yyyy-MM-dd', 'pt') + ' 23:59:59')
|
|
|
|
|
.subscribe(response => {
|
|
|
|
|
this.eventsList = response;
|
2020-08-28 11:45:50 +01:00
|
|
|
this.showLoader = false;
|
2020-08-21 18:26:03 +01:00
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
break;
|
|
|
|
|
case "Pessoal":
|
|
|
|
|
this.eventService.getEvents(this.segment, formatDate(new Date(), 'yyyy-MM-dd', 'pt') + ' 00:00:00', formatDate(new Date(), 'yyyy-MM-dd', 'pt') + ' 23:59:59')
|
|
|
|
|
.subscribe(response => {
|
|
|
|
|
this.personaleventsList = response;
|
2020-08-28 11:45:50 +01:00
|
|
|
this.showLoader = false;
|
2020-08-21 18:26:03 +01:00
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
break;
|
|
|
|
|
case "Oficial":
|
|
|
|
|
this.eventService.getEvents(this.segment, formatDate(new Date(), 'yyyy-MM-dd', 'pt') + ' 00:00:00', formatDate(new Date(), 'yyyy-MM-dd', 'pt') + ' 23:59:59')
|
|
|
|
|
.subscribe(response => {
|
|
|
|
|
this.officialeventsList = response;
|
2020-08-28 11:45:50 +01:00
|
|
|
this.showLoader = false;
|
2020-08-21 18:26:03 +01:00
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
break;
|
|
|
|
|
}
|
2020-08-18 23:32:12 +01:00
|
|
|
}
|
2020-08-21 16:18:37 +01:00
|
|
|
|
|
|
|
|
showGreeting(){
|
|
|
|
|
if(this.today.getHours() >= 6 && this.today.getHours() < 12){
|
|
|
|
|
this.greetting = this.grettings[0];
|
|
|
|
|
}
|
|
|
|
|
else if(this.today.getHours() >= 12 && this.today.getHours() < 18){
|
|
|
|
|
this.greetting = this.grettings[1];
|
|
|
|
|
}
|
|
|
|
|
else /* if(this.today.getHours() < 6 && this.today.getHours() >= 18) */{
|
|
|
|
|
this.greetting = this.grettings[2];
|
|
|
|
|
}
|
2020-08-18 23:32:12 +01:00
|
|
|
}
|
|
|
|
|
|
2020-08-21 16:18:37 +01:00
|
|
|
gotTo(){
|
|
|
|
|
this.router.navigate(['/home/events']);
|
2020-08-18 23:32:12 +01:00
|
|
|
}
|
|
|
|
|
|
2020-08-28 11:37:28 +01:00
|
|
|
showAlert(){
|
|
|
|
|
this.alertController.presentAlert("Funcionalidade em desenvolvimento!");
|
|
|
|
|
}
|
|
|
|
|
|
2020-08-28 15:28:38 +01:00
|
|
|
logout()
|
|
|
|
|
{
|
|
|
|
|
this.authService.ValidatedUser.BasicAuthKey = "";
|
|
|
|
|
this.router.navigate(['/home/login']);
|
|
|
|
|
}
|
|
|
|
|
|
2020-08-18 23:32:12 +01:00
|
|
|
}
|
|
|
|
|
|