Commit 72eb28a7 by GD-A-150752

Bug-Fix +S52559371 +S52559537

parent 805e639d
......@@ -4,6 +4,7 @@ import { Select2Module } from 'ng2-select2';
import { BsDropdownModule } from 'ngx-bootstrap/dropdown';
import { ModalModule } from 'ngx-bootstrap/modal';
import { DeviceDetectorModule } from 'ngx-device-detector';
import { DndModule } from 'ngx-drag-drop';
import {
ConfirmationService,
DragDropModule,
......@@ -11,24 +12,26 @@ import {
MultiSelectModule,
OrderListModule
} from 'primeng/primeng';
import { AppComponent } from './app.component';
import { AppRoutingModule } from './app.routing';
import { AppService } from './app.service';
import { AdminIframePageComponent } from './components/admin-portal/admin-iframe-page/admin-iframe-page.component';
import { AdminPortalLayoutComponent } from './components/admin-portal/admin-portal-layout/admin-portal-layout.component';
import { AdminPortalLayoutService } from './components/admin-portal/admin-portal-layout/admin-portal-layout.service';
import { ApplicantPortalLayoutComponent } from './components/applicant-portal/applicant-portal-layout/applicant-portal-layout.component';
import { ApplicantPortalLayoutService } from './components/applicant-portal/applicant-portal-layout/applicant-portal-layout.service';
import { EditMessageTemplateComponent } from './components/admin-portal/edit-message-template/edit-message-template.component';
import { EditWorkflowTemplateComponent } from './components/admin-portal/edit-workflow-template/edit-workflow-template.component';
import { EditWorkflowTemplateService } from './components/admin-portal/edit-workflow-template/edit-workflow-template.service';
import { ErrorMessageComponent } from './components/error-message/error-message.component';
import { ListMessageTemplateComponent } from './components/admin-portal/list-message-template/list-message-template.component';
import { ListWorkFlowsComponent } from './components/admin-portal/list-work-flows/list-work-flows.component';
import { ApplicantPortalLayoutComponent } from './components/applicant-portal/applicant-portal-layout/applicant-portal-layout.component';
import { ApplicantPortalLayoutService } from './components/applicant-portal/applicant-portal-layout/applicant-portal-layout.service';
import { ErrorMessageComponent } from './components/error-message/error-message.component';
import { MessageEngineApplicantViewComponent } from './components/message-engine-applicant-view/message-engine-applicant-view.component';
import { MessageEngineApplicantViewService } from './components/message-engine-applicant-view/message-engine-applicant-view.service';
import { SelectTwoComponent } from './components/select-2/select-2.component';
import { FullLayoutComponent } from './oneit/components/full-layout/full-layout.component';
import { OneITModule } from './oneit/oneit.module';
import { DndModule } from "ngx-drag-drop";
@NgModule({
imports: [
......@@ -55,7 +58,8 @@ import { DndModule } from "ngx-drag-drop";
EditWorkflowTemplateComponent,
SelectTwoComponent,
ErrorMessageComponent,
ApplicantPortalLayoutComponent
ApplicantPortalLayoutComponent,
MessageEngineApplicantViewComponent
],
providers: [
FormBuilder,
......@@ -63,12 +67,14 @@ import { DndModule } from "ngx-drag-drop";
AdminPortalLayoutService,
ApplicantPortalLayoutService,
AppService,
EditWorkflowTemplateService
EditWorkflowTemplateService,
MessageEngineApplicantViewService
],
bootstrap: [AppComponent]
})
export class AppModule {
// tslint:disable-next-line:no-empty
constructor() {
}
}
......@@ -2,18 +2,18 @@ import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { AdminIframePageComponent } from './components/admin-portal/admin-iframe-page/admin-iframe-page.component';
import { AdminPortalLayoutComponent } from './components/admin-portal/admin-portal-layout/admin-portal-layout.component';
import { ApplicantPortalLayoutComponent } from './components/applicant-portal/applicant-portal-layout/applicant-portal-layout.component';
import { EditMessageTemplateComponent } from './components/admin-portal/edit-message-template/edit-message-template.component';
import { EditWorkflowTemplateComponent } from './components/admin-portal/edit-workflow-template/edit-workflow-template.component';
import { ListMessageTemplateComponent } from './components/admin-portal/list-message-template/list-message-template.component';
import { ListWorkFlowsComponent } from './components/admin-portal/list-work-flows/list-work-flows.component';
import { ApplicantPortalLayoutComponent } from './components/applicant-portal/applicant-portal-layout/applicant-portal-layout.component';
import { MessageEngineApplicantViewComponent } from './components/message-engine-applicant-view/message-engine-applicant-view.component';
import { AccessDeniedComponent } from './oneit/components/access-denied/access-denied.component';
import { FullLayoutComponent } from './oneit/components/full-layout/full-layout.component';
import { HomeComponent } from './oneit/components/home/home.component';
import { IframePageComponent } from './oneit/components/iframe-page/iframe-page.component';
import { AuthGuard } from './oneit/guards/auth.guard';
export const routes: Routes = [
{
path: '',
......@@ -52,8 +52,8 @@ export const routes: Routes = [
component: AdminPortalLayoutComponent,
canActivate: [AuthGuard],
data: {
"privs" : ["TL_AccessAdminPortal"],
"redirectPage" : "extensions/adminportal/sign_in.jsp"
privs: ['TL_AccessAdminPortal'],
redirectPage: 'extensions/adminportal/sign_in.jsp'
},
children: [
{
......@@ -90,6 +90,10 @@ export const routes: Routes = [
path: 'edit-workflow-template/:id',
component: EditWorkflowTemplateComponent,
canActivate: [AuthGuard]
},
{
path: 'message-engine',
component: MessageEngineApplicantViewComponent
}
]
},
......@@ -98,8 +102,8 @@ export const routes: Routes = [
component: ApplicantPortalLayoutComponent,
canActivate: [AuthGuard],
data: {
"privs" : ["TL_AccessApplicantPortal"],
"redirectPage" : "ApplicantPortal-ApplyJob.htm"
privs: ['TL_AccessApplicantPortal'],
redirectPage: 'ApplicantPortal-ApplyJob.htm'
},
children: [
{
......@@ -111,7 +115,7 @@ export const routes: Routes = [
];
@NgModule({
imports: [RouterModule.forRoot(routes, { useHash: true, onSameUrlNavigation: 'reload' })],
imports: [RouterModule.forRoot(routes, {useHash: true, onSameUrlNavigation: 'reload'})],
exports: [RouterModule]
})
export class AppRoutingModule {
......
......@@ -327,11 +327,12 @@
</div>
<div class="ui-g-12 ui-md-4">
<p-inputSwitch [(ngModel)]="stage.UseMessaging" [disabled]="showLoader"
(ngModelChange)="removeIconClass()"
name="UseMessaging{{stage.ObjectID}}">
</p-inputSwitch>
</div>
</div>
<p-panel [collapsed]="!stage.UseMessaging" [toggleable]="stage.UseMessaging"
<p-panel [collapsed]="!stage.UseMessaging" *ngIf="stage.UseMessaging" [toggleable]="stage.UseMessaging"
header="{{stageMessagesCount(stage)}}" toggler="header" class="messaging">
<div class="form-group row">
<div class="col-md-offset-9 col-md-3">
......
......@@ -71,6 +71,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
ngOnInit(): void {
window.scrollTo(0, 0);
this.showLoader = true;
if (this.adminPortalLayoutService.userData) {
this.initComponent();
......@@ -126,6 +127,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
this.addDefaultStages();
this.stepTypes = [...this.stepTypeOptions];
this.showLoader = false;
this.removeIconClass();
}
})
);
......@@ -133,6 +135,16 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
this.getMessageTemplates();
}
removeIconClass(): void {
setTimeout(() => {
const icons = document.getElementsByClassName('ui-panel-titlebar-icon');
// tslint:disable-next-line:prefer-for-of
for (let i = 0; i < icons.length; i++) {
icons[i].removeAttribute('href');
}
}, 0);
}
/**
* When a new template is created, following default values are to assigned.
*/
......@@ -476,6 +488,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
withdrawalMessage.IsWithdrawalMessage = true;
this.utilsService.addMultiRefObject(withdrawalMessage, stage, 'WorkFlowMessages', this.createdObjs);
this.reOrderStages();
this.removeIconClass();
}
/**
......@@ -565,6 +578,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
this.reOrderStages();
this.reOrderSteps();
this.showLoader = false;
this.removeIconClass();
},
error => {
this.showLoader = false;
......
<form #form="ngForm">
<div class="ui-g ui-fluid">
<div class="ui-g-12 nopad">
<p-toolbar>
<div class="ui-toolbar-group-left">
Mine Manager- Lone Star Gold
</div>
<div class="ui-toolbar-group-right actionBtn">
<button pButton type="button" label="" icon="ui-icon-"></button>
</div>
</p-toolbar>
</div>
</div>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-12">
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-1">
<label> M </label>
</div>
<div class="ui-g-12 ui-md-9">
<label> Hi John, </label><br/>
<label> Thanks for applying. Please click on the following link to complete your
application. </label><br/>
<a href="#" class=" data-link " style="" data-fielduid="4b7f9f1e27010d23b5c5"
data-elementID="httpsbitly2aBi0jj">https://bit.ly/2aBi0jj</a><br/>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-5">
<label> via Email </label>
</div>
<div class="ui-g-12 ui-md-7">
<label> 01/03/2019 11:43am </label>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-1">
</div>
</div>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-12">
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-2">
</div>
<div class="ui-g-12 ui-md-9">
<label> Hi </label><br/>
<label> I have updated my details. </label><br/>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-5">
<label> via App </label>
</div>
<div class="ui-g-12 ui-md-7">
<label> 05/03/2019 02:39pm </label>
</div>
</div>
</div>
<div class="ui-g-12 ui-md-1">
<label> J </label>
</div>
</div>
</div>
</div>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-1">
</div>
</div>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-12">
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-1">
<label> M </label>
</div>
<div class="ui-g-12 ui-md-9">
<label> Hi John, </label><br/>
<label> Thanks for for completing your application </label><br/>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-5">
<label> via SMS </label>
</div>
<div class="ui-g-12 ui-md-7">
<label> 08/03/2019 03:15pm </label>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-1">
</div>
</div>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-11">
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-11">
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-1 ui-fluid">
<i class="fa fa fa-bold " style="" data-fielduid="4e2d86417c490daa4d82"></i>
</div>
<div class="ui-g-12 ui-md-1 ui-fluid">
<i class="fa fa fa-italic " style="" data-fielduid="4c7d84047c2d8cb20bb3"></i>
</div>
<div class="ui-g-12 ui-md-1 ui-fluid">
<i class="fa fa fa-underline " style="" data-fielduid="4c35a64bbd878e1bbd2a"></i>
</div>
</div>
</div>
</div>
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-11 ui-fluid">
<textarea [(ngModel)]="engineApplicantView.ComposeSection"
name="ComposeSection{{engineApplicantView.ObjectID}}" fieldLabel="Compose Section"
pInputTextarea autoResize="autoResize"></textarea>
</div>
<div class="ui-g-12 ui-md-1">
<div class="ui-g form-group">
<div class="ui-g-12 ui-md-6 ui-fluid">
<i class="fa fa fa-paperclip fa-lg " style="" data-fielduid="4875a2129633b42c96b3"></i>
</div>
</div>
</div>
</div>
</div>
<div class="ui-g-12 ui-md-1">
<p-button label=""></p-button>
</div>
</div>
<p-progressSpinner *ngIf="showLoader"></p-progressSpinner>
</form>
import { Component, OnInit, ViewChild } from '@angular/core';
import { NgForm } from '@angular/forms';
import { ActivatedRoute, Params, Router } from '@angular/router';
import { Subscription } from 'rxjs/Subscription';
import { AppService } from '../../app.service';
import { SaveService } from '../../oneit/services/save.service';
import { UtilsService } from '../../oneit/services/utils.service';
import { BaseComponent } from '../admin-portal/base/base.component';
import { MessageEngineApplicantViewService } from './message-engine-applicant-view.service';
import { EngineApplicantView } from './message-engine-applicant-view.model';
@Component({
selector: 'app-message-engine-applicant-view',
templateUrl: './message-engine-applicant-view.component.html'
})
export class MessageEngineApplicantViewComponent extends BaseComponent implements OnInit {
subscriptions: Array<Subscription> = [];
@ViewChild('form') form: NgForm;
createdObjs = {};
updatedObjs = {};
deletedObjs = {};
engineApplicantView = new EngineApplicantView();
showLoader = false;
constructor(
private router: Router,
private activatedRoute: ActivatedRoute,
private utilsService: UtilsService,
private saveService: SaveService,
private appService: AppService,
private messageEngineApplicantViewService: MessageEngineApplicantViewService
) {
super(utilsService);
}
ngOnInit(): void {
this.utilsService.resetCounter();
this.subscriptions.push(this.activatedRoute.params
.subscribe(
(params: Params) => {
this.showLoader = true;
if (params.id && params.id !== '0') {
this.getEngineApplicantViewByID(params.id);
} else {
this.utilsService.createObject(this.engineApplicantView, this.createdObjs);
this.showLoader = false;
}
}
));
}
getEngineApplicantViewByID(id): void {
this.showLoader = true;
this.createdObjs = {};
this.updatedObjs = {};
this.deletedObjs = {};
this.utilsService.resetCounter();
this.utilsService.clearErrorMessages();
const assocs = [];
this.subscriptions.push(this.messageEngineApplicantViewService.getEngineApplicantViewByID(id, assocs)
.subscribe(
data => {
this.engineApplicantView = data;
this.updatedObjs[this.engineApplicantView.ObjectID] = this.engineApplicantView;
// Loop over other multirefs here, which can be updated on screen e.g
this.showLoader = false;
},
error => {
this.showLoader = false;
this.utilsService.handleError(error);
}
)
);
}
saveEngineApplicantView(reload: boolean): void {
this.utilsService.clearErrorMessages();
if (this.form.invalid) {
this.utilsService.showAllErrorMessages();
} else {
this.showLoader = true;
this.subscriptions.push(this.saveService.saveObjectsWithDefaultSvc(this.createdObjs, this.updatedObjs, this.deletedObjs)
.subscribe(
data => {
this.utilsService.handleSuccess();
if (reload) {
let idToNavigate = this.engineApplicantView.ObjectID;
if (data.created[idToNavigate]) {
idToNavigate = data.created[idToNavigate];
this.router.navigate(['/message-engine-applicant-view', idToNavigate]);
return;
}
this.getEngineApplicantViewByID(idToNavigate);
} else {
this.router.navigate(['']);
}
},
error => {
this.showLoader = false;
this.utilsService.handleError(error);
}
)
);
}
}
}
export class EngineApplicantView {
ObjectID: string;
ObjectClass = 'EngineApplicantView';
ComposeSection: string;
}
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import { SearchService } from '../../oneit/services/search.service';
import { UtilsService } from '../../oneit/services/utils.service';
@Injectable()
export class MessageEngineApplicantViewService {
constructor(
private searchService: SearchService,
private utilsService: UtilsService
) {
}
getEngineApplicantViewByID(id, assocs): Observable<any> {
return this.searchService.getObjectById('', id, assocs)
.map(
data => {
const objs = this.utilsService.convertResponseToObjects(data, assocs);
if (objs && objs.length > 0) {
return objs[0];
}
}
);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment