Merge branch 'developer' of bitbucket.org:equilibriumito/gabinete-digital into developer

This commit is contained in:
Peter Maquiran
2021-09-02 16:59:12 +01:00
39 changed files with 220 additions and 172 deletions
+1 -1
View File
@@ -30,5 +30,5 @@ export class LoginGuard implements CanActivate {
return true
}
}
}
+11 -6
View File
@@ -17,7 +17,7 @@
<div class="main-content">
<!-- Toolbar -->
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
<div>
<!-- Calendar is here -->
<div class="calendar-segment-{{profile}}" [class.calendar-segment-pr-force]="loggeduser.Profile =='PR'">
@@ -219,7 +219,7 @@
</div>
</div>
</div>
<div class="fs-timeline flex-grow-1 d-none d-md-block d-md-block text-black pr-20 width-100 height-100 overflow-y-auto" *ngIf="loggeduser.Profile == 'MDGPR'">
<div *ngFor="let events of TimelineMDList | keyvalue;" >
@@ -229,7 +229,7 @@
</div>
<div *ngFor="let event of events.value" class="EventListBox" >
<div class="d-flex content-mdgpr-{{event.event.CalendarName}} mt-10 cursor-pointer" (click)="eventClicked(event)">
<div class="d-flex content-mdgpr-{{event.event.CalendarName}} mt-10 cursor-pointer item-hover" (click)="eventClicked(event)">
<div class="schedule-time" *ngIf="!event.event.IsAllDayEvent">
<div *ngIf="!event.endMany && !event.middle" class="time-start">{{event.event.StartDate | date: 'HH:mm'}}</div>
@@ -270,7 +270,12 @@
<div *ngFor="let event of events.value" class="EventListBox" >
<<<<<<< HEAD
<div class="d-flex content-pr-{{event.event.CalendarName}} mt-10 cursor-pointer item-hover" (click)="eventClicked(event)"
*ngIf="viewEventMonth <= dateMonth(event) && showEventBox(event) ">
=======
<div class="d-flex content-pr-{{event.event.CalendarName}} mt-10 cursor-pointer" (click)="eventClicked(event)">
>>>>>>> 5de16776a2d0d5cddbb186151ec203ae12509873
<div class="schedule-time" *ngIf="!event.event.IsAllDayEvent">
<div *ngIf="!event.endMany && !event.middle" class="time-start">{{event.event.StartDate | date: 'HH:mm'}}</div>
@@ -325,7 +330,7 @@
</div>
<!-- New -->
<app-new-event *ngIf="mobileComponent.showAddNewEvent"
<app-new-event *ngIf="mobileComponent.showAddNewEvent"
[profile]="profile"
[selectedSegment]=segment
[taskParticipants]="taskParticipants"
@@ -343,7 +348,7 @@
></app-new-event>
<!-- Edit -->
<app-edit-event *ngIf="mobileComponent.showEditEvent"
<app-edit-event *ngIf="mobileComponent.showEditEvent"
[taskParticipants]="taskParticipants"
[taskParticipantsCc]="taskParticipantsCc"
[profile]="profile"
@@ -430,4 +435,4 @@
</div>
</ion-content>
</ion-content>
+4 -2
View File
@@ -42,7 +42,7 @@
<div class="width-100" [ngSwitch]="segment">
<ion-list *ngSwitchCase="'Contactos'">
<ion-item-sliding>
<div class="item width-100 d-flex ion-no-padding ion-no-margin"
<div class="item item-hover width-100 d-flex ion-no-padding ion-no-margin"
*ngFor="let dm of userDirectMessages"
[class.item-active]="dm._id ==idSelected">
<div class="item-icon">
@@ -76,7 +76,7 @@
<ion-item-sliding>
<div *ngFor="let group of allGroups"
[class.item-active]="group._id ==idSelected"
class="item d-flex">
class="item item-hover d-flex">
<div class="item-icon">
<ion-icon class="icon" slot="start" src="assets/images/icons-chat-group-chat-40.svg"></ion-icon>
</div>
@@ -113,6 +113,7 @@
(showEmptyContainer)="showEmptyContainer()"
(showEmptyContainer)="showEmptyContainer()"
(openNewEventPage)="openNewEventPage($event)"
(getDirectMessages)="getDirectMessages($event)"
[style.display]="showMessages ? 'flex' : 'none'"
[roomId]="roomId"
[showMessages]="showMessages" #messagecontainer>
@@ -156,6 +157,7 @@
(openGroupContacts)="openGroupContactsPage($event)"
(openEditGroupPage)="openEditGroupPage($event)"
(openNewEventPage)="openNewEventPage($event)"
(getGroups)="getGroups($event)"
[style.display]="showGroupMessages ? 'flex' : 'none'"
class=" height-100 flex-column"
[roomId]="roomId" #messagecontainer>
+1
View File
@@ -122,6 +122,7 @@ ion-content{
color: #fff;
}
}
.item-active{
color: #fff !important;
background-color: #42b9fe !important;
+10 -5
View File
@@ -374,11 +374,11 @@ hideRefreshButton(){
});
}
async getDirectMessages(){
async getDirectMessages(event?){
this.chatService.getAllDirectMessages().subscribe(async (res:any)=>{
if(res.ims != 200){
if(res != 200){
console.log(res.ims);
this.userDirectMessages = res.ims.sort((a,b)=>{
var dateA = new Date(a._updatedAt).getTime();
@@ -391,12 +391,17 @@ hideRefreshButton(){
console.log("Timer message stop")
}
else {
console.log('TIMER');
//Check if modal is opened
if(this.segment == "Contactos" && this.showMessages != true){
await new Promise(resolve => setTimeout(resolve, 5000));
await new Promise(resolve => setTimeout(resolve, 2000));
await this.getDirectMessages();
console.log('Timer contactos list running')
}
else{
console.log('No timer!');
}
}
}
else{
@@ -452,7 +457,7 @@ hideRefreshButton(){
});
}
async getGroups(){
async getGroups(event?){
this.result = this.chatService.getAllPrivateGroups().subscribe(async (res:any)=>{
if(res.groups != 200){
@@ -474,7 +479,7 @@ hideRefreshButton(){
else {
//Check if modal is opened
if(this.segment == "Grupos" && this.showGroupMessages != true){
await new Promise(resolve => setTimeout(resolve, 5000));
await new Promise(resolve => setTimeout(resolve, 2000));
await this.getGroups();
console.log('Timer groups list running')
}
@@ -1,4 +1,4 @@
import { Component, ElementRef, OnInit, ViewChild, AfterViewChecked, AfterViewInit, OnDestroy } from '@angular/core';
import { Component, ElementRef, OnInit, ViewChild, AfterViewChecked, AfterViewInit, OnDestroy, } from '@angular/core';
import { ActionSheetController, MenuController, ModalController, NavParams, PopoverController } from '@ionic/angular';
import { AlertService } from 'src/app/services/alert.service';
import { AuthService } from 'src/app/services/auth.service';
+10 -1
View File
@@ -1,6 +1,7 @@
import { AfterViewChecked, AfterViewInit, Component, ElementRef, OnDestroy, OnInit, ViewChild } from '@angular/core';
import {ActivatedRoute, Router} from '@angular/router'
import { ModalController, NavParams, PopoverController } from '@ionic/angular';
import { map } from 'rxjs/operators';
import { ContactsPage } from 'src/app/pages/chat/messages/contacts/contacts.page';
import { AlertService } from 'src/app/services/alert.service';
import { AuthService } from 'src/app/services/auth.service';
@@ -151,7 +152,7 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
loadMessages() {
this.showLoader = true;
const roomId = this.roomId
this.chatService.getRoomMessages(this.roomId).subscribe(res => {
/* console.log(res); */
this.messages = res['messages'].reverse();
@@ -254,8 +255,16 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
async serverLongPull() {
const roomId = this.roomId
/* this.chatService.getRoomMessages(roomId).subscribe(res=>{
console.log(res);
}) */
this.chatService.getRoomMessages(roomId).subscribe(async res => {
if (res == 502) {
// Connection timeout
// happens when the synchro was pending for too long
+2 -2
View File
@@ -47,7 +47,7 @@
<!-- {{ toDayEventStorage.eventsList | json}} -->
<ion-list>
<ion-item class="cursor-pointer" lines="none" *ngFor="let event of toDayEventStorage.eventsList"
<ion-item class="item-hover cursor-pointer" lines="none" *ngFor="let event of toDayEventStorage.eventsList"
(click)="goToEvent(event.EventId)"
>
<div class="d-flex content-{{loggeduser.Profile}}-{{event.CalendarName}}">
@@ -94,7 +94,7 @@
</div>
<div class="content overflow-y-auto flex-grow-1 height-100">
<ion-list>
<ion-item class="cursor-pointer" lines="none" *ngFor = "let task of expedienteGdStore.list"
<ion-item class="item-hover cursor-pointer" lines="none" *ngFor = "let task of expedienteGdStore.list"
(click)="goToExpediente(task.serialNumber)">
<div class="item-exp d-flex">
<div class="schedule-date">
+25 -14
View File
@@ -81,7 +81,7 @@ ion-toolbar{
margin-right: 5px;
line-height: 25px;
}
.p-small{
font-size: 13pt;
margin-top: 13px;
@@ -90,7 +90,7 @@ ion-toolbar{
text-align: right;
/* color: #ffffff; */
}
/* CONTENT */
.item-list-small{
font-size: 14px;
@@ -98,14 +98,14 @@ ion-toolbar{
}
.ion-item-class{
padding: 0;
}
.label-text{
width: 100%;
padding: 0;
margin: 0;
}
//DIV
.div-item-Oficial{
width: 100%;
@@ -146,7 +146,7 @@ ion-toolbar{
.div-icon ion-icon{
display: block;
margin: 0 auto;
}
.div-content-Oficial{
width: 85%;
@@ -312,7 +312,7 @@ ion-toolbar{
color: var(--white);
margin-right: 7px;
}
.meeting-description {
margin-top: 2px;
font-family: Roboto;
@@ -330,7 +330,6 @@ ion-toolbar{
.schedule {
max-width: 400px;
font-family: Roboto;
padding: 20px;
background-color: white;
box-shadow: 0 0 10px 0 rgb(0 0 0 / 7%);
border: solid 1px #e9e9e9;
@@ -339,20 +338,25 @@ ion-toolbar{
display: flex;
flex-direction: column;
max-height: 100%;
overflow: auto;
padding-bottom: 25px;
.schedule-header{
display: flex;
margin-bottom: 20px;
justify-content: space-between;
padding: 20px 20px 0px 20px;
.title {
display: flex;
align-items: center;
.icon{
color: #e8e8e8;
height: 35px;
width: 35px;
margin-right: 10px;
}
}
.text{
font-family: Roboto;
font-size: 20px;
@@ -368,10 +372,15 @@ ion-toolbar{
}
}
.content{
//padding: 0px 20px 20px 20px;
overflow: auto;
.item-exp{
overflow: auto;
padding-top: 5px;
padding-bottom: 5px;
//padding-top: 5px;
//padding-bottom: 5px;
padding: 5px 20px 5px 20px;
background-color: transparent !important;
}
ion-list{
padding: 0px;
@@ -389,6 +398,8 @@ ion-toolbar{
display: flex;
justify-content: space-between;
align-items: center;
--background: transparent !important;
.schedule-time{
margin-right: 10px;
.time-start{
@@ -418,7 +429,7 @@ ion-toolbar{
font-size: 13px;
color: black;
width: 100%;
}
.description{
width: 100%;
@@ -446,7 +457,7 @@ ion-toolbar{
padding-bottom: unset !important;
}
}
}
.resume{
@@ -484,7 +495,7 @@ ion-toolbar{
.content, .conteiner-box{
height: unset !important;
max-height: unset !important;
}
}
}
@@ -512,4 +523,4 @@ ion-toolbar{
ion-title{
border: 1px solid red;
text-overflow: ellipsis;
}
}
@@ -39,7 +39,7 @@
<div class="listview">
<ion-list *ngIf="allProcessesList">
<div
class="item-wrapper ion-no-padding cursor-pointer"
class="item-wrapper box-hover ion-no-padding cursor-pointer"
*ngFor = "let task of allProcessesList"
(click)="goToProcess(task.SerialNumber, task.WorkflowName, task.activityInstanceName)">
<div class="item width-100">
@@ -89,7 +89,7 @@
<!-- This is the box view -->
<div *ngSwitchCase="'boxview'" class="aside overflow-y-auto d-flex flex-wrap width-100 height-100">
<div *ngIf="hideInMobile" (click)="openAllProcessesPage()" [class.active]="selectedElement == 'allProcessesTag'" class="exp-card d-flex flex-column" >
<div *ngIf="hideInMobile" (click)="openAllProcessesPage()" [class.active]="selectedElement == 'allProcessesTag'" class="box-hover exp-card d-flex flex-column" >
<div class="d-flex justify-center">
<!-- <ion-icon src="assets/images/icons-agenda.svg"></ion-icon> -->
<fa-icon class="icon-selected" icon="align-justify"></fa-icon>
@@ -98,7 +98,7 @@
<p class="text-center exp-card-content">{{ totalDocumentStore.count }} <span class="title1">Documentos</span></p>
</div>
<div (click)="openEventsToApprovePage();selectedElement='approval'" [class.active]="selectedElement == 'approval'" class="exp-card d-flex flex-column" *ngIf="loggeduser.Profile == 'MDGPR'" >
<div (click)="openEventsToApprovePage();selectedElement='approval'" [class.active]="selectedElement == 'approval'" class="box-hover exp-card d-flex flex-column" *ngIf="loggeduser.Profile == 'MDGPR'" >
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-agenda.svg"></ion-icon>
</div>
@@ -106,7 +106,7 @@
<p class="text-center exp-card-content">{{eventoaprovacaostore.countMd + eventoaprovacaostore.countPr}} <span class="title1">Documentos</span></p>
</div>
<div [class.active]="selectedElement == 'Correspondence'" (click)="openExpedientListPage(); selectedElement='Correspondence'" class="exp-card d-flex flex-column justify-center" *ngIf="loggeduser.Profile == 'MDGPR'">
<div [class.active]="selectedElement == 'Correspondence'" (click)="openExpedientListPage(); selectedElement='Correspondence'" class="box-hover exp-card d-flex flex-column justify-center" *ngIf="loggeduser.Profile == 'MDGPR'">
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-correspondencia.svg"></ion-icon>
</div>
@@ -115,7 +115,7 @@
</div>
<!-- <div [class.active]="selectedElement == 'Pending'" (click)="openPendentesPage(); selectedElement='Pending'" class="exp-card d-flex flex-column justify-center" > -->
<div [class.active]="selectedElementF('Pending')" (click)="openPendentesPage(); selectedElement='Pending'" class="exp-card d-flex flex-column justify-center" >
<div [class.active]="selectedElementF('Pending')" (click)="openPendentesPage(); selectedElement='Pending'" class="box-hover exp-card d-flex flex-column justify-center" >
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-expediente-pendente.svg"></ion-icon>
</div>
@@ -124,7 +124,7 @@
<p class="text-center exp-card-content"><span class="number">{{pendentesstore.count}} </span> <span class="title1">Documentos</span></p>
</div>
<div *ngIf="loggeduser.Profile == 'PR'" (click)="openDespachosPrPage(); selectedElement='DispatchesPr'" [class.active]="selectedElement == 'DispatchesPr'" class="exp-card d-md-flex flex-column justify-center" >
<div *ngIf="loggeduser.Profile == 'PR'" (click)="openDespachosPrPage(); selectedElement='DispatchesPr'" [class.active]="selectedElement == 'DispatchesPr'" class="box-hover exp-card d-md-flex flex-column justify-center" >
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-despachos-presidente.svg"></ion-icon>
</div>
@@ -133,7 +133,7 @@
<p class="text-center exp-card-content">{{ despachoprstore.count }} <span class="title1">Documentos</span> </p>
</div>
<div [class.active]="selectedElement == 'Dispatches'" class="exp-card d-flex flex-column justify-center" (click)="openDespachosPage(); selectedElement='Dispatches'" *ngIf="loggeduser.Profile == 'MDGPR'">
<div [class.active]="selectedElement == 'Dispatches'" class="box-hover exp-card d-flex flex-column justify-center" (click)="openDespachosPage(); selectedElement='Dispatches'" *ngIf="loggeduser.Profile == 'MDGPR'">
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-despachos-presidente.svg"></ion-icon>
</div>
@@ -141,7 +141,7 @@
<p class="text-center exp-card-content">{{despachoStore.count}} <span class="title1">Documentos</span> </p>
</div>
<div (click)="openPedidosPage('parecer'); selectedElement='RequestsForOpinion'" [class.active]="selectedElement == 'RequestsForOpinion'" class="exp-card d-flex flex-column justify-center">
<div (click)="openPedidosPage('parecer'); selectedElement='RequestsForOpinion'" [class.active]="selectedElement == 'RequestsForOpinion'" class="box-hover exp-card d-flex flex-column justify-center">
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-expediente-parecer.svg"></ion-icon>
</div>
@@ -150,7 +150,7 @@
<p class="text-center exp-card-content">{{pedidosstore.countparecer}} <span class="title1">Documentos</span></p>
</div>
<div (click)="openPedidosPage('deferimento'); selectedElement = 'RequestForApproval'" [class.active]="selectedElement == 'RequestForApproval'" class="exp-card d-flex flex-column justify-center">
<div (click)="openPedidosPage('deferimento'); selectedElement = 'RequestForApproval'" [class.active]="selectedElement == 'RequestForApproval'" class="box-hover exp-card d-flex flex-column justify-center">
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-expediente-deferimento.svg"></ion-icon>
</div>
@@ -172,7 +172,7 @@
</div>
</div> -->
<div *ngIf="loggeduser.Profile == 'MDGPR'" (click)="openDespachosPrPage(); selectedElement='showDespachosPr'" [class.active]="selectedElement == 'showDespachosPr'" class="exp-card-long width-100" >
<div *ngIf="loggeduser.Profile == 'MDGPR'" (click)="openDespachosPrPage(); selectedElement='showDespachosPr'" [class.active]="selectedElement == 'showDespachosPr'" class="box-hover exp-card-long width-100 d-flex flex-column justify-center">
<div class="center-div">
<div class="exp-card-icon">
<ion-icon src="assets/images/icons-despachos-presidente.svg"></ion-icon>
@@ -184,7 +184,7 @@
</div>
</div>
<div *ngIf="loggeduser.Profile == 'MDGPR'" (click)="openDiplomasPage('validar'); selectedElement='DiplomasPorValidar'" [class.active]="selectedElement == 'DiplomasPorValidar'" class="exp-card d-flex flex-column justify-center">
<div *ngIf="loggeduser.Profile == 'MDGPR'" (click)="openDiplomasPage('validar'); selectedElement='DiplomasPorValidar'" [class.active]="selectedElement == 'DiplomasPorValidar'" class="box-hover exp-card d-flex flex-column justify-center">
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-expediente-diploma.svg"></ion-icon>
</div>
@@ -193,7 +193,7 @@
<p class="text-center exp-card-content">{{ deplomasStore.deplomasReviewCount }} <span class="title1">Documentos</span> </p>
</div>
<div *ngIf="loggeduser.Profile == 'MDGPR'" (click)="openDiplomasPage('assinados'); selectedElement='DiplomasAssinados'" [class.active]="selectedElement == 'DiplomasAssinados'" class="exp-card d-flex flex-column justify-center">
<div *ngIf="loggeduser.Profile == 'MDGPR'" (click)="openDiplomasPage('assinados'); selectedElement='DiplomasAssinados'" [class.active]="selectedElement == 'DiplomasAssinados'" class="box-hover exp-card d-flex flex-column justify-center">
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-diplomas-assinados-presidente.svg"></ion-icon>
</div>
@@ -202,7 +202,7 @@
<p class="text-center exp-card-content">{{ deplomasStore.countDiplomasAssinadoListCount }} <span class="title1">Documentos</span></p>
</div>
<div *ngIf="loggeduser.Profile == 'PR'" (click)="openDiplomasAssinarPage(); selectedElement='DiplomasAssinar'" [class.active]="selectedElement == 'DiplomasAssinar'" class="exp-card d-flex flex-column justify-center">
<div *ngIf="loggeduser.Profile == 'PR'" (click)="openDiplomasAssinarPage(); selectedElement='DiplomasAssinar'" [class.active]="selectedElement == 'DiplomasAssinar'" class="box-hover exp-card d-flex flex-column justify-center">
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-expediente-diploma.svg"></ion-icon>
</div>
@@ -154,9 +154,9 @@ ion-segment-button{
.exp-card-long{
cursor: pointer;
user-select: none;
background: white;
//background: white;
box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07);
background: white;
//Sbackground: white;
width: 360px;
margin: 7px 20px;
border-radius: 15px;
+3 -3
View File
@@ -80,8 +80,8 @@ export class LoginPage implements OnInit {
let attempt = await this.authService.login(this.userattempt, {saveSession: false})
if (attempt) {
if (attempt.UserId == SessionStore.user.UserId) {
if (attempt.UserId == SessionStore.user.UserId) {
await this.authService.SetSession(attempt, this.userattempt);
this.authService.loginChat(this.userattempt);
this.getToken();
@@ -113,7 +113,7 @@ export class LoginPage implements OnInit {
} else {
this.router.navigate(['/home/events']);
}
}
}
@@ -14,13 +14,14 @@ import { NewActionPageModule } from 'src/app/shared/publication/new-action/new-a
import { PublicationDetailPageModule } from 'src/app/shared/publication/view-publications/publication-detail/publication-detail.module';
import { HeaderPageModule } from 'src/app/shared/header/header.module';
import { EditActionPageModule } from 'src/app/shared/publication/edit-action/edit-action.module';
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
@NgModule({
imports: [
CommonModule,
FormsModule,
IonicModule,
FontAwesomeModule,
PublicationsPageRoutingModule,
HeaderPageModule,
ViewPublicationsPageModule,
@@ -39,20 +39,23 @@
<div class="aside overflow-y-auto d-flex flex-wrap width-100">
<!-- <ion-list class="width-100"> -->
<ion-item-sliding disabled="{{showSlidingOptions}}" class="item width-100 cursor-pointer"
<ion-item-sliding disabled="{{showSlidingOptions}}" class="width-100 cursor-pointer"
*ngFor="let viagem of publicationTravelFolderService.list">
<ion-item lines="none"
class="width-100 d-flex ion-no-border ion-no-margin ion-no-padding">
class="item width-100 d-flex ion-no-border ion-no-margin ion-no-padding"
[class.item-active]="viagem.ProcessId == idSelected"
>
<div (click)="goToPublicationsList(viagem.ProcessId)" class="item-icon cursor-pointer">
<ion-icon slot="end" src='assets/images/icons-plane-active.svg'></ion-icon>
</div>
<div (click)="goToPublicationsList(viagem.ProcessId)" class="item-content flex-grow-1 cursor-pointer">
<p class="item-content-date my-5">De {{getDate(viagem.DateBegin)}} a {{getDate(viagem.DateEnd)}}</p>
<p class="item-content-title my-10">{{viagem.Description}}</p>
<p class="item-content-detail my-5">{{viagem.Detail}}</p>
<p class="item-content-date my-5" [class.item-content-date-active]="viagem.ProcessId == idSelected">De {{getDate(viagem.DateBegin)}} a {{getDate(viagem.DateEnd)}}</p>
<p class="item-content-title my-10" [class.item-content-title-active]="viagem.ProcessId == idSelected">{{viagem.Description}}</p>
<p class="item-content-detail my-5" [class.item-content-detail-active]="viagem.ProcessId == idSelected">{{viagem.Detail}}</p>
</div>
<div (click)="openOptions(viagem.ProcessId)" class="item-options d-none cursor-pointer" autoHide="false">
<ion-icon src="assets/images/icons-menu.svg"></ion-icon>
<div (click)="openOptions(viagem.ProcessId)" class="item-options d-none cursor-pointer" [class.item-options-active]="viagem.ProcessId == idSelected" autoHide="false">
<!-- <ion-icon src="assets/images/icons-menu.svg"></ion-icon> -->
<i class="fas fa-ellipsis-v"></i>
</div>
</ion-item>
<ion-item-options class="members-options" side="end">
@@ -68,38 +71,25 @@
</ion-item-option>
</ion-item-options>
</ion-item-sliding>
<!-- </ion-list> -->
<!-- <div class="item width-100 d-flex"
*ngFor="let viagem of publicationsTravelFolderList">
<div (click)="goToPublicationsList(viagem.ProcessId)" class="item-icon cursor-pointer">
<ion-icon slot="end" src='assets/images/icons-plane-active.svg'></ion-icon>
</div>
<div (click)="goToPublicationsList(viagem.ProcessId)" class="item-content flex-grow-1 cursor-pointer">
<p class="item-content-date my-5">De {{viagem.DateBegin}} a {{viagem.DateEnd}}</p>
<p class="item-content-title my-10">{{viagem.Description}}</p>
<p class="item-content-detail my-5">{{viagem.Detail}}</p>
</div>
<div (click)="openOptions(viagem.ProcessId)" class="item-options d-none cursor-pointer" autoHide="false">
<ion-icon src="assets/images/icons-menu.svg"></ion-icon>
</div>
</div> -->
<ion-item-sliding disabled="{{showSlidingOptions}}" class="item width-100"
*ngFor="let evento of publicationEventFolderStorage.list"
>
<ion-item-sliding disabled="{{showSlidingOptions}}" class="width-100"
*ngFor="let evento of publicationEventFolderStorage.list">
<ion-item lines="none"
class="width-100 d-flex ion-no-border ion-no-margin ion-no-padding"
class="item cursor-pointer width-100 d-flex ion-no-border ion-no-margin ion-no-padding"
[class.item-active]="evento.ProcessId == idSelected"
(click)="goToPublicationsList(evento.ProcessId)">
<div class="item-icon2">
<ion-icon slot="end" src='assets/images/icons-nav-actions.svg'></ion-icon>
</div>
<div class="item-content flex-grow-1">
<ion-label>
<p class="item-content-date">{{getDate(evento.DateBegin)}}</p>
<p class="item-content-title">{{evento.Description}}</p>
<p class="item-content-date" [class.item-content-date-active]="evento.ProcessId == idSelected">{{getDate(evento.DateBegin)}}</p>
<p class="item-content-title" [class.item-content-title-active]="evento.ProcessId == idSelected">{{evento.Description}}</p>
</ion-label>
</div>
<div (click)="openOptions(evento.ProcessId)" class="item-options d-none cursor-pointer" autoHide="false">
<ion-icon src="assets/images/icons-menu.svg"></ion-icon>
<div (click)="openOptions(evento.ProcessId)" class="item-options d-none cursor-pointer" [class.item-options-active]="evento.ProcessId == idSelected" autoHide="false">
<!-- <ion-icon src="assets/images/icons-menu.svg"></ion-icon> -->
<i class="fas fa-ellipsis-v"></i>
</div>
</ion-item>
<ion-item-options class="members-options" side="end">
@@ -115,22 +105,6 @@
</ion-item-option>
</ion-item-options>
</ion-item-sliding>
<!-- <div class="item width-100 d-flex"
*ngFor="let evento of publicationsEventFolderList"
(click)="viewPublications(evento)">
<div class="item-icon2">
<ion-icon slot="end" src='assets/images/icons-nav-actions.svg'></ion-icon>
</div>
<div class="item-content flex-grow-1">
<ion-label>
<p class="item-content-date">{{evento.DateBegin}}</p>
<p class="item-content-title">{{evento.Description}}</p>
</ion-label>
</div>
<div (click)="openOptions(evento.ProcessId)" class="item-options d-none cursor-pointer" autoHide="false">
<ion-icon src="assets/images/icons-menu.svg"></ion-icon>
</div>
</div> -->
</div>
</div>
@@ -39,7 +39,7 @@ ion-toolbar{
margin-right: 10px;
}
}
ion-content{
// --background:#0782c9;
--border: none;
@@ -52,7 +52,7 @@ ion-toolbar{
overflow:hidden;
color:#000;
transform: translate3d(0, 1px, 0);
.title-content{
margin: 0px auto;
padding: 0 !important;
@@ -93,20 +93,25 @@ ion-toolbar{
}
.aside{
padding: 0px 20px 0 20px !important;
//padding: 0px 20px 0 20px !important;
}
}
.content{
//border: 1px solid red;
}
}
ion-item{
--background: transparent;
}
.item{
width: 100% !important;
padding: 0px !important;
padding: 0px 20px 0 20px !important;
border-bottom: 1px solid #ebebeb;
align-items: center;
justify-content: space-between;
flex-direction: row;
background-color: transparent;
overflow: auto;
.item-icon{
//margin-top: 28px;
@@ -129,6 +134,7 @@ ion-toolbar{
width: 100%;
padding: 15px 0 15px 10px;
overflow: auto;
margin-right: 5px;
p{
white-space: nowrap;
@@ -154,13 +160,24 @@ ion-toolbar{
margin: 0 !important;
padding: 0 !important;
}
.item-options{
color: #42b9fe;
width: 25px;
font-size: 20px;
}
.item-content-date-active, .item-content-title-active, .item-content-detail-active, .item-options-active{
color: #fff;
}
}
}
.item-options{
.item-active{
background-color: #42b9fe !important;
color: #fff !important;
}
width: 25px;
font-size: 20px;
}
.item:hover{
background-color: #e6f6ff75;
}
ion-item-options{
@@ -207,7 +224,7 @@ ion-toolbar{
margin: 12px;
border: 1px solid #d30a0a;
}
@@ -54,6 +54,7 @@ export class PublicationsPage implements OnInit {
//publication: object;
hideRefreshBtn = true;
showSlidingOptions = true;
idSelected: string;
constructor(
private router: Router,
@@ -213,6 +214,7 @@ export class PublicationsPage implements OnInit {
goToPublicationsList(folderId: string){
this.folderId = folderId
this.idSelected = folderId;
if( window.innerWidth <= 800){
this.router.navigate(['/home/publications',folderId]);
@@ -106,7 +106,7 @@ export class PublicationDetailPage implements OnInit {
try {
await this.publications.DeletePublication(this.folderId, this.publicationId).toPromise();
this.toastService.successMessage('Publicaçao eliminada')
this.toastService.successMessage('Publicação eliminada')
} catch (error) {
this.toastService.badRequest('Publicaçao não eliminada')
@@ -58,9 +58,9 @@ export class ViewPublicationsPage implements OnInit {
}
this.getPublicationDetail();
setTimeout(() => {
setTimeout(() => {
this.getPublications();
}, 3000);
}, 5000);
}
@@ -108,7 +108,7 @@ export class ViewPublicationsPage implements OnInit {
this.publicationList = new Array();
res.forEach(element => {
let item: Publication = this.publicationPipe.itemList(element)
this.publicationList.push(item);
+1 -1
View File
@@ -99,7 +99,7 @@ export class ChatService {
let opts = {
headers: this.headers,
params: params
params: params,
}
return this.http.get(environment.apiChatUrl+'im.history', opts);
}
@@ -33,7 +33,7 @@
<!-- </div> -->
<ion-list class="width-100" *ngSwitchCase="'MDGPR'" >
<div
class="item ion-no-padding width-100 cursor-pointer"
class="item item-hover ion-no-padding width-100 cursor-pointer"
*ngFor="let event of eventsMDGPRList"
(click)="openApproveModal(event.serialNumber, event)"
>
@@ -41,6 +41,7 @@ export class GroupMessagesPage implements OnInit, OnChanges, AfterViewInit, OnDe
@Output() openGroupContacts:EventEmitter<any> = new EventEmitter<any>();
@Output() openEditGroupPage:EventEmitter<any> = new EventEmitter<any>();
@Output() openNewEventPage:EventEmitter<any> = new EventEmitter<any>();
@Output() getGroups:EventEmitter<any> = new EventEmitter<any>();
@ViewChild('scrollMe') private myScrollContainer: ElementRef;
@@ -457,8 +458,9 @@ export class GroupMessagesPage implements OnInit, OnChanges, AfterViewInit, OnDe
console.log("Timer message stop")
} else {
if(document.querySelector('app-group-messages')){
await new Promise(resolve => setTimeout(resolve, 5000));
await new Promise(resolve => setTimeout(resolve,3000));
await this.serverLongPull();
this.getGroups.emit();
console.log('Timer message running')
}
else{
@@ -37,6 +37,7 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
@Input() showMessages:string;
@Output() openNewEventPage:EventEmitter<any> = new EventEmitter<any>();
@Output() getDirectMessages:EventEmitter<any> = new EventEmitter<any>();
synchro = synchro;
@@ -371,6 +372,7 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
if(document.querySelector('app-messages')){
await new Promise(resolve => setTimeout(resolve, 5000));
await this.serverLongPull();
this.getDirectMessages.emit();
console.log('Timer message running')
}
}
@@ -28,7 +28,7 @@
<div class="listview">
<ion-list *ngIf="allProcessesList">
<div
class="item-wrapper ion-no-padding cursor-pointer"
class="item-wrapper item-hover ion-no-padding cursor-pointer"
*ngFor = "let task of allProcessesList"
(click)="goToProcess(task.SerialNumber, task.WorkflowName, task.activityInstanceName)">
<div class="item width-100">
@@ -36,12 +36,12 @@ ion-list{
border-radius: 15px;
box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07);
border:1px solid #e9e9e9 !important;
background-color: #fff !important;
//background-color: #fff !important;
margin-bottom: 10px !important;
padding: 15px;
.item{
background-color: var(--white);
//background-color: var(--white);
margin: 0 auto;
overflow: hidden;
@@ -18,18 +18,18 @@
refreshingText="A actualizar...">
</ion-refresher-content>
</ion-refresher>
<div class="width-100 overflow-y-auto height-100">
<ion-progress-bar type="indeterminate" *ngIf="skeletonLoader"></ion-progress-bar>
<div *ngIf="diplomasList.length >= 1">
<ion-list >
<!-- *ngFor = "let task of parecerList; let i = index"
(click)="viewExpedientDetail(task.SerialNumber)" -->
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
<div
class="expediente item-hover ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of diplomasList"
(click)="goToDiploma(task.SerialNumber)"
>
@@ -60,19 +60,19 @@
</div>
</div>
</div>
</ion-list>
</div>
<div
*ngIf="!skeletonLoader && diplomasList.length == 0"
<div
*ngIf="!skeletonLoader && diplomasList.length == 0"
class="empty-list d-flex height-100 align-center justify-content-center"
>
<span>Lista vazia</span>
</div>
<div *ngIf="skeletonLoader && diplomasList.length == 0">
<ion-list>
<ion-item>
<ion-thumbnail slot="end">
@@ -40,7 +40,7 @@
}
.ion-item-class{
padding: 0;
}
.label-text{
width: 100%;
@@ -52,7 +52,7 @@ ion-item{
--background: none;
}
.item {
background-color: var(--white);
//background-color: var(--white);
margin: 0 auto;
overflow: hidden;
}
@@ -86,7 +86,7 @@ ion-item{
.div-icon ion-icon{
display: block;
margin: 0 auto;
}
.div-content-expediente p, .div-content-pendentes p{
font-size: 14pt;
@@ -166,7 +166,7 @@ ion-item{
.exp-workflow{
float: left;
margin: 0 !important;
.label{
border-radius: 15px;
background: #ffb703;
@@ -229,4 +229,4 @@ ion-item{
font-size: 45px;
float: right;
margin-right: 10px;
}
}
@@ -26,7 +26,7 @@
<div *ngIf="deplomasStore.diplomasList.length >= 1">
<ion-list *ngSwitchCase="'validar'">
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
class="expediente item-hover ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of deplomasStore.diplomasList"
(click)="goToDiploma(task.SerialNumber)"
>
@@ -63,7 +63,7 @@
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of deplomasStore.diplomasAssinadoList"
(click)="goToDiploma(task.SerialNumber)"
>
<div class="item width-100">
@@ -94,15 +94,15 @@
</ion-list>
</div>
<div
*ngIf="!skeletonLoader && deplomasStore.diplomasList.length == 0 && deplomasStore.diplomasAssinadoList.length == 0"
<div
*ngIf="!skeletonLoader && deplomasStore.diplomasList.length == 0 && deplomasStore.diplomasAssinadoList.length == 0"
class="empty-list d-flex height-100 align-center justify-content-center"
>
<span>Lista vazia</span>
</div>
<div *ngIf="skeletonLoader && deplomasStore.diplomasAssinadoList.length == 0 && skeletonLoader && deplomasStore.diplomasList.length == 0">
<ion-list>
<ion-item>
<ion-thumbnail slot="end">
@@ -25,7 +25,7 @@
}
.ion-item-class{
padding: 0;
}
.label-text{
width: 100%;
@@ -40,7 +40,7 @@ ion-item{
//border-radius: 15px;
//box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07);
//Sborder: solid 1px #e9e9e9;
background-color: var(--white);
//background-color: var(--white);
margin: 0 auto;
//padding: 10px;
overflow: hidden;
@@ -75,7 +75,7 @@ ion-item{
.div-icon ion-icon{
display: block;
margin: 0 auto;
}
.div-content-expediente p, .div-content-pendentes p{
font-size: 14pt;
@@ -157,7 +157,7 @@ ion-item{
.exp-workflow{
float: left;
margin: 0 !important;
.label{
border-radius: 15px;
background: #ffb703;
@@ -220,4 +220,4 @@ ion-item{
font-size: 45px;
float: right;
margin-right: 10px;
}
}
@@ -32,7 +32,7 @@
<ion-list class="width-100" >
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
class="expediente item-hover ion-no-padding ion-no-margin cursor-pointer"
*ngFor="let event of eventaprovacaostore.listmd"
(click)="goToEventDetail(event)"
>
@@ -66,7 +66,7 @@
<ion-list class="width-100" *ngSwitchCase="'PR'">
<div class="width-100" *ngIf="eventaprovacaostore.listpr">
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
class="expediente item-hover ion-no-padding ion-no-margin cursor-pointer"
*ngFor="let event of eventaprovacaostore.listpr"
(click)="goToEventDetail(event)"
>
@@ -9,13 +9,13 @@
</div>
</ion-header>
<ion-content>
<div class="width-100 overflow-y-auto height-100" >
<ion-progress-bar type="indeterminate" *ngIf="skeletonLoader"></ion-progress-bar>
<ion-list *ngIf="expedienteGdStore.list.length >= 1">
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
class="expediente item-hover ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of expedienteGdStore.list"
(click)="goToExpediente(task.SerialNumber)"
>
@@ -47,15 +47,15 @@
</ion-list>
<div
*ngIf="!skeletonLoader && expedienteGdStore.list.length == 0 && expedienteGdStore.list.length == 0"
<div
*ngIf="!skeletonLoader && expedienteGdStore.list.length == 0 && expedienteGdStore.list.length == 0"
class="empty-list d-flex height-100 align-center justify-content-center"
>
<span>Lista vazia</span>
</div>
<div *ngIf="skeletonLoader && expedienteGdStore.list.length == 0">
<ion-list>
<ion-item>
<ion-thumbnail slot="end">
@@ -25,7 +25,7 @@
}
.ion-item-class{
padding: 0;
}
.label-text{
width: 100%;
@@ -75,7 +75,7 @@ ion-item{
.div-icon ion-icon{
display: block;
margin: 0 auto;
}
.div-content-expediente p, .div-content-pendentes p{
font-size: 14pt;
@@ -102,7 +102,7 @@ ion-item{
border-radius: 15px;
box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07);
border:1px solid #e9e9e9 !important;
background-color: var(--white);
//background-color: var(--white);
margin-bottom: 10px !important;
padding: 15px;
}
@@ -156,7 +156,7 @@ ion-item{
.exp-workflow{
float: left;
margin: 0 !important;
.label{
border-radius: 15px;
background: #ffb703;
@@ -219,4 +219,4 @@ ion-item{
font-size: 45px;
float: right;
margin-right: 10px;
}
}
@@ -17,13 +17,13 @@
refreshingText="A actualizar...">
</ion-refresher-content>
</ion-refresher>
<div class="width-100 overflow-y-auto height-100" >
<div >
<ion-progress-bar type="indeterminate" *ngIf="skeletonLoader"></ion-progress-bar>
<ion-list *ngIf="expedientegbstore.list.length >=0">
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
<div
class="expediente item-hover ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of expedientegbstore.list"
(click)="goToExpediente(task.SerialNumber)"
>
@@ -55,15 +55,15 @@
</ion-list>
</div>
<div
*ngIf="!skeletonLoader && expedientegbstore.list.length == 0 && expedientegbstore.list.length == 0"
<div
*ngIf="!skeletonLoader && expedientegbstore.list.length == 0 && expedientegbstore.list.length == 0"
class="empty-list d-flex height-100 align-center justify-content-center"
>
<span>Lista vazia</span>
</div>
<div *ngIf="skeletonLoader && expedientegbstore.list.length == 0">
<ion-list>
<ion-item>
<ion-thumbnail slot="end">
@@ -25,7 +25,7 @@
}
.ion-item-class{
padding: 0;
}
.label-text{
width: 100%;
@@ -40,7 +40,7 @@ ion-item{
//border-radius: 15px;
//box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07);
//Sborder: solid 1px #e9e9e9;
background-color: var(--white);
//background-color: var(--white);
margin: 0 auto;
//padding: 10px;
overflow: auto;
@@ -53,6 +53,7 @@ ion-item{
margin: 10px 0 10px 0;
background: #dae3f3;
border-radius: 20px;
border: 1px solid red;
}
.div-content-pendentes{
width: 100%;
@@ -75,7 +76,7 @@ ion-item{
.div-icon ion-icon{
display: block;
margin: 0 auto;
}
.div-content-expediente p, .div-content-pendentes p{
font-size: 14pt;
@@ -102,7 +103,7 @@ ion-item{
border-radius: 15px;
box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07);
border:1px solid #e9e9e9 !important;
background-color: var(--white);
//background-color: transparent;
margin-bottom: 10px !important;
padding: 15px;
}
@@ -156,7 +157,7 @@ ion-item{
.exp-workflow{
float: left;
margin: 0 !important;
.label{
border-radius: 15px;
background: #ffb703;
@@ -219,4 +220,4 @@ ion-item{
font-size: 45px;
float: right;
margin-right: 10px;
}
}
@@ -5,7 +5,7 @@
<div *ngIf="taskList.length >= 0">
<ion-list part="divo">
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
class="expediente item-hover ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of taskList; let i = index"
(click)="viewTaskDetail.emit(task)"
>
@@ -35,7 +35,7 @@
<!-- *ngFor = "let task of pedidosstore.listparecer; let i = index"
(click)="viewExpedientDetail(task.SerialNumber)" -->
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
class="expediente item-hover ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of pedidosstore.listparecer"
(click)="goToPedido(task.SerialNumber)"
>
@@ -72,7 +72,7 @@
<div *ngIf="pedidosstore.listdeferimento.length >= 1">
<ion-list *ngSwitchCase="'deferimento'">
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
class="expediente item-hover ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of pedidosstore.listdeferimento"
(click)="goToPedido(task.SerialNumber)"
>
@@ -39,8 +39,8 @@ ion-item{
.item {
//border-radius: 15px;
//box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07);
//Sborder: solid 1px #e9e9e9;
background-color: var(--white);
//border: solid 1px #e9e9e9;
//background-color: var(--white);
margin: 0 auto;
//padding: 10px;
overflow: hidden;
+1 -1
View File
@@ -1,4 +1,4 @@
<div class=" pb-10 ion-toolbar text-white">
<div class="main-tab pb-10 ion-toolbar text-white">
<div class="mobile d-flex div-top-header justify-space-between">
+6
View File
@@ -59,6 +59,9 @@
position: absolute;
}
}
.main-tab{
//border: 1px solid red;
}
.desktop{
@@ -82,6 +85,9 @@
user-select: none;
}
.tab:hover{
border-top: 7px solid white;
}
.active{
border-top: 7px solid white;
}