mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-21 05:45:50 +00:00
change components in edit-event
This commit is contained in:
@@ -285,6 +285,7 @@ export class AgendaPage implements OnInit {
|
|||||||
/* console.log('Event clicked', event); */
|
/* console.log('Event clicked', event); */
|
||||||
//clear
|
//clear
|
||||||
|
|
||||||
|
|
||||||
this.setIntervenient([]);
|
this.setIntervenient([]);
|
||||||
this.setIntervenientCC([]);
|
this.setIntervenientCC([]);
|
||||||
this.clearPostEvent();
|
this.clearPostEvent();
|
||||||
|
|||||||
@@ -8,6 +8,21 @@ import { EditEventPageRoutingModule } from './edit-event-routing.module';
|
|||||||
|
|
||||||
import { EditEventPage } from './edit-event.page';
|
import { EditEventPage } from './edit-event.page';
|
||||||
import { AttendeeModalPageModule } from 'src/app/shared/event/attendee-modal/attendee-modal.module';
|
import { AttendeeModalPageModule } from 'src/app/shared/event/attendee-modal/attendee-modal.module';
|
||||||
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
||||||
|
import { MatInputModule } from '@angular/material/input';
|
||||||
|
|
||||||
|
import { MatNativeDateModule } from '@angular/material/core';
|
||||||
|
|
||||||
|
import {
|
||||||
|
NgxMatDatetimePickerModule,
|
||||||
|
NgxMatNativeDateModule,
|
||||||
|
NgxMatTimepickerModule
|
||||||
|
} from '@angular-material-components/datetime-picker';
|
||||||
|
|
||||||
|
import { ReactiveFormsModule } from '@angular/forms';
|
||||||
|
import { MatButtonModule } from '@angular/material/button';
|
||||||
|
import { MatSelectModule } from '@angular/material/select';
|
||||||
|
import { NgxMatMomentModule } from '@angular-material-components/moment-adapter';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -15,7 +30,16 @@ import { AttendeeModalPageModule } from 'src/app/shared/event/attendee-modal/att
|
|||||||
FormsModule,
|
FormsModule,
|
||||||
IonicModule,
|
IonicModule,
|
||||||
EditEventPageRoutingModule,
|
EditEventPageRoutingModule,
|
||||||
|
MatDatepickerModule,
|
||||||
|
MatInputModule,
|
||||||
|
MatNativeDateModule,
|
||||||
|
NgxMatDatetimePickerModule,
|
||||||
|
NgxMatTimepickerModule,
|
||||||
|
NgxMatNativeDateModule,
|
||||||
|
NgxMatMomentModule,
|
||||||
|
MatSelectModule,
|
||||||
|
MatButtonModule,
|
||||||
|
ReactiveFormsModule,
|
||||||
//
|
//
|
||||||
AttendeeModalPageModule
|
AttendeeModalPageModule
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -55,19 +55,23 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="container-div width-100">
|
<div class="container-div width-100">
|
||||||
<div class="ion-item-class-2">
|
<div class="ion-item-class-2 width-100 d-flex">
|
||||||
<div class="ion-icon-class">
|
<div class="ion-icon-class">
|
||||||
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<div class="ion-input-class">
|
<div class="ion-input-class flex-grow-1">
|
||||||
<ion-select placeholder="Selecione agenda*"
|
|
||||||
selectedText="{{postEvent.CalendarName}}"
|
<mat-form-field appearance="none" floatLabel="never" class="width-100 " >
|
||||||
[(ngModel)]="postEvent.CalendarName"
|
<mat-select placeholder="Selecione agenda*" [(ngModel)]="postEvent.CalendarName" >
|
||||||
interface="action-sheet" Cancel-text="Cancelar"
|
<mat-option value="Oficial">
|
||||||
required>
|
Oficial
|
||||||
<ion-select-option value="Oficial">Oficial</ion-select-option>
|
</mat-option>
|
||||||
<ion-select-option value="Pessoal">Pessoal</ion-select-option>
|
<mat-option value="Pessoal">
|
||||||
</ion-select>
|
Pessoal
|
||||||
|
</mat-option>
|
||||||
|
</mat-select>
|
||||||
|
</mat-form-field>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -82,21 +86,30 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="container-div width-100">
|
<div class="container-div width-100">
|
||||||
<div class="ion-item-class-2">
|
<div class="ion-item-class-2 width-100 d-flex">
|
||||||
<div class="ion-icon-class">
|
<div class="ion-icon-class">
|
||||||
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<div class="ion-input-class" [class.input-error]="Form?.get('Categories')?.invalid && validateFrom ">
|
<div class="ion-input-class flex-grow-1" [class.input-error]="Form?.get('Categories')?.invalid && validateFrom ">
|
||||||
<ion-select placeholder="Selecione tipo de evento*"
|
|
||||||
[(ngModel)]="postEvent.Category"
|
<mat-form-field appearance="none" floatLabel="never" class="width-100" required>
|
||||||
selectedText="{{postEvent.Category}}"
|
<!-- <input matInput type="text" > -->
|
||||||
interface="action-sheet"
|
<mat-select placeholder="Selecione o tipo de evento*" matInput [(ngModel)]="postEvent.Category" >
|
||||||
Cancel-text="Cancelar" required>
|
<mat-option value="Reunião">
|
||||||
<ion-select-option value="Reunião">Reunião</ion-select-option>
|
Reunião
|
||||||
<ion-select-option value="Viagem">Viagem</ion-select-option>
|
</mat-option>
|
||||||
<ion-select-option value="Conferência">Conferência</ion-select-option>
|
<mat-option value="Viagem">
|
||||||
<ion-select-option value="Encontro">Encontro</ion-select-option>
|
Viagem
|
||||||
</ion-select>
|
</mat-option>
|
||||||
|
<mat-option value="Conferência">
|
||||||
|
Conferência
|
||||||
|
</mat-option>
|
||||||
|
<mat-option value="Encontro">
|
||||||
|
Encontro
|
||||||
|
</mat-option>
|
||||||
|
</mat-select>
|
||||||
|
</mat-form-field>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -115,77 +128,103 @@
|
|||||||
<div class="ion-icon-class">
|
<div class="ion-icon-class">
|
||||||
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<div class="ion-input-class width-100" [class.input-error]="Form?.get('Date')?.invalid && validateFrom ">
|
<div class="ion-input-class" [class.input-error]="Form?.get('Date')?.invalid && validateFrom ">
|
||||||
<ion-datetime
|
|
||||||
placeholder="Início"
|
<mat-form-field appearance="none" floatLabel="never" class="date-hour-picker">
|
||||||
[(ngModel)]="postEvent.StartDate"
|
<input matInput [ngxMatDatetimePicker]="picker1"
|
||||||
displayFormat="D MMM YYYY H:mm"
|
placeholder="Choose a date"
|
||||||
minuteValues="0,5,10,15,20,25,30,35,40,45,50,55"
|
[(ngModel)]="postEvent.StartDate"
|
||||||
monthShortNames="Jan, Fev, Mar, Abr, Mai, Jun, Jul, Aug, Sep, Out, Nov, Dez"
|
[max]="maxDate"
|
||||||
min="{{minDate}}"
|
[disabled]="disabled"
|
||||||
max="2025"
|
>
|
||||||
>
|
<mat-datepicker-toggle id="new-inicio" matSuffix [for]="picker1"></mat-datepicker-toggle>
|
||||||
</ion-datetime>
|
<ngx-mat-datetime-picker #picker1
|
||||||
<!-- <ion-input placeholder="Data início" [(ngModel)]="postData.StartDate"></ion-input> -->
|
[showSpinners]="showSpinners"
|
||||||
|
[showSeconds]="showSeconds"
|
||||||
|
[stepHour]="stepHour" [stepMinute]="stepMinute"
|
||||||
|
[stepSecond]="stepSecond"
|
||||||
|
[touchUi]="touchUi">
|
||||||
|
</ngx-mat-datetime-picker>
|
||||||
|
</mat-form-field>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="container-div width-100">
|
<div class="container-div width-100">
|
||||||
<div class="ion-item-class-2">
|
<div class="ion-item-class-2 width-100 d-flex">
|
||||||
<div class="ion-icon-class">
|
<div class="ion-icon-class">
|
||||||
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<div class="ion-input-class" [class.input-error]="Form?.get('Date')?.invalid && validateFrom ">
|
<div class="ion-input-class flex-grow-1" [class.input-error]="Form?.get('Date')?.invalid && validateFrom ">
|
||||||
<ion-datetime
|
|
||||||
placeholder="Fim"
|
<mat-form-field appearance="none" floatLabel="never" floatLabel="never" class="date-hour-picker">
|
||||||
[(ngModel)]="postEvent.EndDate"
|
<input matInput [ngxMatDatetimePicker]="fim"
|
||||||
displayFormat="D MMM YYYY H:mm"
|
placeholder="Choose a date"
|
||||||
minuteValues="0,5,10,15,20,25,30,35,40,45,50,55"
|
[(ngModel)]="postEvent.EndDate"
|
||||||
monthShortNames="Jan, Fev, Mar, Abr, Mai, Jun, Jul, Aug, Sep, Out, Nov, Dez"
|
[max]="maxDate"
|
||||||
min="{{minDate}}"
|
[disabled]="disabled"
|
||||||
max="2025"
|
>
|
||||||
>
|
<mat-datepicker-toggle id="new-fim" matSuffix [for]="fim"></mat-datepicker-toggle>
|
||||||
</ion-datetime>
|
<ngx-mat-datetime-picker #fim
|
||||||
<!-- <ion-input placeholder="Data fim" [(ngModel)]="postData.EndDate"></ion-input> -->
|
[showSpinners]="showSpinners"
|
||||||
|
[showSeconds]="showSeconds"
|
||||||
|
[stepHour]="stepHour" [stepMinute]="stepMinute"
|
||||||
|
[stepSecond]="stepSecond">
|
||||||
|
</ngx-mat-datetime-picker>
|
||||||
|
</mat-form-field>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="container-div width-100">
|
<div class="container-div d-flex width-100">
|
||||||
<div class="ion-item-class-2">
|
<div class="ion-item-class-2 width-100 d-flex">
|
||||||
<div class="ion-icon-class">
|
<div class="ion-icon-class">
|
||||||
<ion-icon slot="start" src="assets/images/icons-refresh.svg"></ion-icon>
|
<ion-icon slot="start" src="assets/images/icons-refresh.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<div class="ion-input-class">
|
<div class="ion-input-class flex-grow-1">
|
||||||
<ion-select placeholder="Selecione a repetição*"
|
<mat-form-field appearance="none" floatLabel="never" class="width-100" value="false" interface="action-sheet" required>
|
||||||
[(ngModel)]="selectedRecurringType"
|
<mat-select
|
||||||
(ngModelChange)="onSelectedRecurringChanged($event)"
|
placeholder="Selecione repetição*"
|
||||||
interface="action-sheet"
|
[(ngModel)]="selectedRecurringType"
|
||||||
Cancel-text="Cancelar" required>
|
(ngModelChange)="onSelectedRecurringChanged($event)">
|
||||||
<ion-select-option *ngFor="let recurring of recurringTypes" value="{{recurring.Code}}">{{recurring.Description}}</ion-select-option>
|
<mat-option
|
||||||
</ion-select>
|
*ngFor="let recurring of recurringTypes"
|
||||||
|
value="{{recurring.Code}}">
|
||||||
|
{{recurring.Description}}
|
||||||
|
</mat-option>
|
||||||
|
</mat-select>
|
||||||
|
</mat-form-field>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="selectedRecurringType != '-1'" class="container-div width-100">
|
<div *ngIf="selectedRecurringType != '-1'" class="container-div width-100">
|
||||||
<div class="ion-item-class-2">
|
<div class="ion-item-class-2 d-flex">
|
||||||
<div class="ion-icon-class">
|
<div class="ion-icon-class">
|
||||||
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<div class="ion-input-class">
|
<div (click)="openLastOccurrence()" class="ion-input-class flex-grow-1">
|
||||||
<ion-datetime
|
|
||||||
placeholder="Última ocorrência"
|
<mat-form-field class="date-hour-picker">
|
||||||
[(ngModel)]="postEvent.EventRecurrence.LastOccurrence"
|
<input matInput [ngxMatDatetimePicker]="occurrrence"
|
||||||
displayFormat="D MMM YYYY H:mm"
|
placeholder="Choose a date"
|
||||||
minuteValues="0,5,10,15,20,25,30,35,40,45,50,55"
|
[(ngModel)]="postEvent.EventRecurrence.LastOccurrence"
|
||||||
monthShortNames="Jan, Fev, Mar, Abr, Mai, Jun, Jul, Aug, Sep, Out, Nov, Dez"
|
[disabled]="disabled"
|
||||||
min="2021"
|
>
|
||||||
max="2025"
|
<mat-datepicker-toggle id="last-occurrence" matSuffix [for]="occurrrence"></mat-datepicker-toggle>
|
||||||
>
|
<ngx-mat-datetime-picker #occurrrence
|
||||||
</ion-datetime>
|
[showSpinners]="showSpinners"
|
||||||
<!-- <ion-input placeholder="Data fim" [(ngModel)]="postData.EndDate"></ion-input> -->
|
[showSeconds]="showSeconds"
|
||||||
|
[stepHour]="stepHour" [stepMinute]="stepMinute"
|
||||||
|
[stepSecond]="stepSecond"
|
||||||
|
[touchUi]="touchUi"
|
||||||
|
>
|
||||||
|
</ngx-mat-datetime-picker>
|
||||||
|
</mat-form-field>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -11,20 +11,33 @@ import { ToastService } from 'src/app/services/toast.service';
|
|||||||
import { Event } from '../../../models/event.model';
|
import { Event } from '../../../models/event.model';
|
||||||
import { AttendeesPageModal } from '../../events/attendees/attendees.page';
|
import { AttendeesPageModal } from '../../events/attendees/attendees.page';
|
||||||
import { SearchPage } from '../../search/search.page';
|
import { SearchPage } from '../../search/search.page';
|
||||||
import { ThemeService } from 'src/app/services/theme.service'
|
import { ThemeService } from 'src/app/services/theme.service';
|
||||||
|
import { NgxMatDateFormats } from '@angular-material-components/datetime-picker';
|
||||||
|
import { NGX_MAT_DATE_FORMATS } from '@angular-material-components/datetime-picker';
|
||||||
|
|
||||||
|
const CUSTOM_DATE_FORMATS: NgxMatDateFormats = {
|
||||||
|
parse: {
|
||||||
|
dateInput: "YYYY-MMMM-DD HH:mm"
|
||||||
|
},
|
||||||
|
display: {
|
||||||
|
dateInput: "DD MMM YYYY H:mm",
|
||||||
|
monthYearLabel: "MMM YYYY",
|
||||||
|
dateA11yLabel: "LL",
|
||||||
|
monthYearA11yLabel: "MMMM YYYY"
|
||||||
|
}
|
||||||
|
}
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-edit-event',
|
selector: 'app-edit-event',
|
||||||
templateUrl: './edit-event.page.html',
|
templateUrl: './edit-event.page.html',
|
||||||
styleUrls: ['./edit-event.page.scss'],
|
styleUrls: ['./edit-event.page.scss'],
|
||||||
|
providers: [
|
||||||
|
{ provide: NGX_MAT_DATE_FORMATS, useValue: CUSTOM_DATE_FORMATS },
|
||||||
|
]
|
||||||
})
|
})
|
||||||
export class EditEventPage implements OnInit {
|
export class EditEventPage implements OnInit {
|
||||||
|
|
||||||
Form: FormGroup;
|
Form: FormGroup;
|
||||||
validateFrom = false
|
validateFrom = false
|
||||||
public endMinDate = new Date(new Date().getTime() + 15 * 60000);
|
|
||||||
public minDate = new Date().toISOString().slice(0,10)
|
|
||||||
|
|
||||||
postEvent: Event;
|
postEvent: Event;
|
||||||
isRecurring:string;
|
isRecurring:string;
|
||||||
@@ -41,6 +54,19 @@ export class EditEventPage implements OnInit {
|
|||||||
recurringTypes: any;
|
recurringTypes: any;
|
||||||
selectedRecurringType: any;
|
selectedRecurringType: any;
|
||||||
|
|
||||||
|
public date: any;
|
||||||
|
public disabled = false;
|
||||||
|
public showSpinners = true;
|
||||||
|
public showSeconds = false;
|
||||||
|
public touchUi = false;
|
||||||
|
public enableMeridian = false;
|
||||||
|
public minDate = new Date().toISOString().slice(0,10)
|
||||||
|
public endMinDate = new Date(new Date().getTime() + 15 * 60000).toISOString().slice(0,10)
|
||||||
|
public maxDate: any;
|
||||||
|
public stepHour = 1;
|
||||||
|
public stepMinute = 5;
|
||||||
|
public stepSecond = 5;
|
||||||
|
|
||||||
loadedEventAttachments: Attachment[] = [];
|
loadedEventAttachments: Attachment[] = [];
|
||||||
taskParticipants: any = [];
|
taskParticipants: any = [];
|
||||||
taskParticipantsCc: any = [];
|
taskParticipantsCc: any = [];
|
||||||
@@ -48,6 +74,11 @@ export class EditEventPage implements OnInit {
|
|||||||
|
|
||||||
showAttendees = false;
|
showAttendees = false;
|
||||||
|
|
||||||
|
public listColors = ['primary', 'accent', 'warn'];
|
||||||
|
public stepHours = [1, 2, 3, 4, 5];
|
||||||
|
public stepMinutes = [1, 5, 10, 15, 20, 25];
|
||||||
|
public stepSeconds = [1, 5, 10, 15, 20, 25];
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private modalController: ModalController,
|
private modalController: ModalController,
|
||||||
private navParams: NavParams,
|
private navParams: NavParams,
|
||||||
@@ -59,10 +90,12 @@ export class EditEventPage implements OnInit {
|
|||||||
public ThemeService: ThemeService
|
public ThemeService: ThemeService
|
||||||
) {
|
) {
|
||||||
|
|
||||||
this.postEvent = new Event();
|
/* this.postEvent = new Event(); */
|
||||||
this.isEventEdited = false;
|
this.isEventEdited = false;
|
||||||
this.postEvent.EventRecurrence = { Type:'-1', LastOccurrence:''};
|
/* this.postEvent.EventRecurrence = { Type:'-1', LastOccurrence:''}; */
|
||||||
this.postEvent = this.navParams.get('event');
|
this.postEvent = this.navParams.get('event');
|
||||||
|
console.log(this.postEvent);
|
||||||
|
|
||||||
this.caller = this.navParams.get('caller');
|
this.caller = this.navParams.get('caller');
|
||||||
this.initCalendarName = this.postEvent.CalendarName;
|
this.initCalendarName = this.postEvent.CalendarName;
|
||||||
|
|
||||||
@@ -99,6 +132,7 @@ export class EditEventPage implements OnInit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
|
||||||
window.onresize = (event) => {
|
window.onresize = (event) => {
|
||||||
// if not mobile remove all component
|
// if not mobile remove all component
|
||||||
if( window.innerWidth >= 1024) {
|
if( window.innerWidth >= 1024) {
|
||||||
@@ -178,6 +212,28 @@ export class EditEventPage implements OnInit {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
openInicio() {
|
||||||
|
let input: any = document.querySelector('#new-inicio')
|
||||||
|
if(input) {
|
||||||
|
console.log(input)
|
||||||
|
input.click()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
openFim() {
|
||||||
|
let input: any = document.querySelector('#new-fim')
|
||||||
|
if(input) {
|
||||||
|
input.click()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
openLastOccurrence() {
|
||||||
|
let input: any = document.querySelector('#last-occurrence')
|
||||||
|
if(input) {
|
||||||
|
input.click()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
save() {
|
save() {
|
||||||
|
|
||||||
|
|||||||
@@ -33,18 +33,11 @@ import { NgxMatMomentModule } from '@angular-material-components/moment-adapter'
|
|||||||
MatDatepickerModule,
|
MatDatepickerModule,
|
||||||
MatInputModule,
|
MatInputModule,
|
||||||
MatNativeDateModule,
|
MatNativeDateModule,
|
||||||
//
|
|
||||||
NgxMatDatetimePickerModule,
|
NgxMatDatetimePickerModule,
|
||||||
NgxMatTimepickerModule,
|
NgxMatTimepickerModule,
|
||||||
NgxMatNativeDateModule,
|
NgxMatNativeDateModule,
|
||||||
//
|
|
||||||
|
|
||||||
NgxMatMomentModule,
|
NgxMatMomentModule,
|
||||||
// BrowserAnimationsModule,
|
|
||||||
// MatRadioModule,
|
|
||||||
MatSelectModule,
|
MatSelectModule,
|
||||||
//MatRadioModule,
|
|
||||||
//MatCheckboxModule,
|
|
||||||
MatButtonModule,
|
MatButtonModule,
|
||||||
ReactiveFormsModule
|
ReactiveFormsModule
|
||||||
],
|
],
|
||||||
|
|||||||
Reference in New Issue
Block a user