validaciones y fix mensajes de correos
This commit is contained in:
parent
7545affd77
commit
af8394b222
|
@ -55,12 +55,12 @@ email.private.text2=Saludos,
|
|||
|
||||
#Invitation Colaborator
|
||||
email.invitation.title=Se le ha invitado a colaborar en una encuesta
|
||||
email.invitation.greeting=¡Nueva invitacion, {0}!
|
||||
email.invitation.text1=Fue invitado a la encuesta "{0}(#{1})". Para aceptar la solicitud de colaborador, ingrese al área de colaboraciones.
|
||||
email.invitation.greeting=¡Nueva invitación, {0}!
|
||||
email.invitation.text1=Fue invitado a la encuesta "{0}(#{1})". Para aceptar la solicitud de colaborador, ingrese al área de colaboraciones
|
||||
email.invitation.text2=Saludos,
|
||||
|
||||
#Delete Colaborator
|
||||
email.deleteColaborator.title=Se le ha expulsado de una encuesta como colaborador
|
||||
email.deleteColaborator.greeting=¡Se le ha expulsado, {0}!
|
||||
email.deleteColaborator.text1=Fue expulsado de la encuesta {0}(#{1})".
|
||||
email.deleteColaborator.text1=Fue expulsado de la encuesta {0}(#{1})"
|
||||
email.deleteColaborator.text2=Saludos,
|
||||
|
|
|
@ -524,6 +524,12 @@
|
|||
<div *ngIf="userCollabNotExist" class="alert alert-danger alert-dismissible fade show" role="alert">
|
||||
No existe un usuario con ese correo
|
||||
</div>
|
||||
<div *ngIf="userCollabIsCollab" class="alert alert-danger alert-dismissible fade show" role="alert">
|
||||
Este usuario ya se encuentra colaborando
|
||||
</div>
|
||||
<div *ngIf="userCollabIsAutor" class="alert alert-danger alert-dismissible fade show" role="alert">
|
||||
Usted es el autor de la encuesta, no puede ser colaborador
|
||||
</div>
|
||||
<div>
|
||||
<div class="mb-5">
|
||||
<p class="ds-subtitle">Correo electrónico</p>
|
||||
|
@ -575,7 +581,13 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button id="btnCancelAddColaboradores" type="button" class="ds-btn ds-btn--secondary" data-dismiss="modal">
|
||||
<button
|
||||
id="btnCancelAddColaboradores"
|
||||
(click)="resetFormAddCollab()"
|
||||
type="button"
|
||||
class="ds-btn ds-btn--secondary"
|
||||
data-dismiss="modal"
|
||||
>
|
||||
<fa-icon icon="arrow-left"></fa-icon> <span>Cancelar</span>
|
||||
</button>
|
||||
<button
|
||||
|
|
|
@ -126,6 +126,8 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
|
|||
userPublicCollab: IUser | null = null;
|
||||
usuarioExtraCollab: UsuarioExtra | null = null;
|
||||
userCollabNotExist: boolean = false;
|
||||
userCollabIsCollab: boolean = false;
|
||||
userCollabIsAutor: boolean = false;
|
||||
constructor(
|
||||
protected encuestaService: EncuestaService,
|
||||
protected categoriaService: CategoriaService,
|
||||
|
@ -663,8 +665,17 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
|
|||
}
|
||||
}
|
||||
|
||||
resetFormAddCollab(): void {
|
||||
this.editFormAddCollab.reset();
|
||||
this.userPublicCollab = null;
|
||||
}
|
||||
|
||||
saveAddCollab(): void {
|
||||
this.isSavingAddCollab = true;
|
||||
this.userCollabIsAutor = false;
|
||||
this.userCollabIsCollab = false;
|
||||
this.userCollabNotExist = false;
|
||||
|
||||
const collab = this.createFromFormCollab();
|
||||
let rol = this.editFormAddCollab.get('rol_add')!.value;
|
||||
if (rol === 'READ') {
|
||||
|
@ -679,19 +690,29 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
|
|||
.pipe(
|
||||
finalize(() => {
|
||||
if (this.userPublicCollab?.id !== undefined) {
|
||||
this.usuarioExtraService.find(this.userPublicCollab?.id).subscribe(res => {
|
||||
this.usuarioExtraCollab = res.body;
|
||||
let now = new Date();
|
||||
collab.fechaAgregado = dayjs(now);
|
||||
collab.usuarioExtra = this.usuarioExtraCollab;
|
||||
collab.estado = EstadoColaborador.PENDING;
|
||||
collab.encuesta = this.encuesta;
|
||||
let id = 0;
|
||||
this.subscribeToSaveResponseAddCollab(this.usuarioEncuestaService.create(collab));
|
||||
});
|
||||
if (correoCollab === this.usuarioExtra?.user?.login) {
|
||||
this.userCollabIsAutor = true;
|
||||
this.isSavingAddCollab = false;
|
||||
} else if (this.validarUserIsCollab(correoCollab)) {
|
||||
this.userCollabIsCollab = true;
|
||||
this.isSavingAddCollab = false;
|
||||
} else {
|
||||
this.usuarioExtraService.find(this.userPublicCollab?.id).subscribe(res => {
|
||||
this.usuarioExtraCollab = res.body;
|
||||
let now = new Date();
|
||||
collab.fechaAgregado = dayjs(now);
|
||||
collab.usuarioExtra = this.usuarioExtraCollab;
|
||||
collab.estado = EstadoColaborador.PENDING;
|
||||
collab.encuesta = this.encuesta;
|
||||
let id = 0;
|
||||
this.subscribeToSaveResponseAddCollab(this.usuarioEncuestaService.create(collab));
|
||||
});
|
||||
}
|
||||
} else {
|
||||
this.userCollabNotExist = true;
|
||||
this.isSavingAddCollab = false;
|
||||
}
|
||||
this.resetFormAddCollab();
|
||||
})
|
||||
)
|
||||
.subscribe(res => {
|
||||
|
@ -699,6 +720,10 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
|
|||
if (user.login === correoCollab) {
|
||||
this.userPublicCollab = user;
|
||||
}
|
||||
if (user.id === this.usuarioExtra?.id) {
|
||||
// @ts-ignore
|
||||
this.usuarioExtra?.user?.login = user.login;
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
@ -773,6 +798,16 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
|
|||
return escritor;
|
||||
}
|
||||
|
||||
validarUserIsCollab(correoCollab: string) {
|
||||
let isCollab = false;
|
||||
this.usuariosColaboradores.forEach(c => {
|
||||
if (c.usuarioExtra?.id === this.userPublicCollab?.id) {
|
||||
isCollab = true;
|
||||
}
|
||||
});
|
||||
return isCollab;
|
||||
}
|
||||
|
||||
finalizar(): void {
|
||||
const modalRef = this.modalService.open(EncuestaFinalizarDialogComponent, { size: 'lg', backdrop: 'static' });
|
||||
modalRef.componentInstance.encuesta = this.encuesta;
|
||||
|
|
Loading…
Reference in New Issue