Commit 72eb28a7 by GD-A-150752

Bug-Fix +S52559371 +S52559537

parent 805e639d
...@@ -4,6 +4,7 @@ import { Select2Module } from 'ng2-select2'; ...@@ -4,6 +4,7 @@ import { Select2Module } from 'ng2-select2';
import { BsDropdownModule } from 'ngx-bootstrap/dropdown'; import { BsDropdownModule } from 'ngx-bootstrap/dropdown';
import { ModalModule } from 'ngx-bootstrap/modal'; import { ModalModule } from 'ngx-bootstrap/modal';
import { DeviceDetectorModule } from 'ngx-device-detector'; import { DeviceDetectorModule } from 'ngx-device-detector';
import { DndModule } from 'ngx-drag-drop';
import { import {
ConfirmationService, ConfirmationService,
DragDropModule, DragDropModule,
...@@ -11,24 +12,26 @@ import { ...@@ -11,24 +12,26 @@ import {
MultiSelectModule, MultiSelectModule,
OrderListModule OrderListModule
} from 'primeng/primeng'; } from 'primeng/primeng';
import { AppComponent } from './app.component'; import { AppComponent } from './app.component';
import { AppRoutingModule } from './app.routing'; import { AppRoutingModule } from './app.routing';
import { AppService } from './app.service'; import { AppService } from './app.service';
import { AdminIframePageComponent } from './components/admin-portal/admin-iframe-page/admin-iframe-page.component'; 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { SelectTwoComponent } from './components/select-2/select-2.component';
import { FullLayoutComponent } from './oneit/components/full-layout/full-layout.component'; import { FullLayoutComponent } from './oneit/components/full-layout/full-layout.component';
import { OneITModule } from './oneit/oneit.module'; import { OneITModule } from './oneit/oneit.module';
import { DndModule } from "ngx-drag-drop";
@NgModule({ @NgModule({
imports: [ imports: [
...@@ -55,7 +58,8 @@ import { DndModule } from "ngx-drag-drop"; ...@@ -55,7 +58,8 @@ import { DndModule } from "ngx-drag-drop";
EditWorkflowTemplateComponent, EditWorkflowTemplateComponent,
SelectTwoComponent, SelectTwoComponent,
ErrorMessageComponent, ErrorMessageComponent,
ApplicantPortalLayoutComponent ApplicantPortalLayoutComponent,
MessageEngineApplicantViewComponent
], ],
providers: [ providers: [
FormBuilder, FormBuilder,
...@@ -63,12 +67,14 @@ import { DndModule } from "ngx-drag-drop"; ...@@ -63,12 +67,14 @@ import { DndModule } from "ngx-drag-drop";
AdminPortalLayoutService, AdminPortalLayoutService,
ApplicantPortalLayoutService, ApplicantPortalLayoutService,
AppService, AppService,
EditWorkflowTemplateService EditWorkflowTemplateService,
MessageEngineApplicantViewService
], ],
bootstrap: [AppComponent] bootstrap: [AppComponent]
}) })
export class AppModule { export class AppModule {
// tslint:disable-next-line:no-empty
constructor() { constructor() {
} }
} }
...@@ -2,18 +2,18 @@ import { NgModule } from '@angular/core'; ...@@ -2,18 +2,18 @@ import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router'; import { RouterModule, Routes } from '@angular/router';
import { AdminIframePageComponent } from './components/admin-portal/admin-iframe-page/admin-iframe-page.component'; 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 { 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 { 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 { 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 { 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 { 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 { AccessDeniedComponent } from './oneit/components/access-denied/access-denied.component';
import { FullLayoutComponent } from './oneit/components/full-layout/full-layout.component'; import { FullLayoutComponent } from './oneit/components/full-layout/full-layout.component';
import { HomeComponent } from './oneit/components/home/home.component'; import { HomeComponent } from './oneit/components/home/home.component';
import { IframePageComponent } from './oneit/components/iframe-page/iframe-page.component'; import { IframePageComponent } from './oneit/components/iframe-page/iframe-page.component';
import { AuthGuard } from './oneit/guards/auth.guard'; import { AuthGuard } from './oneit/guards/auth.guard';
export const routes: Routes = [ export const routes: Routes = [
{ {
path: '', path: '',
...@@ -52,8 +52,8 @@ export const routes: Routes = [ ...@@ -52,8 +52,8 @@ export const routes: Routes = [
component: AdminPortalLayoutComponent, component: AdminPortalLayoutComponent,
canActivate: [AuthGuard], canActivate: [AuthGuard],
data: { data: {
"privs" : ["TL_AccessAdminPortal"], privs: ['TL_AccessAdminPortal'],
"redirectPage" : "extensions/adminportal/sign_in.jsp" redirectPage: 'extensions/adminportal/sign_in.jsp'
}, },
children: [ children: [
{ {
...@@ -90,6 +90,10 @@ export const routes: Routes = [ ...@@ -90,6 +90,10 @@ export const routes: Routes = [
path: 'edit-workflow-template/:id', path: 'edit-workflow-template/:id',
component: EditWorkflowTemplateComponent, component: EditWorkflowTemplateComponent,
canActivate: [AuthGuard] canActivate: [AuthGuard]
},
{
path: 'message-engine',
component: MessageEngineApplicantViewComponent
} }
] ]
}, },
...@@ -98,8 +102,8 @@ export const routes: Routes = [ ...@@ -98,8 +102,8 @@ export const routes: Routes = [
component: ApplicantPortalLayoutComponent, component: ApplicantPortalLayoutComponent,
canActivate: [AuthGuard], canActivate: [AuthGuard],
data: { data: {
"privs" : ["TL_AccessApplicantPortal"], privs: ['TL_AccessApplicantPortal'],
"redirectPage" : "ApplicantPortal-ApplyJob.htm" redirectPage: 'ApplicantPortal-ApplyJob.htm'
}, },
children: [ children: [
{ {
...@@ -111,7 +115,7 @@ export const routes: Routes = [ ...@@ -111,7 +115,7 @@ export const routes: Routes = [
]; ];
@NgModule({ @NgModule({
imports: [RouterModule.forRoot(routes, { useHash: true, onSameUrlNavigation: 'reload' })], imports: [RouterModule.forRoot(routes, {useHash: true, onSameUrlNavigation: 'reload'})],
exports: [RouterModule] exports: [RouterModule]
}) })
export class AppRoutingModule { export class AppRoutingModule {
......
...@@ -327,11 +327,12 @@ ...@@ -327,11 +327,12 @@
</div> </div>
<div class="ui-g-12 ui-md-4"> <div class="ui-g-12 ui-md-4">
<p-inputSwitch [(ngModel)]="stage.UseMessaging" [disabled]="showLoader" <p-inputSwitch [(ngModel)]="stage.UseMessaging" [disabled]="showLoader"
(ngModelChange)="removeIconClass()"
name="UseMessaging{{stage.ObjectID}}"> name="UseMessaging{{stage.ObjectID}}">
</p-inputSwitch> </p-inputSwitch>
</div> </div>
</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"> header="{{stageMessagesCount(stage)}}" toggler="header" class="messaging">
<div class="form-group row"> <div class="form-group row">
<div class="col-md-offset-9 col-md-3"> <div class="col-md-offset-9 col-md-3">
......
...@@ -71,6 +71,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn ...@@ -71,6 +71,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
ngOnInit(): void { ngOnInit(): void {
window.scrollTo(0, 0); window.scrollTo(0, 0);
this.showLoader = true; this.showLoader = true;
if (this.adminPortalLayoutService.userData) { if (this.adminPortalLayoutService.userData) {
this.initComponent(); this.initComponent();
...@@ -126,6 +127,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn ...@@ -126,6 +127,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
this.addDefaultStages(); this.addDefaultStages();
this.stepTypes = [...this.stepTypeOptions]; this.stepTypes = [...this.stepTypeOptions];
this.showLoader = false; this.showLoader = false;
this.removeIconClass();
} }
}) })
); );
...@@ -133,6 +135,16 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn ...@@ -133,6 +135,16 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
this.getMessageTemplates(); 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. * When a new template is created, following default values are to assigned.
*/ */
...@@ -476,6 +488,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn ...@@ -476,6 +488,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
withdrawalMessage.IsWithdrawalMessage = true; withdrawalMessage.IsWithdrawalMessage = true;
this.utilsService.addMultiRefObject(withdrawalMessage, stage, 'WorkFlowMessages', this.createdObjs); this.utilsService.addMultiRefObject(withdrawalMessage, stage, 'WorkFlowMessages', this.createdObjs);
this.reOrderStages(); this.reOrderStages();
this.removeIconClass();
} }
/** /**
...@@ -565,6 +578,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn ...@@ -565,6 +578,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
this.reOrderStages(); this.reOrderStages();
this.reOrderSteps(); this.reOrderSteps();
this.showLoader = false; this.showLoader = false;
this.removeIconClass();
}, },
error => { error => {
this.showLoader = false; 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