91 lines
2.6 KiB
TypeScript
91 lines
2.6 KiB
TypeScript
import { Component, OnInit } from '@angular/core';
|
|
import { FormControl, FormGroup, Validators } from '@angular/forms';
|
|
import { Tab1Service } from '../tab1/tab1.service';
|
|
import { Evento } from '../evento';
|
|
import { Router } from '@angular/router';
|
|
|
|
@Component({
|
|
selector: 'app-prompt-evento',
|
|
templateUrl: './prompt-evento.page.html',
|
|
styleUrls: ['./prompt-evento.page.scss'],
|
|
})
|
|
export class PromptEventoPage implements OnInit{
|
|
|
|
submitted = false;
|
|
editarEvento = false;
|
|
eventoForm = new FormGroup({
|
|
nombre: new FormControl('', Validators.required),
|
|
fecha: new FormControl('', Validators.required),
|
|
precio1: new FormControl('', Validators.required),
|
|
precio2: new FormControl('', Validators.required),
|
|
descripcion: new FormControl('', Validators.required),
|
|
});
|
|
|
|
eventos: Evento[];
|
|
|
|
constructor(private tab1Service: Tab1Service, private router: Router) {
|
|
|
|
}
|
|
|
|
ngOnInit(){
|
|
if (this.tab1Service.editarEvento==true){
|
|
this.eventoForm = this.tab1Service.eventoForms[this.tab1Service.eventoIndex];
|
|
}
|
|
}
|
|
onSubmit(){
|
|
this.submitted = true;
|
|
if (this.eventoForm.valid){
|
|
let evento = new Evento();
|
|
this.asignarEvento(evento);
|
|
this.router.navigate(['/tabs']);
|
|
}
|
|
}
|
|
asignarEvento(evento: Evento){
|
|
evento.setNombre(this.eventoForm.get('nombre').value);
|
|
evento.setDesc(this.eventoForm.get('descripcion').value);
|
|
evento.setFecha(this.eventoForm.get('fecha').value);
|
|
evento.setPrecio1(this.eventoForm.get('precio1').value);
|
|
evento.setPrecio2(this.eventoForm.get('precio2').value);
|
|
//evento.setDia(evento.getFecha()); el datetime de Ion devuelve un String, no se puede
|
|
//evento.setHora(evento.getFecha()); transformar en dia y hora
|
|
if (!this.tab1Service.eventos){
|
|
this.tab1Service.initEventos();}
|
|
if(!this.tab1Service.eventoForms){
|
|
this.tab1Service.initEventoForms();}
|
|
if(this.tab1Service.editarEvento==true){
|
|
this.tab1Service.eventos[this.tab1Service.eventoIndex] = evento;
|
|
this.tab1Service.eventoForms[this.tab1Service.eventoIndex] = this.eventoForm;
|
|
}
|
|
else{
|
|
this.tab1Service.eventos.push(evento);
|
|
this.tab1Service.eventoForms.push(this.eventoForm);}
|
|
|
|
}
|
|
|
|
get nombre(){
|
|
return this.eventoForm.get('nombre');
|
|
}
|
|
|
|
get fecha(){
|
|
return this.eventoForm.get('fecha');
|
|
}
|
|
|
|
get hora(){
|
|
return this.eventoForm.get('hora');
|
|
}
|
|
|
|
get precio1() {
|
|
return this.eventoForm.get('precio1');
|
|
}
|
|
|
|
get precio2() {
|
|
return this.eventoForm.get('precio2');
|
|
}
|
|
|
|
get descripcion(){
|
|
return this.eventoForm.get('descripcion');
|
|
}
|
|
|
|
|
|
}
|