mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-18 12:37:53 +00:00
Merge remote-tracking branch 'origin/feature/calendar-fix' into developer
This commit is contained in:
Generated
+8
-20
@@ -2208,6 +2208,14 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"@ionic-native/wheel-selector": {
|
||||
"version": "5.31.1",
|
||||
"resolved": "https://registry.npmjs.org/@ionic-native/wheel-selector/-/wheel-selector-5.31.1.tgz",
|
||||
"integrity": "sha512-pZIicvLZf1zOrJohhsER6zJikf09Qvrmdh9NfB2ilO2GIJv2sw1JfR45E/BviKehs5t5G1pem1fyLtwOyFSi4Q==",
|
||||
"requires": {
|
||||
"@types/cordova": "^0.0.34"
|
||||
}
|
||||
},
|
||||
"@ionic/angular": {
|
||||
"version": "5.3.1",
|
||||
"resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-5.3.1.tgz",
|
||||
@@ -2935,21 +2943,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"@ng-bootstrap/ng-bootstrap": {
|
||||
"version": "9.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@ng-bootstrap/ng-bootstrap/-/ng-bootstrap-9.0.1.tgz",
|
||||
"integrity": "sha512-dJFoK2mRsj/zL87PNv9frBD+72MkrMeFshXE26FKPf8P8JNFoL6zrcNLxlBouQ1rWBItH50BmlEqQOwyXazF7w==",
|
||||
"requires": {
|
||||
"tslib": "^2.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"tslib": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz",
|
||||
"integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"@ngtools/webpack": {
|
||||
"version": "9.1.12",
|
||||
"resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-9.1.12.tgz",
|
||||
@@ -3079,11 +3072,6 @@
|
||||
"resolved": "https://registry.npmjs.org/@types/cordova/-/cordova-0.0.34.tgz",
|
||||
"integrity": "sha1-6nrd907Ow9dimCegw54smt3HPQQ="
|
||||
},
|
||||
"@types/date-fns": {
|
||||
"version": "0.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@types/date-fns/-/date-fns-0.0.2.tgz",
|
||||
"integrity": "sha1-px0uCyq1e7jegchD5ez24WF3m4w="
|
||||
},
|
||||
"@types/glob": {
|
||||
"version": "7.1.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz",
|
||||
|
||||
+1
-1
@@ -35,11 +35,11 @@
|
||||
"@ionic-native/ionic-webview": "^5.30.0",
|
||||
"@ionic-native/splash-screen": "^5.0.0",
|
||||
"@ionic-native/status-bar": "^5.0.0",
|
||||
"@ionic-native/wheel-selector": "^5.31.1",
|
||||
"@ionic/angular": "^5.0.0",
|
||||
"@ionic/pwa-elements": "^3.0.1",
|
||||
"@ionic/storage": "^2.3.1",
|
||||
"@logisticinfotech/ionic4-datepicker": "^1.4.4",
|
||||
"@ng-bootstrap/ng-bootstrap": "^9.0.1",
|
||||
"angular-calendar": "^0.28.22",
|
||||
"angular-tag-cloud-module": "^5.2.2",
|
||||
"angular2-calendar": "^0.3.7",
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
<ion-tab-button tab="agenda">
|
||||
<!-- <ion-icon name="calendar"></ion-icon> -->
|
||||
<ion-icon class="nav-icon" src="assets/images/icons-nav-calendar.svg"></ion-icon>
|
||||
<ion-icon class="nav-icon" src="assets/images/icons-nav-calendar.svg"></ion-icon>
|
||||
<ion-label>Agenda</ion-label>
|
||||
</ion-tab-button>
|
||||
<ion-tab-button tab="gabinete-digital">
|
||||
|
||||
@@ -26,12 +26,12 @@ import { adapterFactory } from 'angular-calendar/date-adapters/date-fns';
|
||||
CommonModule,
|
||||
FormsModule,
|
||||
IonicModule,
|
||||
SharedModule,
|
||||
/* ComponentsModule, */
|
||||
CalendarModule.forRoot({
|
||||
provide: DateAdapter,
|
||||
useFactory: adapterFactory
|
||||
}),
|
||||
SharedModule,
|
||||
AgendaPageRoutingModule,
|
||||
NgCalendarModule,
|
||||
CalModalPageModule,
|
||||
|
||||
@@ -2,177 +2,181 @@
|
||||
<app-header></app-header>
|
||||
</ion-header>
|
||||
<ion-header>
|
||||
<ion-toolbar class="bg-blue">
|
||||
<div class="bg-blue">
|
||||
<div class="main-content">
|
||||
<!-- Toolbar -->
|
||||
<ion-toolbar>
|
||||
<div>
|
||||
<!-- Calendar is here -->
|
||||
<div [ngSwitch]="segment">
|
||||
<div *ngSwitchCase="'Combinada'">
|
||||
|
||||
<!-- Calendar is here -->
|
||||
<div [ngSwitch]="segment">
|
||||
<div *ngSwitchCase="'Combinada'">
|
||||
<ion-row class="ion-justify-content-between calendar-tool-tip">
|
||||
<ion-row class="ion-align-items-center">
|
||||
<!-- Move back one screen of the slides -->
|
||||
|
||||
<div (click)="back()" class="arrow">
|
||||
<ion-icon slot="icon-only" src="assets/images/icons-calendar-arrow-left.svg"></ion-icon>
|
||||
</div>
|
||||
|
||||
<ion-row class="ion-justify-content-between calendar-tool-tip">
|
||||
<ion-row class="ion-align-items-center">
|
||||
<!-- Move back one screen of the slides -->
|
||||
<ion-button fill="clear" (click)="back()">
|
||||
<ion-icon slot="icon-only" src="assets/images/icons-calendar-arrow-left.svg"></ion-icon>
|
||||
</ion-button>
|
||||
<!-- Move forward one screen of the slides -->
|
||||
<h2 class="capitaliseText">{{ viewTitle }}</h2>
|
||||
<ion-icon class="arrow-down" src="assets/images/icons-arrow-arrow-down.svg"></ion-icon>
|
||||
<!-- Move forward one screen of the slides -->
|
||||
<ion-button fill="clear" (click)="next()">
|
||||
<ion-icon slot="icon-only" src="assets/images/icons-calendar-arrow-right.svg"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-row>
|
||||
<ion-row class="ion-align-items-center">
|
||||
<ion-icon name="add-circle-outline"></ion-icon>
|
||||
<ion-icon name="add-circle-outline"></ion-icon>
|
||||
<ion-icon name="add" (click)="openCalModal()" ></ion-icon>
|
||||
<!-- Move forward one screen of the slides -->
|
||||
<h2 class="capitaliseText">{{ viewTitle }}</h2>
|
||||
<div class="drop-down">
|
||||
<ion-icon slot="icon-only" class="arrow-down" src="assets/images/icons-arrow-arrow-down.svg"></ion-icon>
|
||||
<div class="drop-down-container">
|
||||
<ul>
|
||||
<li *ngFor="let month of monthList" (click)="dropDownChangeDate(month.id)" >{{ month.name }}</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Move forward one screen of the slides -->
|
||||
<div (click)="next()" class="arrow">
|
||||
<ion-icon slot="icon-only" src="assets/images/icons-calendar-arrow-right.svg"></ion-icon>
|
||||
</div>
|
||||
|
||||
</ion-row>
|
||||
<ion-row class="ion-align-items-center">
|
||||
<ion-icon class="right-icons" name="add-circle-outline"></ion-icon>
|
||||
<ion-icon class="right-icons" src="assets/images/icons-received-event.svg"></ion-icon>
|
||||
<ion-icon class="right-icons" src="assets/images/icons-add-new-event.svg" (click)="openCalModal()" ></ion-icon>
|
||||
</ion-row>
|
||||
</ion-row>
|
||||
</ion-row>
|
||||
|
||||
<calendar
|
||||
[eventSource]="eventSource"
|
||||
[calendarMode]="calendar.mode"
|
||||
[currentDate]="calendar.currentDate"
|
||||
(onEventSelected)="onEventSelected($event)"
|
||||
(onTitleChanged)="onViewTitleChanged($event)"
|
||||
(onRangeChanged)="onRangeChanged($event)"
|
||||
(onCurrentDateChanged)="onCurrentChanged($event)"
|
||||
queryMode="remote"
|
||||
startHour="6"
|
||||
endHour="20"
|
||||
step="30"
|
||||
startingDayMonth="1"
|
||||
noEventsLabel="Sem Eventos"
|
||||
allDayLabel="Todo o dia"
|
||||
[monthviewDisplayEventTemplate]="template"
|
||||
>
|
||||
</calendar>
|
||||
|
||||
<!-- Adding a customized ng-template -->
|
||||
<ng-template #template let-view="view" let-row="row" let-col="col">
|
||||
<div [class.with-event]="view.dates[row*7+col].events.length">
|
||||
{{view.dates[row*7+col].label}}
|
||||
<div class="indicator-container">
|
||||
<!-- <div class="event-indicator" *ngFor="let e of view.dates[row*7+col].events"></div> -->
|
||||
|
||||
<calendar
|
||||
[eventSource]="eventSource"
|
||||
[calendarMode]="calendar.mode"
|
||||
[currentDate]="calendar.currentDate"
|
||||
(onEventSelected)="onEventSelected($event)"
|
||||
(onTitleChanged)="onViewTitleChanged($event)"
|
||||
(onRangeChanged)="onRangeChanged($event)"
|
||||
(onCurrentDateChanged)="onCurrentChanged($event)"
|
||||
queryMode="remote"
|
||||
startHour="6"
|
||||
endHour="20"
|
||||
step="30"
|
||||
startingDayMonth="1"
|
||||
noEventsLabel="Sem Eventos"
|
||||
allDayLabel="Todo o dia"
|
||||
[monthviewDisplayEventTemplate]="template"
|
||||
>
|
||||
</calendar>
|
||||
|
||||
<!-- Adding a customized ng-template -->
|
||||
<ng-template #template let-view="view" let-row="row" let-col="col">
|
||||
<div [className]="currentDayEventDisplayBorder(view.dates, row*7+col)" [class.with-event]="view.dates[row*7+col].events.length">
|
||||
{{ view.dates[row*7+col].label }}
|
||||
<div class="indicator-container">
|
||||
<!-- <div class="event-indicator" *ngFor="let e of view.dates[row*7+col].events"></div> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</ng-template>
|
||||
</div>
|
||||
<div *ngSwitchCase="'Pessoal'">
|
||||
<ion-row>
|
||||
<!-- Move back one screen of the slides -->
|
||||
<ion-col size="2">
|
||||
<ion-button fill="clear" (click)="back()">
|
||||
<ion-icon name="arrow-back" slot="icon-only"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-col>
|
||||
<!-- The title of the calendar in the middle -->
|
||||
<ion-col size="8" class="ion-text-center">
|
||||
<h2 class="capitaliseText">{{ viewTitle }}</h2>
|
||||
</ion-col>
|
||||
|
||||
<!-- Move forward one screen of the slides -->
|
||||
<ion-col size="2">
|
||||
<ion-button fill="clear" (click)="next()">
|
||||
<ion-icon name="arrow-forward" slot="icon-only"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-col>
|
||||
</ion-row>
|
||||
|
||||
<calendar
|
||||
[eventSource]="eventSource"
|
||||
[calendarMode]="calendar.mode"
|
||||
[currentDate]="calendar.currentDate"
|
||||
(onEventSelected)="onEventSelected($event)"
|
||||
(onTitleChanged)="onViewTitleChanged($event)"
|
||||
(onRangeChanged)="onRangeChanged($event)"
|
||||
(onCurrentDateChanged)="onCurrentChanged($event)"
|
||||
queryMode="remote"
|
||||
startHour="6"
|
||||
endHour="20"
|
||||
step="30"
|
||||
startingDayMonth="1"
|
||||
noEventsLabel="Sem Eventos"
|
||||
allDayLabel="Todo o dia"
|
||||
[monthviewDisplayEventTemplate]="template"
|
||||
>
|
||||
</calendar>
|
||||
<!-- (onTimeSelected)="onTimeSelected($event)" -->
|
||||
|
||||
<!-- Adding a customized ng-template -->
|
||||
<ng-template #template let-view="view" let-row="row" let-col="col">
|
||||
<div [class.with-event]="view.dates[row*7+col].events.length">
|
||||
{{view.dates[row*7+col].label}}
|
||||
<div class="indicator-container">
|
||||
<!-- <div class="event-indicator" *ngFor="let e of view.dates[row*7+col].events"></div> -->
|
||||
</ng-template>
|
||||
</div>
|
||||
<div *ngSwitchCase="'Pessoal'">
|
||||
<ion-row>
|
||||
<!-- Move back one screen of the slides -->
|
||||
<ion-col size="2">
|
||||
<ion-button fill="clear" (click)="back()">
|
||||
<ion-icon name="arrow-back" slot="icon-only"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-col>
|
||||
<!-- The title of the calendar in the middle -->
|
||||
<ion-col size="8" class="ion-text-center">
|
||||
<h2 class="capitaliseText">{{ viewTitle }}</h2>
|
||||
</ion-col>
|
||||
|
||||
<!-- Move forward one screen of the slides -->
|
||||
<ion-col size="2">
|
||||
<ion-button fill="clear" (click)="next()">
|
||||
<ion-icon name="arrow-forward" slot="icon-only"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-col>
|
||||
</ion-row>
|
||||
|
||||
<calendar
|
||||
[eventSource]="eventSource"
|
||||
[calendarMode]="calendar.mode"
|
||||
[currentDate]="calendar.currentDate"
|
||||
(onEventSelected)="onEventSelected($event)"
|
||||
(onTitleChanged)="onViewTitleChanged($event)"
|
||||
(onRangeChanged)="onRangeChanged($event)"
|
||||
(onCurrentDateChanged)="onCurrentChanged($event)"
|
||||
queryMode="remote"
|
||||
startHour="6"
|
||||
endHour="20"
|
||||
step="30"
|
||||
startingDayMonth="1"
|
||||
noEventsLabel="Sem Eventos"
|
||||
allDayLabel="Todo o dia"
|
||||
[monthviewDisplayEventTemplate]="template"
|
||||
>
|
||||
</calendar>
|
||||
<!-- (onTimeSelected)="onTimeSelected($event)" -->
|
||||
|
||||
<!-- Adding a customized ng-template -->
|
||||
<ng-template #template let-view="view" let-row="row" let-col="col">
|
||||
<div [class.with-event]="view.dates[row*7+col].events.length">
|
||||
{{view.dates[row*7+col].label}}
|
||||
<div class="indicator-container">
|
||||
<!-- <div class="event-indicator" *ngFor="let e of view.dates[row*7+col].events"></div> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</ng-template>
|
||||
|
||||
</div>
|
||||
<div *ngSwitchCase="'Oficial'">
|
||||
<ion-row>
|
||||
<!-- Move back one screen of the slides -->
|
||||
<ion-col size="2">
|
||||
<ion-button fill="clear" (click)="back()">
|
||||
<ion-icon name="arrow-back" slot="icon-only"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-col>
|
||||
<!-- The title of the calendar in the middle -->
|
||||
<ion-col size="8" class="ion-text-center">
|
||||
<h2 class="capitaliseText">{{ viewTitle }}</h2>
|
||||
</ion-col>
|
||||
|
||||
<!-- Move forward one screen of the slides -->
|
||||
<ion-col size="2">
|
||||
<ion-button fill="clear" (click)="next()">
|
||||
<ion-icon name="arrow-forward" slot="icon-only"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-col>
|
||||
</ion-row>
|
||||
|
||||
<calendar
|
||||
[eventSource]="eventSource"
|
||||
[calendarMode]="calendar.mode"
|
||||
[currentDate]="calendar.currentDate"
|
||||
(onEventSelected)="onEventSelected($event)"
|
||||
(onTitleChanged)="onViewTitleChanged($event)"
|
||||
(onRangeChanged)="onRangeChanged($event)"
|
||||
(onCurrentDateChanged)="onCurrentChanged($event)"
|
||||
queryMode="remote"
|
||||
startHour="6"
|
||||
endHour="20"
|
||||
step="30"
|
||||
startingDayMonth="1"
|
||||
noEventsLabel="Sem Eventos"
|
||||
allDayLabel="Todo o dia"
|
||||
[monthviewDisplayEventTemplate]="template"
|
||||
>
|
||||
</calendar>
|
||||
|
||||
<!-- Adding a customized ng-template -->
|
||||
<ng-template #template let-view="view" let-row="row" let-col="col">
|
||||
<div [class.with-event]="view.dates[row*7+col].events.length">
|
||||
{{view.dates[row*7+col].label}}
|
||||
<div class="indicator-container">
|
||||
<!-- <div class="event-indicator" *ngFor="let e of view.dates[row*7+col].events"></div> -->
|
||||
</ng-template>
|
||||
|
||||
</div>
|
||||
<div *ngSwitchCase="'Oficial'">
|
||||
<ion-row>
|
||||
<!-- Move back one screen of the slides -->
|
||||
<ion-col size="2">
|
||||
<ion-button fill="clear" (click)="back()">
|
||||
<ion-icon name="arrow-back" slot="icon-only"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-col>
|
||||
<!-- The title of the calendar in the middle -->
|
||||
<ion-col size="8" class="ion-text-center">
|
||||
<h2 class="capitaliseText">{{ viewTitle }}</h2>
|
||||
</ion-col>
|
||||
|
||||
<!-- Move forward one screen of the slides -->
|
||||
<ion-col size="2">
|
||||
<ion-button fill="clear" (click)="next()">
|
||||
<ion-icon name="arrow-forward" slot="icon-only"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-col>
|
||||
</ion-row>
|
||||
|
||||
<calendar
|
||||
[eventSource]="eventSource"
|
||||
[calendarMode]="calendar.mode"
|
||||
[currentDate]="calendar.currentDate"
|
||||
(onEventSelected)="onEventSelected($event)"
|
||||
(onTitleChanged)="onViewTitleChanged($event)"
|
||||
(onRangeChanged)="onRangeChanged($event)"
|
||||
(onCurrentDateChanged)="onCurrentChanged($event)"
|
||||
queryMode="remote"
|
||||
startHour="6"
|
||||
endHour="20"
|
||||
step="30"
|
||||
startingDayMonth="1"
|
||||
noEventsLabel="Sem Eventos"
|
||||
allDayLabel="Todo o dia"
|
||||
[monthviewDisplayEventTemplate]="template"
|
||||
>
|
||||
</calendar>
|
||||
|
||||
<!-- Adding a customized ng-template -->
|
||||
<ng-template #template let-view="view" let-row="row" let-col="col">
|
||||
<div [class.with-event]="view.dates[row*7+col].events.length">
|
||||
{{view.dates[row*7+col].label}}
|
||||
<div class="indicator-container">
|
||||
<!-- <div class="event-indicator" *ngFor="let e of view.dates[row*7+col].events"></div> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</ng-template>
|
||||
|
||||
</ng-template>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<ion-fab (click)="openAddEvent()" vertical="bottom" horizontal="end" slot="fixed">
|
||||
<ion-fab-button>
|
||||
<ion-icon name="add" ></ion-icon>
|
||||
</ion-fab-button>
|
||||
</ion-fab>
|
||||
</div>
|
||||
</ion-toolbar>
|
||||
</div>
|
||||
</ion-toolbar>
|
||||
</div>
|
||||
</ion-header>
|
||||
<ion-content>
|
||||
|
||||
@@ -195,7 +199,7 @@
|
||||
</ion-row>
|
||||
</ion-row>
|
||||
|
||||
<!-- Timelien -->
|
||||
<!-- Timeline -->
|
||||
<div *ngIf="showTimeline">
|
||||
<mwl-demo-utils-calendar-header class="timeline"
|
||||
[(view)]="view"
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
|
||||
:host ::ng-deep {
|
||||
.monthview-primary-with-event {
|
||||
background-color: white !important;
|
||||
@@ -328,6 +329,7 @@ label{
|
||||
.arrow-down{
|
||||
font-size: 28px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -355,4 +357,51 @@ label{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.drop-down{
|
||||
|
||||
.drop-down-container{
|
||||
display: none;
|
||||
border-top: 2px solid #42b9fe;
|
||||
position: absolute;
|
||||
background: white;
|
||||
z-index: 100000;
|
||||
box-shadow: 0 4px 9px 0 rgba(0, 0, 0, 0.3);
|
||||
border-bottom-right-radius: 5px;
|
||||
border-bottom-left-radius: 5px;
|
||||
margin-left: -122px;
|
||||
padding: 4px 15px;
|
||||
ul{
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
li{
|
||||
list-style: none;
|
||||
height: 35px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.capitaliseText{
|
||||
min-width: 159px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.arrow{
|
||||
padding: 0px 6px;
|
||||
}
|
||||
|
||||
.right-icons{
|
||||
padding: 0px 4px;
|
||||
}
|
||||
|
||||
|
||||
.capitaliseText{
|
||||
font-size: 20px;
|
||||
}
|
||||
@@ -49,9 +49,23 @@ export class AgendaPage implements OnInit {
|
||||
this.view = view;
|
||||
}
|
||||
|
||||
monthList = [
|
||||
{ name: 'Janeiro', id: 'Jan' },
|
||||
{ name: 'Fevereiro', id: 'Feb' },
|
||||
{ name: 'Março', id: 'Mar' },
|
||||
{ name: 'Abril', id: 'Apr' },
|
||||
{ name: 'Maio', id: 'May' },
|
||||
{ name: 'Junho', id: 'June' },
|
||||
{ name: 'Julho', id: 'July' },
|
||||
{ name: 'Agosto', id: 'Aug' },
|
||||
{ name: 'Setembro', id: 'Sept' },
|
||||
{ name: 'Outubro', id: 'Oct' },
|
||||
{ name: 'Novembro', id: 'Nov' },
|
||||
{ name: 'Dezembro', id: 'Dec' }
|
||||
]
|
||||
|
||||
showTimeline: boolean= false;
|
||||
|
||||
|
||||
events: CalendarEvent[] = [
|
||||
/* {
|
||||
title: '123',
|
||||
@@ -71,8 +85,6 @@ export class AgendaPage implements OnInit {
|
||||
}, */
|
||||
];
|
||||
|
||||
|
||||
|
||||
/* List of events of our calendar */
|
||||
eventSource = [];
|
||||
/* The title of the calendar */
|
||||
@@ -117,8 +129,6 @@ export class AgendaPage implements OnInit {
|
||||
private router: Router,
|
||||
private alertCrontroller: AlertService
|
||||
) {
|
||||
this.showLoader = false;
|
||||
|
||||
this.timelineDate = formatDate(new Date,'dd MMMM yyyy', 'pt');
|
||||
|
||||
setTimeout(()=>{
|
||||
@@ -127,6 +137,18 @@ export class AgendaPage implements OnInit {
|
||||
},5000)
|
||||
|
||||
// console.log(setHours(setMinutes(new Date(), 0), 12))
|
||||
|
||||
function setCookie(cname, cvalue, exdays) {
|
||||
var d = new Date();
|
||||
d.setTime(d.getTime() + (exdays*24*60*60*1000));
|
||||
var expires = "expires="+ d.toUTCString();
|
||||
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
|
||||
}
|
||||
|
||||
// AccoesPresidenciais = Correspondencia = 0
|
||||
setCookie('searchModalAPPType','0', 99999999);
|
||||
|
||||
this.showLoader = false;
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
@@ -163,6 +185,34 @@ export class AgendaPage implements OnInit {
|
||||
this.viewTitle = title;
|
||||
}
|
||||
|
||||
currentDayEventDisplayBorder(day: any, id: any){
|
||||
|
||||
const events = day[id].events;
|
||||
if (events.length == 0) {
|
||||
return "";
|
||||
} else if (events.length >= 1) {
|
||||
|
||||
/** @description store all event type */
|
||||
let eventType = {};
|
||||
let eventTypeNum: number;
|
||||
|
||||
events.forEach(element => {
|
||||
eventType[element.calendarName] = 1;
|
||||
});
|
||||
|
||||
eventTypeNum = (Object.keys(eventType)).length
|
||||
|
||||
if (eventTypeNum == 2) {
|
||||
return 'calendar-event-type-both';
|
||||
} else {
|
||||
return 'calendar-event-type-'+(Object.keys(eventType))[0];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
// Show information of the event for timeline
|
||||
eventClicked({ event }: { event: CalendarEvent }): void {
|
||||
console.log('Event clicked', event);
|
||||
@@ -182,9 +232,18 @@ export class AgendaPage implements OnInit {
|
||||
this.timelineDate = formatDate(ev,'dd MMMM yyyy', 'pt');
|
||||
this.viewDate = new Date(formatDate(ev,'yyyy-MM-dd', 'pt'));
|
||||
// calendar change date
|
||||
this.eventSelectedDate = ev;
|
||||
console.log('!!this!!')
|
||||
this.eventSelectedDate = new Date(ev);
|
||||
};
|
||||
|
||||
// changedate
|
||||
dropDownChangeDate(id: string){
|
||||
|
||||
const currentCandarDayYear = formatDate(this.eventSelectedDate,'dd -- yyyy', 'pt');
|
||||
const newDate = new Date(currentCandarDayYear.replace('--',id));
|
||||
this.onCurrentChanged(newDate);
|
||||
}
|
||||
|
||||
/* onTimeSelected = (ev: { selectedTime: Date, events: any[] }) => {
|
||||
console.log('Selected time: ' + ev.selectedTime + ', hasEvents: ' + (ev.events !== undefined && ev.events.length !== 0));
|
||||
this.eventSelectedDate2 = ev.selectedTime;
|
||||
@@ -247,6 +306,7 @@ export class AgendaPage implements OnInit {
|
||||
loadRangeEvents(startTime: Date, endTime: Date){
|
||||
|
||||
console.log('Update date');
|
||||
console.log('start ',startTime,' end', endTime)
|
||||
|
||||
this.showTimeline = false;
|
||||
this.showLoader = true;
|
||||
@@ -271,7 +331,8 @@ export class AgendaPage implements OnInit {
|
||||
startTime: new Date(element.StartDate),
|
||||
endTime: new Date(element.EndDate),
|
||||
allDay: false,
|
||||
event: element
|
||||
event: element,
|
||||
calendarName: element.CalendarName
|
||||
});
|
||||
|
||||
const startHours = formatDate(new Date(element.StartDate), 'HH', 'pt');
|
||||
@@ -297,9 +358,6 @@ export class AgendaPage implements OnInit {
|
||||
this.showTimeline = true;
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
else{
|
||||
|
||||
@@ -19,7 +19,17 @@ export class GabineteDigitalPage implements OnInit {
|
||||
private processesbackend:ProcessesService,
|
||||
private modalController: ModalController,
|
||||
private eventService: EventsService,
|
||||
private alertService: AlertService) { }
|
||||
private alertService: AlertService) {
|
||||
function setCookie(cname, cvalue, exdays) {
|
||||
var d = new Date();
|
||||
d.setTime(d.getTime() + (exdays*24*60*60*1000));
|
||||
var expires = "expires="+ d.toUTCString();
|
||||
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
|
||||
}
|
||||
|
||||
// AccoesPresidenciais = Correspondencia = 8
|
||||
setCookie('searchModalAPPType','8,361', 99999999);
|
||||
}
|
||||
|
||||
count_exp_dailywork=0;
|
||||
count_exp_pp : string;
|
||||
|
||||
@@ -39,9 +39,19 @@ export class PublicationsPage implements OnInit {
|
||||
private animationController: AnimationController,
|
||||
private loading: LoadingService,
|
||||
private publications: PublicationsService,
|
||||
) {
|
||||
) {
|
||||
this.months = ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"];
|
||||
this.days = ["Domingo", "Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado"];
|
||||
|
||||
function setCookie(cname, cvalue, exdays) {
|
||||
var d = new Date();
|
||||
d.setTime(d.getTime() + (exdays*24*60*60*1000));
|
||||
var expires = "expires="+ d.toUTCString();
|
||||
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
|
||||
}
|
||||
|
||||
// AccoesPresidenciais = AccoesPresidenciais = 386,,
|
||||
setCookie('searchModalAPPType','386', 99999999);
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
|
||||
<!-- HEADER-->
|
||||
<ion-header class="ion-no-border header-main d-flex ion-justify-content-between">
|
||||
<ion-progress-bar type="indeterminate" class="loader" *ngIf="showLoader"></ion-progress-bar>
|
||||
<ion-form>
|
||||
<div class="d-flex search-input-container ion-justify-content-between" >
|
||||
<div class="icon" (click)="basicSearch()">
|
||||
|
||||
@@ -281,3 +281,15 @@ ion-slide{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.loader{
|
||||
position: absolute;
|
||||
margin-top: -14px;
|
||||
width: calc(100% - 39px);
|
||||
}
|
||||
|
||||
|
||||
.swiper-container{
|
||||
width: 100%;
|
||||
}
|
||||
@@ -33,6 +33,8 @@ export class SearchPage implements OnInit {
|
||||
showDocuments = false;
|
||||
showAdvanceSearch = false;
|
||||
|
||||
showLoader: boolean;
|
||||
|
||||
height: number = 411;
|
||||
width: number = 411;
|
||||
|
||||
@@ -88,8 +90,62 @@ export class SearchPage implements OnInit {
|
||||
*/
|
||||
basicSearch(){
|
||||
|
||||
function getCookie(cname) {
|
||||
var name = cname + "=";
|
||||
var decodedCookie = decodeURIComponent(document.cookie);
|
||||
var ca = decodedCookie.split(';');
|
||||
for(var i = 0; i <ca.length; i++) {
|
||||
var c = ca[i];
|
||||
while (c.charAt(0) == ' ') {
|
||||
c = c.substring(1);
|
||||
}
|
||||
if (c.indexOf(name) == 0) {
|
||||
return c.substring(name.length, c.length);
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
const APPType = getCookie('searchModalAPPType');
|
||||
|
||||
if(APPType == '0'){
|
||||
|
||||
console.log('aplication type 0');
|
||||
|
||||
this.showLoader = true;
|
||||
|
||||
this.search.basicSearch(this.searchSubject, this.searchDocumentDate, this.searchSender
|
||||
,this.searchOrganicEntiry, this.searchDocTypeId, '386').subscribe(res=>{
|
||||
,this.searchOrganicEntiry, this.searchDocTypeId, '0').subscribe(res=>{
|
||||
console.log(res);
|
||||
|
||||
res.Categories.forEach( e => {
|
||||
e['Active'] = false;
|
||||
});
|
||||
|
||||
// bind respose
|
||||
this.searchCategories = res.Categories;
|
||||
|
||||
this.searchDocuments = this.sortArrayISODate(res.Documents);
|
||||
|
||||
this.reorderList(this.ordinance);
|
||||
|
||||
// hide show document
|
||||
if(this.searchDocuments.length >= 1){
|
||||
this.showDocuments = true;
|
||||
} else {
|
||||
this.showDocuments = false
|
||||
}
|
||||
|
||||
this.showLoader = false;
|
||||
});
|
||||
} else if (APPType == '8,361'){
|
||||
|
||||
console.log('aplication type 8,361');
|
||||
|
||||
this.showLoader = true;
|
||||
|
||||
this.search.basicSearch(this.searchSubject, this.searchDocumentDate, this.searchSender
|
||||
,this.searchOrganicEntiry, this.searchDocTypeId, '8').subscribe(res=>{
|
||||
console.log(res);
|
||||
|
||||
res.Categories.forEach( e => {
|
||||
@@ -111,6 +167,64 @@ export class SearchPage implements OnInit {
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
this.search.basicSearch(this.searchSubject, this.searchDocumentDate, this.searchSender
|
||||
,this.searchOrganicEntiry, this.searchDocTypeId, '361').subscribe(res=>{
|
||||
console.log(res);
|
||||
|
||||
res.Categories.forEach( e => {
|
||||
e['Active'] = false;
|
||||
});
|
||||
|
||||
// bind respose
|
||||
this.searchCategories = res.Categories;
|
||||
|
||||
this.searchDocuments = this.sortArrayISODate(res.Documents);
|
||||
|
||||
this.reorderList(this.ordinance);
|
||||
|
||||
// hide show document
|
||||
if(this.searchDocuments.length >= 1){
|
||||
this.showDocuments = true;
|
||||
} else {
|
||||
this.showDocuments = false
|
||||
}
|
||||
|
||||
this.showLoader = false;
|
||||
});
|
||||
} else if (APPType == '386'){
|
||||
|
||||
this.showLoader = true;
|
||||
|
||||
console.log('aplication type 386');
|
||||
|
||||
this.search.basicSearch(this.searchSubject, this.searchDocumentDate, this.searchSender
|
||||
,this.searchOrganicEntiry, this.searchDocTypeId, '386').subscribe(res=>{
|
||||
console.log(res);
|
||||
|
||||
res.Categories.forEach( e => {
|
||||
e['Active'] = false;
|
||||
});
|
||||
|
||||
// bind respose
|
||||
this.searchCategories = res.Categories;
|
||||
|
||||
this.searchDocuments = this.sortArrayISODate(res.Documents);
|
||||
|
||||
this.reorderList(this.ordinance);
|
||||
|
||||
// hide show document
|
||||
if(this.searchDocuments.length >= 1){
|
||||
this.showDocuments = true;
|
||||
} else {
|
||||
this.showDocuments = false
|
||||
}
|
||||
|
||||
this.showLoader = false;
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="35" height="35" viewBox="0 0 35 35">
|
||||
<g fill="none" fill-rule="evenodd">
|
||||
<g>
|
||||
<g>
|
||||
<g transform="translate(-345 -109) translate(0 109) translate(345)">
|
||||
<g>
|
||||
<path fill="#FFF" d="M7 7H18V8H7z"/>
|
||||
<circle cx="10.5" cy="7.5" r="1.5" fill="#FFF"/>
|
||||
<g fill="#42B9FE">
|
||||
<circle cx="17.5" cy="17.5" r="17.5"/>
|
||||
</g>
|
||||
</g>
|
||||
<rect width="2" height="15" x="17" y="10" fill="#FFF" rx="1"/>
|
||||
<rect width="2" height="15" x="17" y="10" fill="#FFF" rx="1" transform="rotate(90 18 17.5)"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 823 B |
@@ -0,0 +1,22 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="35" height="35" viewBox="0 0 35 35">
|
||||
<g fill="none" fill-rule="evenodd">
|
||||
<g>
|
||||
<g>
|
||||
<g>
|
||||
<g transform="translate(-290 -109) translate(0 109) translate(290)">
|
||||
<path fill="#FFF" d="M7 7H18V8H7z"/>
|
||||
<circle cx="10.5" cy="7.5" r="1.5" fill="#FFF"/>
|
||||
<g fill="#42B9FE">
|
||||
<circle cx="17.5" cy="17.5" r="17.5"/>
|
||||
</g>
|
||||
</g>
|
||||
<path stroke="#FFF" stroke-linejoin="round" stroke-width="2" d="M8 16L17.5 20 27 16 27 27 8 27z" transform="translate(-290 -109) translate(0 109) translate(290)"/>
|
||||
<path stroke="#FFF" stroke-linejoin="round" stroke-width="2" d="M10.5 17L10.5 7 24.5 7 24.5 17" transform="translate(-290 -109) translate(0 109) translate(290)"/>
|
||||
<path stroke="#FFF" stroke-width="2" d="M8 16L10.5 13.5" transform="translate(-290 -109) translate(0 109) translate(290)"/>
|
||||
<path stroke="#FFF" stroke-width="2" d="M24.5 16L27 13.5" transform="translate(-290 -109) translate(0 109) translate(290) matrix(-1 0 0 1 51.5 0)"/>
|
||||
<path fill="#FFF" d="M17.5 15.25L15.443 16.332 15.836 14.041 14.171 12.418 16.471 12.084 17.5 10 18.529 12.084 20.829 12.418 19.164 14.041 19.557 16.332z" transform="translate(-290 -109) translate(0 109) translate(290)"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
+49
-11
@@ -29,6 +29,8 @@
|
||||
|
||||
|
||||
// calendar
|
||||
// ionic calendar2
|
||||
|
||||
td.monthview-current{
|
||||
color: white;
|
||||
/* border-radius: 89px; */
|
||||
@@ -43,7 +45,6 @@ td.monthview-current{
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: center;
|
||||
padding-left: 9px;
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
@@ -57,7 +58,15 @@ td.monthview-selected {
|
||||
color: black !important;
|
||||
}
|
||||
|
||||
.event-detail-container{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.cal-week-view {
|
||||
border-top: none !important;
|
||||
}
|
||||
|
||||
.calendar-event-type
|
||||
/* Timeline */
|
||||
|
||||
.cal-hour-segment {
|
||||
@@ -133,16 +142,45 @@ td.monthview-selected {
|
||||
display: none;
|
||||
}
|
||||
|
||||
// ionic calendar2
|
||||
.event-detail-container{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.cal-week-view {
|
||||
border-top: none !important;
|
||||
}
|
||||
|
||||
.timeline-box-{}
|
||||
|
||||
|
||||
.calendar-event-type-Oficial{
|
||||
border-right: 3px solid #f05d5e !important;
|
||||
border-radius: 21px !important;
|
||||
color: black !important;
|
||||
margin: 0px auto !important;
|
||||
width: 35px !important;
|
||||
}
|
||||
|
||||
.calendar-event-type-Pessoal{
|
||||
border-left: 3px solid #ffb703 !important;
|
||||
border-radius: 21px !important;
|
||||
color: black !important;
|
||||
margin: 0px auto !important;
|
||||
width: 35px !important;
|
||||
}
|
||||
|
||||
.calendar-event-type-both{
|
||||
border-radius: 21px !important;
|
||||
border-left: 3px solid #ffb703 !important;
|
||||
border-bottom: none !important;
|
||||
border-right: 3px solid #f05d5e !important;
|
||||
color: black !important;
|
||||
margin: 0px auto !important;
|
||||
width: 35px !important;
|
||||
}
|
||||
|
||||
.cal-hour-segment {
|
||||
border-bottom: none !important;
|
||||
}
|
||||
|
||||
|
||||
|
||||
td.monthview-current{
|
||||
border-bottom: 1px solid #3a87ad !important;
|
||||
}
|
||||
|
||||
/* angular-cli file: src/styles.css */
|
||||
@import "../node_modules/angular-calendar/css/angular-calendar.css";
|
||||
|
||||
@import "./style/main.scss";
|
||||
|
||||
Reference in New Issue
Block a user