{"version":3,"sources":["webpack:///src/app/view/job-listing/job-listing.component.ts","webpack:///src/app/view/job-listing/job-listing.component.html","webpack:///src/app/view/job-apply/job-apply-notice-period/job-apply-notice-period.component.ts","webpack:///src/app/view/job-apply/job-apply-notice-period/job-apply-notice-period.component.html","webpack:///src/app/layout/header/header.component.ts","webpack:///src/app/layout/header/header.component.html","webpack:///src/app/login/reset-password/reset-password.component.ts","webpack:///src/app/login/reset-password/reset-password.component.html","webpack:///src/app/view/profile/edit-user/edit-user.component.ts","webpack:///src/app/view/profile/edit-user/edit-user.component.html","webpack:///util (ignored)","webpack:///util (ignored)?d8a1","webpack:///min-document (ignored)","webpack:///src/app/view/home/why-choose/why-choose.component.ts","webpack:///src/app/view/home/why-choose/why-choose.component.html","webpack:///src/app/view/profile/profile.component.ts","webpack:///src/app/view/profile/profile.component.html","webpack:///src/app/view/home/conversation/conversation.component.ts","webpack:///src/app/view/home/conversation/conversation.component.html","webpack:///src/app/layout/live-chat/live-chat.component.ts","webpack:///src/app/layout/live-chat/live-chat.component.html","webpack:///src/app/view/home/article-details/article-details.component.ts","webpack:///src/app/view/home/article-details/article-details.component.html","webpack:///src/app/errorpages/forbidden/forbidden.component.ts","webpack:///src/app/errorpages/forbidden/forbidden.component.html","webpack:///src/app/view/job-apply/job-knowledge/job-knowledge.component.ts","webpack:///src/app/view/job-apply/job-knowledge/job-knowledge.component.html","webpack:///src/app/view/job-details/add-document/add-document.component.ts","webpack:///src/app/view/job-details/add-document/add-document.component.html","webpack:///src/app/errorpages/not-found/not-found.component.ts","webpack:///src/app/errorpages/not-found/not-found.component.html","webpack:///src/app/core/interceptors/jwt.interceptor.ts","webpack:///src/app/login/terms-and-services/terms-and-services.component.ts","webpack:///src/app/login/terms-and-services/terms-and-services.component.html","webpack:///src/app/view/job-application/questions/expectation/expectation.component.ts","webpack:///src/app/view/job-application/questions/expectation/expectation.component.html","webpack:///src/app/layout/anonymous-section/anonymous-section.component.ts","webpack:///src/app/layout/anonymous-section/anonymous-section.component.html","webpack:///src/environments/environment.ts","webpack:///src/app/view/job-application/questions/question-form/question-form.component.ts","webpack:///src/app/view/job-application/questions/question-form/question-form.component.html","webpack:///src/app/view/Background-Verification/permenant-address/permenant-address.component.ts","webpack:///src/app/view/Background-Verification/permenant-address/permenant-address.component.html","webpack:///src/app/view/home/search-job/search-job.component.ts","webpack:///src/app/view/home/search-job/search-job.component.html","webpack:///src/app/view/profile/document-submission/document-submission.component.ts","webpack:///src/app/view/profile/document-submission/document-submission.component.html","webpack:///src/app/shared/services/signalr-notifications.service.ts","webpack:///src/app/view/job-application/questions/contact-detais/contact-detais.component.ts","webpack:///src/app/view/job-application/questions/contact-detais/contact-detais.component.html","webpack:///src/app/shared/directive/sort-by.pipe.ts","webpack:///src/app/core/guards/auth.guards.ts","webpack:///src/app/shared/directive/safe-htlm.directive.ts","webpack:///src/app/view/profile/similar-jobs/similar-jobs.component.ts","webpack:///src/app/view/profile/similar-jobs/similar-jobs.component.html","webpack:///src/app/shared/services/meta-tag.service.ts","webpack:///src/app/view/home/home.component.ts","webpack:///src/app/view/job-application/questions/rate-skills/rate-skills.component.ts","webpack:///src/app/view/job-application/questions/rate-skills/rate-skills.component.html","webpack:///src/app/login/forgot-password/forgot-password.component.ts","webpack:///src/app/login/forgot-password/forgot-password.component.html","webpack:///src/app/view/job-apply/job-apply-interview-availability/job-apply-interview-availability.component.html","webpack:///src/app/view/job-apply/job-apply-interview-availability/job-apply-interview-availability.component.ts","webpack:///src/app/view/job-application/questions/impress-your-future-employer/impress-your-future-employer.component.ts","webpack:///src/app/view/job-application/questions/impress-your-future-employer/impress-your-future-employer.component.html","webpack:///src/app/view/job-details/job-details.component.ts","webpack:///src/app/view/job-details/job-details.component.html","webpack:///src/app/shared/component/carousel/carousel-item.directive.ts","webpack:///src/app/view/home/job-category/job-category.component.ts","webpack:///src/app/view/home/job-category/job-category.component.html","webpack:///src/app/layout/anonymous-section/header-view/header-view.component.ts","webpack:///src/app/layout/anonymous-section/header-view/header-view.component.html","webpack:///src/app/shared/component/carousel/carousel.component.ts","webpack:///src/app/shared/component/carousel/carousel.component.html","webpack:///src/app/core/interceptors/error.interceptor.ts","webpack:///src/app/shared/directive/min-max.directive.ts","webpack:///src/app/view/job-application/questions/marital-status/marital-status.component.ts","webpack:///src/app/view/job-application/questions/marital-status/marital-status.component.html","webpack:///src/app/shared/services/chat-communication.service.ts","webpack:///src/app/view/job-application/questions/upload-resume/upload-resume.component.ts","webpack:///src/app/view/job-application/questions/upload-resume/upload-resume.component.html","webpack:///src/app/shared/directive/allowed-reg-exp-directive.directive.ts","webpack:///src/app/view/job-application/questions/certification/certification.component.ts","webpack:///src/app/view/job-application/questions/certification/certification.component.html","webpack:///src/app/view/job-application/questions/gender/gender.component.ts","webpack:///src/app/view/job-application/questions/gender/gender.component.html","webpack:///node_modules/moment/locale sync ^\\.\\/.*$","webpack:///src/app/view/job-application/questions/employment-details/employment-details.component.ts","webpack:///src/app/view/job-application/questions/employment-details/employment-details.component.html","webpack:///src/app/app.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/view/job-application/questions/impress-your-future-employer/videojs-record/videojs-record.component.ts","webpack:///src/app/view/job-application/questions/impress-your-future-employer/videojs-record/videojs-record.component.html","webpack:///src/app/view/job-apply/job-apply-personal-details/job-apply-personal-details.component.ts","webpack:///src/app/view/job-apply/job-apply-personal-details/job-apply-personal-details.component.html","webpack:///src/app/shared/directive/allownumbers.ts","webpack:///src/app/view/job-application/questions/reason-for-job-change/reason-for-job-change.component.ts","webpack:///src/app/view/job-application/questions/reason-for-job-change/reason-for-job-change.component.html","webpack:///src/app/shared/services/confirmation-popup.service.ts","webpack:///src/app/view/home/testimonials/testimonials.component.ts","webpack:///src/app/view/home/testimonials/testimonials.component.html","webpack:///src/app/view/Background-Verification/personal-details/personal-details.component.ts","webpack:///src/app/view/Background-Verification/personal-details/personal-details.component.html","webpack:///src/app/view/Background-Verification/present-address/present-address.component.ts","webpack:///src/app/view/Background-Verification/present-address/present-address.component.html","webpack:///src/app/shared/component/thank-you/thank-you.component.ts","webpack:///src/app/shared/component/thank-you/thank-you.component.html","webpack:///src/app/view/job-apply/job-apply.component.ts","webpack:///src/app/view/job-apply/job-apply.component.html","webpack:///src/app/app.module.ts","webpack:///src/app/shared/services/index.ts","webpack:///src/environments/environment.prod.ts","webpack:///src/app/privacy-policy/privacy-policy.component.ts","webpack:///src/app/privacy-policy/privacy-policy.component.html","webpack:///src/app/view/home/hiring-process/hiring-process.component.ts","webpack:///src/app/view/home/hiring-process/hiring-process.component.html","webpack:///src/app/view/job-application/questions/compensation-benefits/compensation-benefits.component.ts","webpack:///src/app/view/job-application/questions/compensation-benefits/compensation-benefits.component.html","webpack:///src/app/shared/directive/only-number-with-decimals.directive.ts","webpack:///src/app/view/Background-Verification/bg-verification/bg-verification.component.ts","webpack:///src/app/view/Background-Verification/bg-verification/bg-verification.component.html","webpack:///src/app/shared/services/utility/datetime-converter.service.ts","webpack:///src/app/view/job-details/preview-doc/preview-doc.component.ts","webpack:///src/app/view/job-details/preview-doc/preview-doc.component.html","webpack:///src/app/view/candidate-unsubscribe/candidate-unsubscribe.component.ts","webpack:///src/app/view/candidate-unsubscribe/candidate-unsubscribe.component.html","webpack:///src/app/view/Background-Verification/family-details/family-details.component.ts","webpack:///src/app/view/Background-Verification/family-details/family-details.component.html","webpack:///src/app/view/job-application/questions/impress-your-future-employer/sample-video/sample-video.component.ts","webpack:///src/app/view/job-application/questions/impress-your-future-employer/sample-video/sample-video.component.html","webpack:///src/app/cookie-policy/cookie-policy.component.ts","webpack:///src/app/cookie-policy/cookie-policy.component.html","webpack:///src/app/view/job-apply/about-company/about-company.component.ts","webpack:///src/app/view/job-apply/about-company/about-company.component.html","webpack:///src/app/shared/services/slider-config.service.ts","webpack:///src/app/view/Background-Verification/employer-details/employer-details.component.ts","webpack:///src/app/view/Background-Verification/employer-details/employer-details.component.html","webpack:///src/app/layout/footer/footer.component.ts","webpack:///src/app/layout/footer/footer.component.html","webpack:///src/app/view/job-application/questions/experience/experience.component.ts","webpack:///src/app/view/job-application/questions/experience/experience.component.html","webpack:///src/app/view/job-apply/job-apply-resume/job-apply-resume.component.ts","webpack:///src/app/view/job-apply/job-apply-resume/job-apply-resume.component.html","webpack:///src/app/view/job-apply/job-apply-menu/job-apply-menu.component.ts","webpack:///src/app/view/job-apply/job-apply-menu/job-apply-menu.component.html","webpack:///src/app/shared/services/notifications.service.ts","webpack:///src/app/view/Background-Verification/education-details/education-details.component.ts","webpack:///src/app/view/Background-Verification/education-details/education-details.component.html","webpack:///src/app/login/term-service/term-service.component.ts","webpack:///src/app/login/term-service/term-service.component.html","webpack:///src/app/view/profile/salary-confirmation/salary-confirmation.component.ts","webpack:///src/app/view/profile/salary-confirmation/salary-confirmation.component.html","webpack:///src/app/view/Background-Verification/bgverification.ts","webpack:///src/app/shared/services/common-api.service.ts","webpack:///src/app/layout/before-login/before-login.component.ts","webpack:///src/app/layout/before-login/before-login.component.html","webpack:///src/app/shared/directive/max-number.directive.ts","webpack:///src/app/view/job-application/questions/personal-information/personal-information.component.ts","webpack:///src/app/view/job-application/questions/personal-information/personal-information.component.html","webpack:///src/app/view/job-application/questions/education-details/education-details.component.ts","webpack:///src/app/view/job-application/questions/education-details/education-details.component.html","webpack:///src/app/view/job-application/job-application.component.ts","webpack:///src/app/view/job-application/job-application.component.html","webpack:///src/app/view/job-application/questions/notice-period/notice-period.component.ts","webpack:///src/app/view/job-application/questions/notice-period/notice-period.component.html","webpack:///src/app/view/home/job-list-home/job-list-home.component.ts","webpack:///src/app/view/home/job-list-home/job-list-home.component.html","webpack:///src/app/login/email-confirm/email-confirm.component.ts","webpack:///src/app/login/email-confirm/email-confirm.component.html","webpack:///src/app/view/profile/edit-profile-details/edit-profile-details.component.ts","webpack:///src/app/view/profile/edit-profile-details/edit-profile-details.component.html","webpack:///src/app/core/models/enums.ts","webpack:///src/app/view/home/featured-article/featured-article.component.ts","webpack:///src/app/view/home/featured-article/featured-article.component.html","webpack:///src/app/layout/layout.component.ts","webpack:///src/app/layout/layout.component.html","webpack:///src/app/view/job-application/questions/current-location/current-location.component.ts","webpack:///src/app/view/job-application/questions/current-location/current-location.component.html","webpack:///src/app/app-routing.module.ts","webpack:///src/app/view/job-apply/video-profile/video-profile.component.ts","webpack:///src/app/view/job-apply/video-profile/video-profile.component.html","webpack:///src/app/login/login.component.html","webpack:///src/app/login/login.component.ts","webpack:///src/app/shared/component/carousel/carousel-item-element.directive.ts","webpack:///src/app/shared/services/home-page.service.ts","webpack:///src/app/view/job-application/questions/upload-pay-slip/upload-pay-slip.component.ts","webpack:///src/app/view/job-application/questions/upload-pay-slip/upload-pay-slip.component.html","webpack:///src/app/core/services/authentication.service.ts","webpack:///src/app/view/job-apply/current-salary-expectations/current-salary-expectations.component.ts","webpack:///src/app/view/job-apply/current-salary-expectations/current-salary-expectations.component.html","webpack:///src/main.ts","webpack:///$_lazy_route_resource lazy namespace object","webpack:///src/app/core/services/custom-route.service.ts","webpack:///src/app/view/job-application/questions/work-eligibility/work-eligibility.component.ts","webpack:///src/app/view/job-application/questions/work-eligibility/work-eligibility.component.html"],"names":["JobListingComponent","commonApiService","authenticationService","homePageService","router","route","appliedJobs","isGrid","sourceId","candidatePrimaryDetails","CountriesList","CountriesList_master","countryID","countryname","searchKey","searchCuntry","currentPage","TechnologysList","perPageCount","AllJobsList","searchSkils","getTechnology","currentUser","subscribe","x","userPrimaryDetails","userDetails","getCandidatePrimaryInfo","queryParams","params","undefined","getCountries","joblist","navigate","jobid","jobId","st","skillIs","forEach","element","category","push","value","display","canPrfId","obj","countryId","perPage","searchKeyModel","getAllJobsList","data","status","result","joblists","portalJobs","length","localStorage","getItem","split","item","i","isApplied","error","email","filter","c","name","toLocaleLowerCase","includes","val","getTechnologys","splice","selector","templateUrl","styleUrls","JobApplyNoticePeriodComponent","JobApplication","toastr","currentOpeningPREF","valueChange","empStatus","datePickerConfig","dateInputFormat","containerClass","showWeekNumbers","isAnimated","adaptivePosition","width","height","selectedCheckboxval","reasonsForReloc","candidateProfileDetails","console","log","reasonForJobChangeMasterData","reason","indexOf","rmvalue","pop","join","getisOtherSelected","trim","emit","currentWizard","isForward","evt","target","checked","ind","currentOrganization","currDesignation","noticePeriod","candidateLastWorkDate","newDate","Date","candidateCanJoinDate","prevoius","next","application","fildOfCandidateDetails","DesignationMsterData","HeaderComponent","modalService","notificationSevice","dateConverter","datePipe","isFluidheader","isHomeheader","IsUserLoginOrNot","notifications","hideInJobdetailsPage","isJobApplyPage","currentUserValue","eventUrl","match","websiteUrl","url","headerEnableDisable","events","event","getNotifications","castNotifications","unreadCount","f","notiStatus","logout","profilePhoto","updateReadStatus","navtoggler","ResetPasswordComponent","formBuilder","authencationService","token","submitted","loader","requestSuccess","rpForm","group","password","required","minLength","confirmPassword","validator","MustMatch","controls","controlName","matchingControlName","formGroup","control","matchingControl","errors","mustMatch","setErrors","invalid","model","resetPassword","resp","message","onSubmit","id","EditUserComponent","el","apiService","CitiesList","validationFlag","CurrentCountryName","EmployeeViewModel","EmployerList","certificationsId","qualificationList","candidateQualificationList","candidatesSkillViewModel","socialProfile","profileType","profileURL","openFormOfEmployer","SkillSetList","certificationsList","rolesList","candidateEmpEduCertDtls","CourseLists","qualificationsId","groupid","educationViewModel","candProfId","qualificationId","qualification","course","courseId","univOrInstitution","yearofPassing","durationFrom","durationTo","grade","percentage","onClose","isLoader","commonDetailValdidationFlag","validationFlagatFinalSubmit","QalificatvalidationFlag","educationId","CertificatevalidationFlag","getQualificationList","getCertificationsList","getrolesList","getCourcesListList","genderService","getgenderList","maritalService","getMaritalStatusList","gender","maritalStatus","genderList","maritalStatusList","meta","errorMessage","getRefDate","phonecode","countryName","getSkillSet","dt","emptFromDate","emptToDate","phoneNumber","cant","pincode","alterPhoneNumber","alterpincode","roles","a","parseInt","dateofBirth","dateis","getFullYear","getUTCMonth","getDate","candidateSocialReferenceViewModel","map","Object","assign","find","y","expInMonths","expInYears","totalExp","getCandidateEmpEduCertDtls","getCities","candId","files","mimeType","type","success","reader","FileReader","readAsDataURL","onload","_event","invalidControl","nativeElement","querySelector","focus","CurrentCountryName1","formDT","FormData","invalidControl1","CityName","cityId","CityName_obj","toString","contact","altercontact","append","emailId","dob","transform","nationality","list","s","technologyId","selfRating","skil","String","JSON","stringify","listOfsocialProfile","replace","UpdatePrimaryDetails","localUser","parse","firstName","setItem","setTimeout","window","location","reload","sort","b","getRefMasterData","emp","addedVal","currentStatus","employerName","employId","address","designationId","designation","cpname","cpdesignation","cpnumber","cpemailId","currentWorkingFlag","officialEmailId","hrcontactNo","hremailId","candidateEmpMentModel","addNewEmployer","candidateEduViewModel","q","qualificationname","coursename","updateCandidateEduBGV","myScrollContainer","scrollTop","scrollHeight","mon","EmployeerData","updateBGVEmployeerData","getCitiesEmp","qal","candidateCertificationViewModel","certificationId","certificationID","saveCertificationData","skillId","indexis","skill","index","findIndex","preview","getCitiesOnChange","onDateChange","addQalification","addCertfication","addNewSkill","onUpdatePrimaryDetails","read","WhyChooseComponent","ProfileComponent","sliderConfigService","bvgVerificationObject","activatedRoute","notificationService","chatService","pageLoaded","jobActiveApplication","jobNewApplications","CounselorsContactDetails","isActiveApplication","isNewJobApplication","existingAppliedJobsList","slider_state","isMobileShow","similarJobs","videProfileLink","viewJobDetails","slideConfig","sliderConfig","slidesToShow","slidesToScroll","infinite","autoplay","dots","isPageLive","getUserCurrentStatus","ob","da","onlineStatus","rsp","checkUserStatus","timeInterval","getTypesOfMasterData","castUnreadCount_subscribe","castUnreadCount","UnreadChatList","process_chatUnreadCount","unsubscribe","listOfDoc","doctype","bsModalRef","show","initialState","pendingDoc","docType","ignoreBackdropClick","content","closeBtnName","onHidden","res","hide","getCandidateActiveApplications","applied","candProfStatusCode","getCandidateArchivedApplications","getCandidateNewJobApplications","getRecruiterDetails","getSimilarJobsList","SetCountryList","getCandidateActiveJobs","activeCandidateJobs","elem","concat","getCandidateArchivedJobs","jobArchivedApplication","getTypeOfMasterDta","listofType","returnStatus","docStatus","candidateSimilarJobs","person","contactNo","candidateProId","salaryDetails","clientCurrency","opCurrency","candidateCurrency","cpCurrency","clientSalary","opGrossPayPerMonth","candidatePreviousSalaryPerMonth","cpTakeHomeSalPerMonth","offeredSalary","candidateCity","candidateCountry","clientCity","jobCityName","clientCountry","jobCountryName","todaysDate","salaryDetailsObj","bgv","arg","profileid","objList","flagis","docTypeName","indx","chatUnreadCount","roomCounts","count","reduce","viewJobDescription","right","animations","usedDetails","ConversationComponent","commonService","datetimeService","authService","roomDetails","enterText","route_subscribe","getJobDescription","getRecuiterDetails","roomCount","roomId","room","latestMessageDt","getRoomByJob","receiverId","document","getElementsByClassName","castChatMessages_subscribe","castChatMessages","messages","UpdateReadStatus","castRooms_subscribe","castRooms","GetUnreadCount","candidateUserId","jobDesc","err","candidateId","warning","userId","getChatCommunication","formData","selectedFiles","chatRoomId","receiverName","sendChatCommunicationMessage","fileInput","setRoomId","resumes","upload","sendMessage","encapsulation","None","LiveChatComponent","getAllChatCommunication","castChatMessagesAll","openChat","bottom","ArticleDetailsComponent","featuredArticlesLists","getArticldetails","articleId","getArticle","ForbiddenComponent","titleService","title","setTitle","JobKnowledgeComponent","isShowEducationGrid","isSkillSectionShow","sections","code","bgcolor","tabs","sectionId","addFalg","CertificationID","addFlag","openingSkillSet","candidateEducationQualifications","candidateEducationCertifications","openingCertifications","openingQualifications","mainWizardPage","isSave","isYesOptionChecked","candidateQualificationModel","preferenceType","checkList","CandidateOpeningList","qualificationLists","cert","CertificationList","certDtls","candidateCirtificates","certificationName","AddDocumentComponent","activeModal","uploadFileObj","fileGroup","isVideoRec","isVideo","e","videoRecorder","rec","getCommonLists","fileGroupLists","docTypeLists","isValid","isFormSubmitted","resume","isValidFile","file","size","text","sendable","key","saveFiles","close","getGroup","candiateId","requestedFiles","resetFile","NotFoundComponent","JwtInterceptor","request","isLoggedIn","isApiUrl","startsWith","baseUrl","clone","setHeaders","Authorization","handle","TermsAndServicesComponent","ExpectationComponent","CheckVaribale","checkOpeningPREF","previousCheckValue","AvailindexIs","fieldCode","dynamic","ExistindexIs","openingPREFViewModel","epTakeHomeSalPerMonth","previous","AnonymousSectionComponent","preUrl","environment","production","serverPath","appUrl","onlineStatusInterval","env_name","google","login","ClientId","picker","DeveloperKey","AppId","Scope","facebook","QuestionFormComponent","requiredOrNotFlag","openingQtns","listis","Response","displayFlag","PermenantAddressComponent","BgVerificationComponent","ToastrService","showWeeks","maxDate","candidateBGVerificationData","presAddrCityId","permAddrCityID","permAddrResiSince","permAddrResiTill","permAddrContactNo","cont","permAddrContactNo_code","permAddrCountryID","permAddress","permAddrLandMark","permAddrResiType","Number","isNaN","permAddrContactPerson","expeInMonths","expeInYears","noOfKids","presAddrResiType","updateBGVericationData","onDateChangeTill","previousPage","saveBGVDetails","SearchJobComponent","homeComponent","smooth","jobsAvailableLists","items","TechnologysList_copy","totalJobCount","jobAvailableList","heroText","hiring","herSubtext","formatter","job","OpeningName","searchObj","getCountryWiseJobCounts","jobCount","DocumentSubmissionComponent","pendingDocumentType","selectedDocId","fileName","d","documents","objofDoc","formDt","sasticval","joid","UpdateCandidateFile","uploadDocument","SignalrNotificationsService","http","apiUrl","connectionId","srConnectionIdSubject","castrConnectionId","asObservable","logoutSubject","castlogout","connect","startConnection","addListeners","withUrl","withAutomaticReconnect","withHubProtocol","build","hubConnection","getConnection","start","then","stop","on","messageData","IsAudioNotify","getElementById","play","updateChatMessages","_","providedIn","ContactDetaisComponent","countryCodePhoneNumber","altCountryCodePhoneNumber","afterValidation","alteContactNo","SortByPipe","order","column","reverse","AuthGuard","state","SafeHtmlPipe","sanitized","bypassSecurityTrustHtml","SimilarJobsComponent","sf","profileId","navigateViewAllJobDetails","MetaTagService","section","siteName","description","imageUrl","getElementsByTagName","innerText","getAttribute","setAttribute","addTag","property","currentDt","getUTCFullYear","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","HomeComponent","openJoblistFlag","similarJobCount","href","portalJobCount","RateSkillsComponent","createCandidateSkillViewModel","sk","list1","valueArr","isDuplicate","some","idx","createCandidateSkillViewModelArray","charCode","which","keyCode","ForgotPasswordComponent","_location","fpForm","forgetPassword","back","backClicked","JobApplyInterviewAvailabilityComponent","breakpointObserver","defaultNonAvailablities","isSubmit","deviceType","WEB","MOBILE_BREAKPOINT","TABLET_BREAKPOINT","DESKTOP_BREAKPOINT","observe","pipe","toPromise","breakpoints","MOBILE","TAB","formdt","getDeviceCategory","deviceCategory","fullName","googleDriveResumeFiles","ResumeURLType","paySlips","remarks","candidatePrefVidPrfl","candVideoProfile","recordedData","validPpflag","passportExpiryDate","candidatePrefRegion","candidatePrefDrivingLicence","jobCountryDrivingLicence","jobDesirableDomain","jobDesirableCategory","jobTenure","jobDesirableTenure","jobWorkPattern","jobDesirableWorkPattern","candidatePrefLanguage","candidatePrefVisaPreference","jobDesirableTeamRole","currEmplFlag","candidatePrefEmployeeStatus","candidateResignationAccepted","reasonType","currLocation","currLocationID","currOrganization","totalExperiance","relevantExperiance","cpGrossPayPerAnnum","cpDeductionsPerAnnum","cpVariablePayPerAnnum","currencyName","expectedPackage","anyOfferInHand","candidateDOB","checkNullableSpecialization","jobDesirableSpecializations","jobDesirableImplementations","jobDesirableDesigns","jobDesirableDevelopments","jobDesirableSupports","jobDesirableQualities","jobDesirableDocumentations","candidateSkills","skillLevelId","parseFloat","candidateCertificationModel","certification","userApplyJob","interviewFaceToFace","interviewFaceToFaceReason","interviewFaceToFaceReasonChoice","createUpdateJobCandidate","ImpressYourFutureEmployerComponent","modalServices","elementRef","isVideoFile","isPreviewFile","isEndedRecord","isShowVideo","isThankyouScreen","recDataBlob","videofilesList","video","eve","previewFile","fullNameInPp","googleDrivePaySlipsFiles","PaySlipsURL","UpdateCandiate","epCurrency","createCandidate","resumeType","dispPlayer","src","URL","createObjectURL","clearVideo","save","JobDetailsComponent","metaService","shareUrl","Isapply","candidateFileLists","getJobDetails","jobDetail","jobDetails","recruiterViewModel","updateShareFacebook","jobTitle","shortJobDesc","getImage","byteArray","Uint8Array","filename","downloadFiles","info","blob","binaryData","Blob","createElement","body","appendChild","download","click","fileObj","modalRef","open","centered","componentInstance","viewDocument","getCandidateFiles","getCandidateRequestedFiles","getCandidateProfileDetails","encodeURI","CarouselItemDirective","tpl","JobCategoryComponent","jobCategory","img","career","HeaderViewComponent","CarouselComponent","builder","timing","showControls","currentSlide","carouselWrapperStyle","offset","time","arr","toArray","first","shift","reset","transitionCarousel","last","reSizeCarousel","itemWidth","itemsElements","getBoundingClientRect","myAnimation","buildAnimation","player","create","pihirecarousel","exportAs","onResize","ErrorInterceptor","statusText","MinMaxDirective","ref","a_Event","max","min","onInput","MaritalStatusComponent","ChatCommunicationService","allMessages","rooms","chatMessagesSubject","chatMessagesAllSubject","roomsSubject","unreadCountSubject","post","get","UploadResumeComponent","changeDetectorRef","pickerApiLoaded","isGoogleDriveEnabled","DISCOVERY_DOCS","isPickerLoaded","developerKey","CLIENT_ID","appId","SCOPES","oauthToken","gapi","load","auth","auth2","getAuthInstance","authResult","getAuthResponse","authorizeResult","authorize","createPicker","scope","loadPicker","access_token","that","client","init","clientId","discoveryDocs","isSignedIn","listen","updateClientSigninStatus","signIn","view","View","ViewId","PDFS","setMimeTypes","PickerBuilder","enableFeature","Feature","NAV_HIDDEN","setAppId","setOAuthToken","addView","DocsUploadView","setDeveloperKey","setCallback","resumefilesList","action","Action","PICKED","docs","DOCUMENTS","drive","alt","responseType","charArray","Array","charCodeAt","typedArray","headers","fl","File","lastModified","now","checkValidationFlag","detectChanges","setVisible","uploadresume","AllowedRegExpDirective","preventDefault","onKeydown","CertificationComponent","addcertificates","GenderComponent","webpackContext","req","webpackContextResolve","__webpack_require__","o","Error","keys","webpackContextKeys","resolve","module","exports","EmploymentDetailsComponent","nameis","AppComponent","customRouteService","client_env_name","VideojsRecordComponent","playerRec","isRecording","plugin","config","fluid","loop","bigPlayButton","controlBar","volumePanel","plugins","record","image","audio","debug","maxLength","msg","VERSION","getPluginVersion","fileOfBlob","stopDevice","warn","dispose","JobApplyPersonalDetailsComponent","maxValue","options","floor","ceil","step","showTicks","showTicksValues","getLegend","translate","options_relevent","maxRange","minDate","CheckDOBFlag","languages","visaPreferences","regions","drivingLicesnses","domains","categories","isSubmitted","terms","workPattern","showNameImage","showDOBImage","getAllMasterData","setCurrentLocationName","changes","currentValue","form","scrollIntoView","behavior","block","highlightParentGroup","parentGroup","closest","classList","add","remove","focusFirstInvalidControl","candidatePrefNationality","ESSENTIAL","expeInMonthsPrefTyp","releventExpInMonthsPrefTyp","foundName","country","rmdesc","languageService","getLanguagePreferences","visaService","getVisaPreferences","regionService","getRegions","drivingService","getDrivingLicenses","domainService","getDomains","categoryService","getCommonJobListById","workPatternService","getWorkPatterns","termsService","getJobTenures","teamRolesService","getTeamRoles","languagePreference","visaPreference","region","drivingLicesnse","domainData","categoryServiceData","workPatternData","termData","teamRoleData","regionName","getNameFromList","domainName","workPatternName","tenureName","candidatePrefLanguageName","candidatePrefDrivingLicenceName","getDescFromList","candidatePrefVisaPreferenceName","teamRoleName","locationName","ele","CUSTOM_INPUT_DATE_PICKER_CONTROL_VALUE_ACCESSOR","provide","useExisting","OnlyNumberDirective","multi","renderer","filteredValue","filterValue","updateTextInput","onTouched","propagateChange","setProperty","onChange","fn","isDisabled","providers","onInputChange","onBlur","ReasonForJobChangeComponent","jobApplication","checkVideoFlag","fieldCodeVP","reasonForJobChangeLists","ConfirmationPopupService","btnOkText","btnCancelText","dialogSize","confirmation","fire","icon","buttonsStyling","showCancelButton","confirmButtonText","cancelButtonText","customClass","confirmButton","cancelButton","timer","showConfirmButton","TestimonialsComponent","testimonialLists","getTestimonials","PersonalDetailsComponent","bloodGroupMasterData","setFullYear","getBloodGroup","dateOfBirth","ppExpiryDate","mobileNo","mobileNo_code","lastName","placeOfBirth","bloodGroup","ppnumber","ugMedicalTreaFlag","ugMedicalTreaDetails","inp","fromCharCode","test","PresentAddressComponent","hoursPlaceholder","minutesPlaceholder","sameAsParementAddress","presAddrContactNo","presAddress","presAddrCountryId","presAddrContactPerson","presAddrLandMark","presAddrResiSince","presAddrPrefTimeForVerification","presAddrContactNo_code","presPinCode","permPinCode","eventCheck","onDateChangepresAddrResiSince","ThankYouComponent","JobApplyComponent","fb","CityesList","mainWizard","CurrencyMasterData","reasonForJobChangeGroupId","DesignationGroupId","currentcConvertionRate","paySlipfilesList","isShow","currentCountryId","previousCountryId","openingQualification","openingCourseLists","getJobInfo","skillset","edit","skillSetLists","toFixed","equRate","currentSalary","expectedSalary","difference","Infinity","roundedPercent","Math","round","backdrop","fromSymbol","toSymbol","convertionFromTo","frmCurn","toCurn","getTodaysConvertionRate","calcConversionRate","convertionRate","currentcConvertionRateTwoDecimal","getCityList","getOpeningJobInfo","getSkillsList","getReasonsForJobChangeMasterData","getCurrencyMasterData","getCertificationList","getDesignationMasterData","processQuestionaire","rmtype","applicationSkills","specializationViewModel","specializationObj","technology","getJobCandidateApply","passPortFlag","phData","changeCurrency","candidateSkillViewModel","SkillViewModel","objis","Id","skillLevel","technologyName","IsCanSkill","candidateSpecialization","setSkillObject","emailAddress","photo","objiss","skillObj","qualificationName","courseName","valueName","changePage_forward","changePage_backward","gotoTop","scroll","top","left","screensettings","personalDtls","pg1","isVisible","pg2","pg3","salaryExp","knowledge","interviewAvail","visibleCount","completedCount","JobApplyComponent_screensettings_personalDtls","JobApplyComponent_screensettings_salaryExp","JobApplyComponent_screensettings_noticePeriod","JobApplyComponent_screensettings_knowledge","JobApplyComponent_screensettings_resume","JobApplyComponent_screensettings_interviewAvail","ApplyComponent_screensettings_element","JobApplyComponent_screensettings_personalDtls_pg1","JobApplyComponent_screensettings_personalDtls_pg2","JobApplyComponent_screensettings_personalDtls_pg3","setValues","isCompleted","elements","candidatePrefValidPassport","candidateFullName","candidatePrefDOB","contactNumber","altContactNumber","candidatePrefGender","candidatePrefMaritalStatus","candidatePrefResidingCountry","candidatePrefResidingCity","jobRole","JobApplyComponent_screensettings_salaryExp_pg1","currency","annualSalary","variablePay","deducation","netMonthlyTakeHome","expectedTakeHome","candidatePrefPaySlp","JobApplyComponent_screensettings_noticePeriod_pg1","JobApplyComponent_screensettings_noticePeriod_pg2","employmentStatus","resignationAccepted","ServingNoticePeriod","CurrenltyWorking","FreeLancerOrImmediateJoiner","JobApplyComponent_screensettings_knowledge_pg1","JobApplyComponent_screensettings_knowledge_pg2","JobApplyComponent_screensettings_knowledge_jobSkill","JobApplyComponent_screensettings_knowledge_candSkill","_application","_candidateProfileDetails","candQualification","candCertification","_c","videoProfile","candidatePrefResume","interAval","interAvalOther","AppModule","useClass","useValue","autoLogin","PROVIDER_ID","provider","forRoot","declarations","imports","bootstrap","PrivacyPolicyComponent","HiringProcessComponent","CompensationBenefitsComponent","OnlyNumberWithDecimalsDirective","hostElement","allowDecimals","allowSign","decimalSeparator","previousValue","integerUnsigned","integerSigned","decimalUnsigned","decimalSigned","validateValue","clipboardData","getData","cursorPosition","originalValue","getName","controlOrCommand","ctrlKey","metaKey","signExists","separatorExists","allowedKeys","separatorIsCloseToSign","firstCharacterIsSeparator","charAt","isNumber","RegExp","regex","firstCharacter","lastCharacter","valid","onPaste","onKeyDown","CountryList","Countrys","getBGVericationData","homePhone_code","emerContactNo_code","SetBVGObject","DatetimeConverterService","utsDate","format","localTime","toDate","date","fromNow","PreviewDocComponent","sanitizer","filePath","viewerType","toLowerCase","isIframe","imageDoc","bypassSecurityTrustResourceUrl","CandidateUnsubscribeComponent","isThankyou","unsubcribeMail","FamilyDetailsComponent","onLoad","currentBVGObj","thisobj","emerContactNo","homePhone","fatherName","motherName","spouseName","emerContactPerson","emerContactRelation","SampleVideoComponent","CookiePolicyComponent","JobApplyAboutCompanyComponent","countryBenifitsList","aboutCompany","locations","locationImg","locationIcon","countryBenifits","clientsLogos","getCountryBenifits","SliderConfigService","arrows","speed","cssEase","autoplaySpeed","responsive","breakpoint","settings","breakpointLg","breakpointMd","breakpointSm","breakpointXs","EmployerDetailsComponent","enableAddEmp","candidateBGVEmployeeViewModel","enableViewmodal","empobj","empobjis","valuis","FooterComponent","community","about","stayConnected","stay","year","isFullFooter","ExperienceComponent","JobApplyResumeComponent","videoResumeFile","mediatypes","acceptTypes","maxSize","videoObj","blobData","videoResumeFileMediaType","fileUrl","JobApplyMenuComponent","lnkClick","NotificationsService","notifiactionsSubject","usersOnline","postModel","userIds","emailIds","userTypes","updateUserOnlineStatus","EducationDetailsComponent","confirmationPopupService","enableSaveButton","submitBgvEnableFlag","candidateBGVEduViewModel","education","edu","countIs","confirmQuestion","confirm","isConfirmed","TermServiceComponent","SalaryConfirmationComponent","isSubmitLoader","salaryConformation","approve","salaryClientCurrency","salaryCandidateCurrency","percentageOfHike","isApprove","reOfferApprove","salaryConfirm","BVGVerificationObject","BVGObject","object","CommonApiService","candidatePrimaryDtls","OpID","refData","canProfId","candiatedetails","errorHandler","put","JobId","groupId","Jobid","profileemail","candidate","similarJobsListObje","CanProfId","bgvObj","eduObj","apiCall","BeforeLoginComponent","MaxNumberDirective","navigationKeys","inputElement","shiftKey","pastedInput","execCommand","textData","dataTransfer","onDrop","PersonalInformationComponent","datepipe","CheckNameFlag","indexofDOB","checkDOBScreen","EDUEducationDetailsComponent","addQualification","JobApplicationComponent","countis","jobDescSkillViewModel","mobileJobDesc","NoticePeriodComponent","employmentType","JobListHomeComponent","homecomponent","pagesCount_list","pagesCount","gridStorage","viewListType","n","p","EmailConfirmComponent","emailVerify","emailVerifys","emailVarification","EditProfileDetailsComponent","addValue","JobOpeningPreferenceTypes","CandidateEmploymentStatus","deviceTypes","FeaturedArticleComponent","getBlogPost","getfeaturedArticles","LayoutComponent","signalRNotificationService","isFooter","isHeaderEnable","loadSignalrConnectionId","updateTxnLogs","hideFooter","evtUrl","CurrentLocationComponent","CheckNationality","CheckLocation","checkvalidationOfNationality","checkNationalityScreen","routes","path","component","children","redirectTo","pathMatch","canActivate","AppRoutingModule","useHash","scrollPositionRestoration","VideoProfileComponent","videoRecorderBlob","triggerEvent","updatePlayer","LoginComponent","isDisplaySignUp","sourceFrom","loginObject","validationMessage","registerLoader","passVisible","active","alreadyLoginTemp","logoutFromDevices","logouttoken","isNewJob","getPreviousUrl","openAlreadyLoginModal","AuthenticateGoogle","idToken","PSDevice","sfId","registerWithGoogle","AuthenticateFacebook","authToken","passInput","registerWithFacebook","registerForm","register","varificationToken","emailVarify","acceptTerms","requiredTrue","CarouselItemElementDirective","HomePageService","UploadPaySlipComponent","filesList","Type","payslips","MULTISELECT_ENABLED","role","encoding","uploadPayslips","AuthenticationService","srConnService","signalrConnectionId","ipAddress","latitude","longitude","currentUserSubject","disconnectConnection","removeItem","getLocation","username","user","isUnauth","disconnectUser","erro","conId","loginStatus","lat","longi","deviceUiId","loadDeviceType","ip","ua","navigator","userAgent","geolocation","getCurrentPosition","position","coords","CurrentSalaryExpectationsComponent","bootstrapModule","webpackEmptyAsyncContext","Promise","CustomRouteService","previousUrl","currentUrl","WorkEligibilityComponent"],"mappings":"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","file":"main-es5.js","sourcesContent":["import { Component, OnInit } from '@angular/core';\r\nimport { CommonApiService, HomePageService } from '../../shared/services'\r\nimport { ProfileComponent } from '../profile/profile.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { userDetails, User } from '../../core/models/user';\r\nimport { AuthenticationService } from '../../core/services/authentication.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-job-listing',\r\n templateUrl: './job-listing.component.html',\r\n styleUrls: ['./job-listing.component.scss']\r\n})\r\nexport class JobListingComponent implements OnInit {\r\n selectedCity: any;\r\n appliedJobs: any = [];\r\n\r\n isGrid: boolean = false;\r\n joblists: any;\r\n currentUser: User;\r\n sourceId: number = 5;// 5 means careerportal\r\n userPrimaryDetails: userDetails;\r\n candidatePrimaryDetails: any = {};\r\n CountriesList: any = [];\r\n CountriesList_master: any = [];\r\n countryID: any = \"\";\r\n countryname: any = \"\";\r\n searchKey: string = \"\";\r\n searchCuntry: string = \"\";\r\n currentPage: number = 1;\r\n TechnologysList: any = [];\r\n perPageCount: number = 20;\r\n constructor(\r\n private commonApiService: CommonApiService, private authenticationService: AuthenticationService, private homePageService: HomePageService,\r\n private router: Router, private route: ActivatedRoute,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.getTechnology()\r\n\r\n this.authenticationService.currentUser.subscribe(x => {\r\n this.currentUser = x;\r\n this.userPrimaryDetails = this.currentUser.userDetails;\r\n this.getCandidatePrimaryInfo();\r\n })\r\n this.route.queryParams.subscribe((params) => {\r\n this.sourceId = (params['sf'] == null || params['sf'] == undefined) ? 5 : params['sf'];\r\n });\r\n\r\n this.getCountries();\r\n }\r\n //navigateJobDetails(joblist: any) {\r\n // this.router.navigate(['job-details'], { queryParams: { opId: joblist.OpID } });\r\n //}\r\n navigateJobDetails(joblist: any) {\r\n this.router.navigate(['app/jobdetails'], { queryParams: { jobid: joblist.jobId, st: this.sourceId } });\r\n }\r\n \r\n AllJobsList: any = [];\r\n searchSkils: any = [];\r\n getAllJobsList() {\r\n let skillIs: any = []\r\n this.searchSkils.forEach((element) => {\r\n if (element?.category == \"TE\") {\r\n skillIs.push({ \"value\": element.value, \"category\": \"TE\", \"display\": element.display })\r\n\r\n } else {\r\n skillIs.push({ \"value\": 0, \"category\": \"JR\", \"display\": element.display })\r\n }\r\n\r\n })\r\n\r\n var canPrfId = this.candidatePrimaryDetails.canPrfId;\r\n if (this.candidatePrimaryDetails.canPrfId == null || this.candidatePrimaryDetails.canPrfId == undefined) {\r\n canPrfId = 0;\r\n }\r\n var countryID = \"\";\r\n if (this.countryID != null && this.countryID != \"\" && this.countryID != 0) {\r\n countryID = this.countryID;\r\n }\r\n\r\n var obj = {\r\n countryId: countryID == \"\" ? null : countryID,\r\n currentPage: this.currentPage,\r\n perPage: 10,\r\n searchKeyModel: skillIs\r\n }\r\n this.AllJobsList = [];\r\n // var obj = `perPage=${this.perPageCount}¤tPage=${this.currentPage}&countryId=${this.countryID}&searchKey=${this.searchSkils}`;\r\n this.homePageService.getAllJobsList(obj).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.joblists = data.result.portalJobs;\r\n\r\n if (this.joblists.length > 0) {\r\n this.appliedJobs = localStorage.getItem('appliedJobs');\r\n if (this.appliedJobs != null) {\r\n this.appliedJobs = this.appliedJobs.split(',');\r\n this.joblists.forEach(item => {\r\n this.appliedJobs.forEach(i => {\r\n if (item.jobId == i) {\r\n item.isApplied = true;\r\n }\r\n });\r\n });\r\n }\r\n }\r\n if (this.joblists.length == 0 && this.currentPage > 1) {\r\n this.currentPage = 1;\r\n this.getAllJobsList();\r\n }\r\n }\r\n }\r\n }, error => {\r\n })\r\n }\r\n\r\n gridChange() {\r\n this.isGrid = !this.isGrid;\r\n }\r\n\r\n getCountries() {\r\n this.commonApiService.getCountries().subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CountriesList_master = data.result;\r\n this.CountriesList = data.result;\r\n }\r\n }\r\n }, error => {\r\n\r\n })\r\n }\r\n\r\n getCandidatePrimaryInfo() {\r\n this.commonApiService.getCandidatePrimaryInfo(this.userPrimaryDetails.email).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null || data.result.length != 0 || data.result.length != undefined) {\r\n this.candidatePrimaryDetails = data.result;\r\n\r\n this.getAllJobsList();\r\n }\r\n }\r\n }, error => {\r\n\r\n })\r\n }\r\n\r\n filterFunction() {\r\n if (this.searchCuntry != null) {\r\n this.CountriesList = this.CountriesList_master.filter(c => { return c.name.toLocaleLowerCase().includes(this.searchCuntry.toLocaleLowerCase()) });\r\n //.filter(it => {\r\n // return it.toLocaleLowerCase().includes(searchText);\r\n //});\r\n }\r\n else {\r\n this.CountriesList = this.CountriesList_master;\r\n }\r\n }\r\n pagechange(val) {\r\n this.currentPage = val;\r\n this.getAllJobsList();\r\n }\r\n\r\n getTechnology() {\r\n this.homePageService.getTechnologys().subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.TechnologysList = data.result;\r\n this.TechnologysList = this.TechnologysList.splice(0, 3000);\r\n //this.TechnologysList.filter((t) => { this.TechnologysList_copy.push({ \"display\": t.title, \"value\": t.id, \"cetagiry\": \"TE\" }); })\r\n } else {\r\n }\r\n }\r\n }, error => {\r\n\r\n })\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Find relevant jobs matching your Skills.

\r\n
We have 500 + Available jobs.
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n Location\r\n {{ c.name }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
0\">\r\n \r\n \r\n
\r\n
0\" [ngClass]=\"isGrid ? 'list' : 'grid'\">\r\n
\r\n
\r\n
\r\n

\r\n {{ joblist.jobTitle }}\r\n

\r\n \r\n \"location\"\r\n {{ joblist.cityName }}/{{ joblist.countryName }}\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n Experience\r\n \r\n \r\n {{ joblist.minExp }}-{{\r\n joblist.maxExp\r\n }}\r\n Years\r\n \r\n
\r\n
\r\n \r\n Posted Date\r\n \r\n \r\n {{ joblist.postedDate | date: \"dd MMMM YYYY \" }}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"No\r\n
We currently do not have any job openings
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n 1\">\r\n 11\">\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { JobApplyComponent } from '../job-apply.component';\nimport { ToastrService } from 'ngx-toastr';\nimport { CandidateEmploymentStatus } from '../../../core/models/enums';\n\n@Component({\n selector: 'app-job-apply-notice-period',\n templateUrl: './job-apply-notice-period.component.html',\n styleUrls: ['./job-apply-notice-period.component.scss']\n})\nexport class JobApplyNoticePeriodComponent implements OnInit {\n\n @Input() application: any;\n @Input() currentOpeningPREF: any = {};\n @Input() fildOfCandidateDetails: any;\n @Output() valueChange = new EventEmitter();\n @Input() currentPage:number;\n @Input() currentWizard:number;\n\n @Input() DesignationMsterData:any\n empStatus:any = CandidateEmploymentStatus;\n maxDate: Date;\n datePickerConfig = {\n dateInputFormat: 'DD MMM YYYY',\n containerClass: 'theme-green',\n showWeekNumbers: false,\n isAnimated: true,\n adaptivePosition: true,\n width: 400,\n height: 300\n };\n selectedCheckboxval: any = [];\n reasonsForReloc: string = \"\";\n\n constructor(\n public JobApplication: JobApplyComponent,\n private toastr: ToastrService,\n\n ) { }\n\n ngOnInit(): void {\n if (this.JobApplication.candidateProfileDetails.reasonsForReloc != \"\") {\n this.selectedCheckboxval = this.JobApplication.candidateProfileDetails.reasonsForReloc.split(\",\");\n console.log(this.selectedCheckboxval)\n this.JobApplication.reasonForJobChangeMasterData.forEach((reason) => {\n reason[\"IsSelected\"] = false;\n if (this.selectedCheckboxval.indexOf(reason.rmvalue) != -1) {\n reason[\"IsSelected\"] = true;\n }\n\n })\n console.log(this.selectedCheckboxval.indexOf(\"Other\"))\n if (this.selectedCheckboxval.indexOf(\"Other\") != -1) {\n this.reasonsForReloc = this.selectedCheckboxval[this.selectedCheckboxval.length - 1]\n this.selectedCheckboxval.pop();\n\n }\n }\n }\n\n next() {\n \n if (this.currentPage == 2) {\n\n if (this.selectedCheckboxval.length > 0) {\n if (this.selectedCheckboxval.indexOf(\"Other\") != -1) {\n this.JobApplication.candidateProfileDetails.reasonsForReloc = this.selectedCheckboxval.join(\",\");\n this.JobApplication.candidateProfileDetails.reasonsForReloc = this.JobApplication.candidateProfileDetails.reasonsForReloc + \",\" + this.reasonsForReloc\n } else {\n this.JobApplication.candidateProfileDetails.reasonsForReloc = this.selectedCheckboxval.join(\",\");\n }\n } else {\n return false;\n }\n \n if (this.getisOtherSelected()) {\n this.reasonsForReloc = this.reasonsForReloc.trim();\n if ((this.reasonsForReloc == null || this.reasonsForReloc == \"\")) {\n return false;\n }\n }\n \n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: true\n });\n } else {\n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: true\n });\n }\n\n }\n \n prevoius() {\n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: false\n });\n }\n\n\n getisOtherSelected() {\n //var reasonType = this.jobApplication.reasonForJobChangeMasterData.filter(r => r.id == this.jobApplication.candidateProfileDetails.reasonType);\n if (this.selectedCheckboxval.length != 0) {\n if (this.selectedCheckboxval.indexOf(\"Other\") != -1) {\n return true;\n } else { return false; }\n } else {\n return false;\n }\n }\n\n selectedCheckbox(evt: any, value: string) {\n if (evt.target.checked) {\n this.selectedCheckboxval.push(value);\n } else {\n var ind = this.selectedCheckboxval.indexOf(value);\n if (ind != -1) {\n this.selectedCheckboxval.splice(ind, 1);\n }\n // this.selectedCheckboxval.pop(value);\n }\n }\n\n resetNoticePeriod() {\n console.log('notice')\n this.JobApplication.candidateProfileDetails.currentOrganization = undefined;\n this.JobApplication.candidateProfileDetails.currDesignation = undefined;\n this.JobApplication.candidateProfileDetails.noticePeriod = undefined;\n this.JobApplication.candidateProfileDetails.candidateLastWorkDate = undefined; \n }\n onDateChange(newDate: Date) {\n this.JobApplication.candidateProfileDetails.candidateLastWorkDate = new Date(newDate);\n }\n\n onDateChange1(newDate: Date) {\n this.JobApplication.candidateProfileDetails.candidateCanJoinDate = new Date(newDate);\n\n }\n}\n","
\n\n\n\n
\n \n\n
\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n\n \n
\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n\n \n
\n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
\n \n {{ c.rmvalue }}\n \n \n \n\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n Preferred {{application.jobNoticePeriod || '0'}} Days\n\n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n\n \n \n
\n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
\n\n \n {{ c.rmvalue }}\n \n \n\n \n \n\n
\n
\n
\n
\n
\n
\n \n\n \n \n\n\n \n \n \n\n \n \n \n Preferred {{application.jobNoticePeriod || '0'}} Days\n \n \n\n \n
\n\n
\n
\n
\n \n \n
\n\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n\n
\n \n
\n
\n \n \n
\n
\n
\n \n
\n\n
\n
\n

Let us know the reason for your job change

\n
\n
\n \n \n
\n
\n \n Required\n \n
\n
\n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n
\n\n
\n
\n\n\n
\n \n \n
\n
","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AuthenticationService } from '../../core/services/authentication.service';\r\nimport { NotificationsService } from '../../shared/services/notifications.service';\r\nimport { CommonApiService } from '../../shared/services';\r\nimport { DatetimeConverterService } from '../../shared/services/utility/datetime-converter.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { environment } from '../../../environments/environment';\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss'],\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n @ViewChild('navtoggler', { static: true })\r\n public navtoggler?: HTMLButtonElement;\r\n isFluidheader: any = false;\r\n isHomeheader: any = true;\r\n eventUrl: string;\r\n IsUserLoginOrNot: boolean = false;\r\n notifications: any = [];\r\n unreadCount: number;\r\n hideInJobdetailsPage: boolean = false;\r\n isJobApplyPage:boolean = false;\r\n constructor(\r\n private modalService: NgbModal,\r\n private router: Router,\r\n private authenticationService: AuthenticationService,\r\n private notificationSevice: NotificationsService,\r\n private commonApiService: CommonApiService,\r\n private dateConverter: DatetimeConverterService,\r\n private datePipe: DatePipe\r\n ) {}\r\n ngOnChanges() {\r\n if (this.authenticationService.currentUserValue == null) {\r\n this.IsUserLoginOrNot = false;\r\n } else {\r\n this.IsUserLoginOrNot = true;\r\n }\r\n }\r\n headerEnableDisable() {\r\n this.isJobApplyPage = false;\r\n if (this.eventUrl.match('pre-employment-form')) {\r\n this.isFluidheader = true;\r\n this.isHomeheader = true;\r\n }\r\n if (this.eventUrl.match('job-conversation')) {\r\n this.isFluidheader = true;\r\n this.isHomeheader = true;\r\n }\r\n if(this.eventUrl.match('job-apply')) {\r\n this.isFluidheader = false;\r\n this.isHomeheader = true;\r\n this.isJobApplyPage = true;\r\n }\r\n if (this.eventUrl.match('job-application')) {\r\n this.isFluidheader = false;\r\n this.isHomeheader = true;\r\n }\r\n if (this.eventUrl.match('home')) {\r\n this.isFluidheader = false;\r\n this.isHomeheader = true;\r\n }\r\n if (this.eventUrl.match('profile')) {\r\n this.isFluidheader = false;\r\n this.isHomeheader = true;\r\n }\r\n if (this.eventUrl.match('jobdetails')) {\r\n this.hideInJobdetailsPage = true;\r\n this.isHomeheader = true;\r\n }\r\n }\r\n websiteUrl: any;\r\n ngOnInit(): void {\r\n this.websiteUrl = environment.websiteUrl;\r\n if (this.authenticationService.currentUserValue == null) {\r\n this.IsUserLoginOrNot = false;\r\n } else {\r\n this.IsUserLoginOrNot = true;\r\n }\r\n\r\n this.eventUrl = this.router.url;\r\n this.headerEnableDisable();\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.eventUrl = event.url;\r\n this.isFluidheader = false;\r\n this.headerEnableDisable();\r\n }\r\n });\r\n this.notificationSevice.getNotifications();\r\n this.notificationSevice.castNotifications.subscribe((x) => {\r\n this.notifications = x;\r\n if (this.notifications != null) {\r\n this.unreadCount = this.notifications.filter(\r\n (f) => f.notiStatus == 0\r\n ).length;\r\n }\r\n });\r\n if (this.authenticationService.currentUserValue != null) {\r\n if (\r\n this.authenticationService.currentUserValue.userDetails[\r\n 'profilePhoto'\r\n ] == null\r\n ) {\r\n this.getCandidatePrimaryInfo(\r\n this.authenticationService.currentUserValue.userDetails.email\r\n );\r\n }\r\n }\r\n }\r\n\r\n logout() {\r\n this.authenticationService.logout();\r\n //this.router.navigate(['/pihire/home']);\r\n //window.location.reload();\r\n //window.location.href = environment.websiteUrl;\r\n }\r\n candidateProfileDetails: any = {};\r\n getCandidatePrimaryInfo(email) {\r\n this.commonApiService.getCandidatePrimaryInfo(email).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n this.candidateProfileDetails = data.result;\r\n this.authenticationService.currentUserValue.userDetails[\r\n 'profilePhoto'\r\n ] = data.result.profilePhoto;\r\n }\r\n }\r\n },\r\n (error) => {}\r\n );\r\n }\r\n\r\n updateReadStatus() {\r\n this.notificationSevice.updateReadStatus();\r\n }\r\n}\r\n","\r\n","import { Component, OnInit } from '@angular/core';\nimport { AuthenticationService } from '../../core/services/authentication.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\n@Component({\n selector: 'app-reset-password',\n templateUrl: './reset-password.component.html',\n styleUrls: ['./reset-password.component.scss']\n})\nexport class ResetPasswordComponent implements OnInit {\n\n\n token: string = null;\n rpForm: FormGroup;\r\n submitted = false;\n loader: boolean = false;\n requestSuccess: boolean = false;\n\n constructor(\n private route: ActivatedRoute,\n private router: Router,\n private formBuilder: FormBuilder,\n private authencationService: AuthenticationService,\n private toastr: ToastrService,\n ) { }\n\n ngOnInit() {\n this.route.queryParams.subscribe(params => {\n this.token = params['token'];\n if (this.token == null || this.token == \"\") {\n this.router.navigate(['forbidden']);\n }\n else {\n\n }\n });\n\n this.rpForm = this.formBuilder.group({\r\n password: ['', [Validators.required, Validators.minLength(6)]],\r\n confirmPassword: ['', Validators.required]\r\n }, {\r\n validator: this.MustMatch('password', 'confirmPassword')\r\n });\n }\n\n get f() { return this.rpForm.controls; }\n\n MustMatch(controlName: string, matchingControlName: string) {\r\n return (formGroup: FormGroup) => {\r\n const control = formGroup.controls[controlName];\r\n const matchingControl = formGroup.controls[matchingControlName];\r\n\r\n if (matchingControl.errors && !matchingControl.errors.mustMatch) {\r\n // return if another validator has already found an error on the matchingControl\r\n return;\r\n }\r\n\r\n // set error on matchingControl if validation fails\r\n if (control.value !== matchingControl.value) {\r\n matchingControl.setErrors({ mustMatch: true });\r\n } else {\r\n matchingControl.setErrors(null);\r\n }\r\n }\r\n }\n\n onSubmit() {\n this.submitted = true;\r\n\r\n // stop here if form is invalid\r\n if (this.rpForm.invalid) {\r\n return;\r\n }\n this.loader = true;\n var model = {\n token: this.token,\r\n password: this.rpForm.controls.password.value,\r\n confirmPassword: this.rpForm.controls.confirmPassword.value\r\n };\n\r\n this.authencationService.resetPassword(model).subscribe((resp) => {\r\n this.loader = false;\r\n if (resp != null && resp.status == true) {\r\n this.requestSuccess = true;\r\n\r\n }\r\n else {\r\n this.toastr.error(resp != null ? resp.message : \"Failed to reset password.\");\r\n }\r\n\r\n }, (error) => {\r\n this.loader = false;\r\n this.toastr.error(\"Failed to reset password.\")\r\n })\r\n }\n\n}\n","
\r\n
\r\n \"logo\"\r\n
\r\n
\r\n
\r\n
\r\n Your Password has been Reset Successfully, please click here to login.\r\n \r\n
\r\n

Reset Password

\r\n
\r\n
\r\n \r\n \r\n
\r\n Required\r\n \r\n Password must be at least 6 characters\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Required\r\n \r\n Passwords must match\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, EventEmitter, ElementRef, ViewChild } from '@angular/core';\r\nimport { CommonApiService } from '../../../shared/services';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { AuthenticationService } from '../../../core/services/authentication.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { forkJoin } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-edit-user',\r\n templateUrl: './edit-user.component.html',\r\n styleUrls: ['./edit-user.component.scss'],\r\n})\r\nexport class EditUserComponent implements OnInit {\r\n @ViewChild('profilePhoto', { read: ElementRef })\r\n profilePhoto: ElementRef;\r\n @ViewChild('scrollMe', { read: ElementRef })\r\n myScrollContainer: ElementRef;\r\n\r\n currentUser: any = {};\r\n userPrimaryDetails: any = {};\r\n candidateProfileDetails: any = {};\r\n CountriesList: any;\r\n CitiesList: any = [];\r\n validationFlag: boolean = false;\r\n CurrentCountryName: string = 'N/A';\r\n\r\n EmployeeViewModel: any = {};\r\n EmployerList: any = [];\r\n\r\n certificationsId: any = '';\r\n qualificationList: any = [];\r\n candidateQualificationList: any = [];\r\n candidatesSkillViewModel: any = [];\r\n socialProfile: any = [\r\n { profileType: 1, profileURL: '' },\r\n { profileType: 2, profileURL: '' },\r\n { profileType: 3, profileURL: '' },\r\n ];\r\n openFormOfEmployer: boolean = false;\r\n SkillSetList: any = [];\r\n certificationsList: any = [];\r\n\r\n datePickerConfig = {\r\n dateInputFormat: 'DD MMM YYYY',\r\n containerClass: 'theme-green',\r\n showWeekNumbers: false,\r\n isAnimated: true,\r\n adaptivePosition: true,\r\n width: 400,\r\n height: 300,\r\n };\r\n rolesList: any = [];\r\n candidateEmpEduCertDtls: any = {};\r\n CourseLists: any = [];\r\n qualificationsId: any = '';\r\n groupid: any = '';\r\n educationViewModel = {\r\n id: 0,\r\n candProfId: 0,\r\n qualificationId: 0,\r\n qualification: '',\r\n course: '',\r\n courseId: 0,\r\n univOrInstitution: '',\r\n yearofPassing: null,\r\n durationFrom: null,\r\n durationTo: null,\r\n grade: '',\r\n percentage: null,\r\n };\r\n public onClose: EventEmitter = new EventEmitter();\r\n constructor(\r\n private el: ElementRef,\r\n private datePipe: DatePipe,\r\n private apiService: CommonApiService,\r\n private toastr: ToastrService,\r\n private authenticationService: AuthenticationService\r\n ) { }\r\n genderList: any[];\r\n maritalStatusList: any[];\r\n ngOnInit(): void {\r\n this.getTechnology();\r\n this.getCountries();\r\n this.getQualificationList();\r\n this.getCertificationsList();\r\n this.getrolesList();\r\n this.getCourcesListList();\r\n\r\n let genderService = this.apiService.getgenderList()\r\n let maritalService = this.apiService.getMaritalStatusList();\r\n\r\n forkJoin([genderService, maritalService])\r\n .subscribe(\r\n ([gender, maritalStatus]: any) => {\r\n this.genderList = gender?.result;\r\n this.maritalStatusList = maritalStatus.result;\r\n },\r\n error => {\r\n this.toastr.error(error.error.meta.error.errorMessage);\r\n }\r\n );\r\n\r\n\r\n this.authenticationService.currentUser.subscribe((x) => {\r\n this.currentUser = x;\r\n this.userPrimaryDetails = this.currentUser.userDetails;\r\n this.getCandidatePrimaryInfo();\r\n });\r\n }\r\n\r\n getCourcesListList() {\r\n // course 189\r\n this.apiService.getRefDate(189).subscribe(\r\n (resp: any) => {\r\n if (resp.status) {\r\n this.CourseLists = resp.result;\r\n } else {\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n getCountries() {\r\n this.apiService.getCountries().subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CountriesList = data.result;\r\n if (this.CountriesList != null) {\r\n this.CountriesList.forEach((item) => {\r\n item.phonecode = '+' + item.phonecode;\r\n });\r\n if (\r\n this.candidateProfileDetails.countryID != null &&\r\n this.candidateProfileDetails.countryID != '' &&\r\n this.candidateProfileDetails.countryID != 0\r\n )\r\n var CurrentCountryName = this.CountriesList.filter(\r\n (c) => c.id == this.candidateProfileDetails.countryID\r\n )[0];\r\n\r\n if (CurrentCountryName != null) {\r\n this.CurrentCountryName = CurrentCountryName.name;\r\n } else {\r\n this.CurrentCountryName = '';\r\n }\r\n }\r\n } else {\r\n this.candidateProfileDetails.countryName = '';\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getTechnology() {\r\n this.apiService.getSkillSet().subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.SkillSetList = data.result;\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n onEmpDateChange(dt: Date) {\r\n this.EmployeeViewModel.emptFromDate = new Date(dt);\r\n }\r\n\r\n onEmpDateChange2(dt: Date) {\r\n this.EmployeeViewModel.emptToDate = new Date(dt);\r\n }\r\n isLoader: boolean = false;\r\n getCandidatePrimaryInfo() {\r\n this.isLoader = true;\r\n this.apiService\r\n .getCandidatePrimaryInfo(this.userPrimaryDetails.email)\r\n .subscribe(\r\n (data: any) => {\r\n this.isLoader = false;\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n this.candidateProfileDetails = data.result;\r\n if (this.candidateProfileDetails.noticePeriod != null &&\r\n this.candidateProfileDetails.noticePeriod != undefined && this.candidateProfileDetails.noticePeriod != '') {\r\n this.candidateProfileDetails.noticePeriod = this.candidateProfileDetails.noticePeriod + '';\r\n } else {\r\n this.candidateProfileDetails.noticePeriod = \"\";\r\n }\r\n if (this.candidateProfileDetails.phoneNumber != null && this.candidateProfileDetails.phoneNumber != ''\r\n && this.candidateProfileDetails.phoneNumber != undefined) {\r\n var cant = this.candidateProfileDetails.phoneNumber.split(' ');\r\n if (cant.length > 2) {\r\n this.candidateProfileDetails.phoneNumber = '';\r\n } else if (cant.length == 2) {\r\n this.candidateProfileDetails.phoneNumber = cant[1];\r\n this.candidateProfileDetails.pincode = cant[0];\r\n } else {\r\n this.candidateProfileDetails.phoneNumber = cant[0];\r\n this.candidateProfileDetails.pincode = '';\r\n }\r\n }\r\n if (\r\n this.candidateProfileDetails.alterPhoneNumber != null && this.candidateProfileDetails.alterPhoneNumber != '' &&\r\n this.candidateProfileDetails.alterPhoneNumber != undefined\r\n ) {\r\n var cant =\r\n this.candidateProfileDetails.alterPhoneNumber.split(' ');\r\n if (cant.length == 2) {\r\n this.candidateProfileDetails.alterPhoneNumber = cant[1];\r\n this.candidateProfileDetails.alterpincode = cant[0];\r\n } else {\r\n this.candidateProfileDetails.alterPhoneNumber = cant[0];\r\n this.candidateProfileDetails.alterpincode = '';\r\n }\r\n } else {\r\n this.candidateProfileDetails.alterPhoneNumber = '';\r\n }\r\n\r\n if (\r\n this.candidateProfileDetails.roles != null &&\r\n this.candidateProfileDetails.roles != '' &&\r\n this.candidateProfileDetails.roles != undefined\r\n ) {\r\n this.candidateProfileDetails.roles =\r\n this.candidateProfileDetails.roles.split(',');\r\n for (var a in this.candidateProfileDetails.roles) {\r\n this.candidateProfileDetails.roles[a] = parseInt(\r\n this.candidateProfileDetails.roles[a],\r\n 10\r\n ); // Explicitly include base as per Álvaro's comment\r\n }\r\n }\r\n if (\r\n this.candidateProfileDetails.dateofBirth != null &&\r\n this.candidateProfileDetails.dateofBirth != '' &&\r\n this.candidateProfileDetails.dateofBirth != undefined\r\n ) {\r\n var dateis = new Date(this.candidateProfileDetails.dateofBirth);\r\n var x =\r\n dateis.getFullYear() +\r\n ' ' +\r\n (dateis.getUTCMonth() + 1) +\r\n ' ' +\r\n dateis.getDate();\r\n this.candidateProfileDetails.dateofBirth = new Date(x);\r\n }\r\n if (\r\n this.candidateProfileDetails.candidateSocialReferenceViewModel\r\n ?.length > 0\r\n ) {\r\n this.socialProfile.map((x) =>\r\n Object.assign(\r\n x,\r\n this.candidateProfileDetails.candidateSocialReferenceViewModel.find(\r\n (y) => y.profileType == x.profileType\r\n )\r\n )\r\n );\r\n }\r\n if (\r\n this.candidateProfileDetails?.candidatesSkillViewModel?.length >\r\n 0\r\n ) {\r\n this.candidatesSkillViewModel =\r\n this.candidateProfileDetails.candidatesSkillViewModel;\r\n for (\r\n var i = 0;\r\n i < this.candidatesSkillViewModel?.length;\r\n i++\r\n ) {\r\n var expInMonths = '';\r\n var expInYears = '';\r\n expInMonths =\r\n this.candidatesSkillViewModel[i].expInMonths == null\r\n ? ''\r\n : this.candidatesSkillViewModel[i].expInMonths;\r\n expInYears =\r\n this.candidatesSkillViewModel[i].expInYears == null\r\n ? ''\r\n : this.candidatesSkillViewModel[i].expInYears;\r\n var totalExp = '';\r\n if (expInYears != '') totalExp = expInYears;\r\n if (expInMonths != '')\r\n totalExp = totalExp + '.' + expInMonths;\r\n this.candidatesSkillViewModel[i]['totalExp'] = totalExp;\r\n }\r\n }\r\n\r\n this.getCandidateEmpEduCertDtls(\r\n this.candidateProfileDetails.canPrfId\r\n );\r\n this.getCities();\r\n }\r\n }\r\n },\r\n (error) => {\r\n this.isLoader = false;\r\n }\r\n );\r\n }\r\n\r\n getCandidateEmpEduCertDtls(candId) {\r\n this.apiService.getCandidateEmpEduCertDtls(candId).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n this.candidateEmpEduCertDtls = data.result;\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n onDateChange(newDate: Date) {\r\n this.candidateProfileDetails.dateofBirth = new Date(newDate);\r\n }\r\n\r\n preview(files) {\r\n if (files.length === 0) return;\r\n\r\n var mimeType = files[0].type;\r\n if (mimeType.match(/image\\/*/) == null) {\r\n this.toastr.success('Only images are supported.');\r\n return;\r\n }\r\n\r\n var reader = new FileReader();\r\n this.candidateProfileDetails.profilePhoto = files;\r\n reader.readAsDataURL(files[0]);\r\n reader.onload = (_event) => {\r\n this.candidateProfileDetails.profilePhoto = reader.result;\r\n };\r\n }\r\n commonDetailValdidationFlag: boolean = false;\r\n validationFlagatFinalSubmit: boolean = false;\r\n onUpdatePrimaryDetails() {\r\n this.isLoader = true;\r\n this.validationFlagatFinalSubmit = false;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.ng-invalid input');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n if (\r\n (!!!this.candidateProfileDetails.alterpincode &&\r\n !!this.candidateProfileDetails.alterPhoneNumber) ||\r\n (!!this.candidateProfileDetails.alterpincode &&\r\n !!!this.candidateProfileDetails.alterPhoneNumber)\r\n ) {\r\n this.isLoader = false;\r\n this.toastr.error('Alternate Phone Number is invalid');\r\n this.commonDetailValdidationFlag = true;\r\n return false;\r\n }\r\n\r\n var CurrentCountryName1 = '';\r\n var formDT = new FormData();\r\n const invalidControl1 = this.el.nativeElement.querySelector('.ng-invalid');\r\n if (invalidControl1) {\r\n this.isLoader = false;\r\n invalidControl1.focus();\r\n }\r\n if (\r\n this.candidateProfileDetails.name == null ||\r\n this.candidateProfileDetails.name == '' || this.candidateProfileDetails.name == undefined\r\n ) {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid1');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n\r\n if (\r\n this.candidateProfileDetails.countryId != null &&\r\n this.candidateProfileDetails.countryId != '' && this.candidateProfileDetails.countryId != undefined\r\n ) {\r\n var CurrentCountryName = this.CountriesList.filter(\r\n (c) => c.id == this.candidateProfileDetails.countryId\r\n )[0];\r\n if (CurrentCountryName != null) {\r\n CurrentCountryName1 = CurrentCountryName.name;\r\n }\r\n } else {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid4');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n var CityName = '';\r\n if (\r\n this.candidateProfileDetails.cityId != null &&\r\n this.candidateProfileDetails.cityId != '' && this.candidateProfileDetails.cityId != undefined\r\n ) {\r\n var CityName_obj = this.CitiesList.filter(\r\n (c) => c.id == this.candidateProfileDetails.cityId\r\n )[0];\r\n if (CityName_obj != null) {\r\n CityName = CityName_obj.name;\r\n }\r\n } else {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid5');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n\r\n if (\r\n this.candidateProfileDetails.dateofBirth == null ||\r\n this.candidateProfileDetails.dateofBirth == '' || this.candidateProfileDetails.dateofBirth == undefined\r\n ) {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid6');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n if (\r\n this.candidateProfileDetails.gender == null ||\r\n this.candidateProfileDetails.gender == '' || this.candidateProfileDetails.gender == undefined\r\n ) {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid7');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n if (\r\n this.candidateProfileDetails.maritalStatus == null ||\r\n this.candidateProfileDetails.maritalStatus == '' || this.candidateProfileDetails.maritalStatus == undefined\r\n ) {\r\n this.isLoader = false;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid8');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n this.commonDetailValdidationFlag = true;\r\n return false;\r\n }\r\n\r\n if (\r\n this.candidateProfileDetails.pincode == null ||\r\n this.candidateProfileDetails.pincode == '' || this.candidateProfileDetails.pincode == undefined\r\n ) {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid9');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n if (\r\n this.candidateProfileDetails.phoneNumber == null ||\r\n this.candidateProfileDetails.phoneNumber == '' || this.candidateProfileDetails.phoneNumber == undefined\r\n ) {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid9');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n if (\r\n this.candidateProfileDetails.alterpincode == null ||\r\n this.candidateProfileDetails.alterpincode == '' || this.candidateProfileDetails.alterpincode == undefined\r\n ) {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid10');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n if (\r\n this.candidateProfileDetails.alterPhoneNumber == null ||\r\n this.candidateProfileDetails.alterPhoneNumber == '' || this.candidateProfileDetails.alterPhoneNumber == undefined\r\n ) {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid10');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n if (\r\n this.candidateProfileDetails.alterPhoneNumber ==\r\n this.candidateProfileDetails.phoneNumber\r\n ) {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid9');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n\r\n if (\r\n this.candidateProfileDetails.phoneNumber != null &&\r\n this.candidateProfileDetails.phoneNumber != '' && this.candidateProfileDetails.phoneNumber != undefined\r\n ) {\r\n if (this.candidateProfileDetails.phoneNumber.length < 8) {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid9');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n }\r\n if (\r\n this.candidateProfileDetails.alterPhoneNumber != null &&\r\n this.candidateProfileDetails.alterPhoneNumber != '' && this.candidateProfileDetails.alterPhoneNumber != undefined\r\n ) {\r\n if (this.candidateProfileDetails.alterPhoneNumber.length < 8) {\r\n this.isLoader = false;\r\n this.commonDetailValdidationFlag = true;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid10');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n }\r\n if (\r\n this.candidateProfileDetails.pincode != null &&\r\n this.candidateProfileDetails.pincode != '' && this.candidateProfileDetails.pincode != undefined\r\n ) {\r\n this.candidateProfileDetails.pincode =\r\n this.candidateProfileDetails.pincode.toString();\r\n }\r\n var contact =\r\n this.candidateProfileDetails.pincode +\r\n ' ' +\r\n this.candidateProfileDetails.phoneNumber;\r\n if (this.candidateProfileDetails.alterpincode == undefined) {\r\n this.candidateProfileDetails.alterpincode = '';\r\n }\r\n\r\n if (\r\n this.candidateProfileDetails.alterpincode != null &&\r\n this.candidateProfileDetails.alterpincode != '' && this.candidateProfileDetails.alterpincode == undefined\r\n ) {\r\n this.candidateProfileDetails.alterpincode =\r\n this.candidateProfileDetails.alterpincode.toString();\r\n }\r\n var altercontact =\r\n this.candidateProfileDetails.alterpincode +\r\n ' ' +\r\n this.candidateProfileDetails.alterPhoneNumber;\r\n\r\n if (\r\n this.candidateProfileDetails.noticePeriod == null ||\r\n this.candidateProfileDetails.noticePeriod == '' || this.candidateProfileDetails.noticePeriod == undefined\r\n ) {\r\n this.commonDetailValdidationFlag = true;\r\n this.isLoader = false;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid11');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false;\r\n }\r\n if (\r\n this.candidateProfileDetails.roles == null ||\r\n this.candidateProfileDetails.roles == '' || this.candidateProfileDetails.roles == undefined\r\n ) {\r\n this.isLoader = false;\r\n const invalidControl =\r\n this.el.nativeElement.querySelector('.custome-invalid12');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n this.commonDetailValdidationFlag = true;\r\n return false;\r\n }\r\n formDT.append('phoneNumber', contact);\r\n formDT.append('alterPhoneNumber', altercontact);\r\n formDT.append('countryId', this.candidateProfileDetails.countryId);\r\n formDT.append('cityId', this.candidateProfileDetails.cityId);\r\n formDT.append('cityName', CityName);\r\n formDT.append('countryName', CurrentCountryName1);\r\n formDT.append('canPrfId', this.candidateProfileDetails.canPrfId);\r\n formDT.append('emailId', this.candidateProfileDetails.emailId);\r\n formDT.append('name', this.candidateProfileDetails.name);\r\n formDT.append('gender', this.candidateProfileDetails.gender);\r\n var dob = this.datePipe.transform(\r\n this.candidateProfileDetails.dateofBirth,\r\n 'yyyy-MM-dd'\r\n );\r\n formDT.append('dateofBirth', dob);\r\n formDT.append('maritalStatus', this.candidateProfileDetails.maritalStatus);\r\n formDT.append('noticePeriod', this.candidateProfileDetails.noticePeriod);\r\n formDT.append('nationality', this.candidateProfileDetails.nationality);\r\n formDT.append('roles', this.candidateProfileDetails.roles);\r\n if (this.candidatesSkillViewModel?.length != 0) {\r\n var list = this.candidatesSkillViewModel.filter(\r\n (s) =>\r\n (s.technologyId == null ||\r\n s.technologyId == '' ||\r\n s.totalExp == 0 ||\r\n s.totalExp == '' ||\r\n s.selfRating == 0 ||\r\n s.selfRating == '') &&\r\n s.id == 0\r\n );\r\n if (list.length > 0) {\r\n this.toastr.error('Please enter all skills details');\r\n this.isLoader = false;\r\n return false;\r\n }\r\n\r\n this.candidatesSkillViewModel.forEach((skil) => {\r\n var totalExp = [];\r\n if (skil.totalExp != null && skil.totalExp != '') {\r\n totalExp = String(skil.totalExp).split('.');\r\n if (totalExp.length == 1) {\r\n skil.expInYears = parseInt(totalExp[0]);\r\n skil.expInMonths = 0;\r\n }\r\n if (totalExp.length == 2) {\r\n skil.expInYears = parseInt(totalExp[0]);\r\n skil.expInMonths = parseInt(totalExp[1]);\r\n }\r\n }\r\n var expInYears = parseInt(skil.expInYears);\r\n var expInMonths = parseInt(skil.expInMonths);\r\n if (expInYears != null && expInYears > 0) {\r\n if (skil.expInMonths == null || skil.expInMonths == '') {\r\n skil.expInMonths = '0';\r\n }\r\n }\r\n if (expInYears == 0 && expInMonths == 0) {\r\n skil.selfRating = 0;\r\n }\r\n if (skil.expInYears == null || skil.expInYears == '') {\r\n if (skil.selfRating == null || skil.selfRating == '') {\r\n skil.selfRating = 0;\r\n }\r\n }\r\n });\r\n }\r\n if (this.candidatesSkillViewModel.length > 0) {\r\n var list = this.candidatesSkillViewModel.filter(\r\n (s) => s.technologyId == null || s.technologyId == ''\r\n );\r\n if (list.length > 0) {\r\n this.isLoader = false;\r\n this.toastr.error('Please select all technology at skills');\r\n return false;\r\n }\r\n }\r\n formDT.append(\r\n 'CandidatesSkillViewModel',\r\n JSON.stringify(this.candidatesSkillViewModel)\r\n );\r\n var listOfsocialProfile = [];\r\n for (var i = 0; i < this.socialProfile.length; i++) {\r\n if (\r\n this.socialProfile[i].profileURL.trim() != null &&\r\n this.socialProfile[i].profileURL.trim() != ''\r\n ) {\r\n listOfsocialProfile.push(this.socialProfile[i]);\r\n }\r\n }\r\n if (listOfsocialProfile.length > 0) {\r\n formDT.append(\r\n 'CandidateSocialReferenceViewModel',\r\n JSON.stringify(listOfsocialProfile)\r\n );\r\n } else {\r\n formDT.append('CandidateSocialReferenceViewModel', null);\r\n }\r\n const files = (this.profilePhoto.nativeElement as HTMLInputElement).files;\r\n for (let i = 0; i < files.length; i++) {\r\n formDT.append(\r\n 'profilePhoto',\r\n files[i],\r\n files[i].name.replace(/\\s+/g, '').trim()\r\n );\r\n }\r\n\r\n this.apiService.UpdatePrimaryDetails(formDT).subscribe(\r\n (data: any) => {\r\n this.isLoader = false;\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.commonDetailValdidationFlag = false;\r\n var localUser = JSON.parse(localStorage.getItem('piHireCpUser'));\r\n if (localUser != null) {\r\n localUser.userDetails.firstName =\r\n this.candidateProfileDetails.name;\r\n localStorage.setItem('piHireCpUser', JSON.stringify(localUser));\r\n }\r\n this.toastr.success('Updated successfully');\r\n setTimeout(function () {\r\n window.location.reload();\r\n }, 500);\r\n }\r\n }\r\n },\r\n (error) => {\r\n this.isLoader = false;\r\n this.toastr.error(error.error.meta.error.errorMessage);\r\n }\r\n );\r\n }\r\n\r\n getCitiesOnChange() {\r\n this.CitiesList = [];\r\n this.getCities();\r\n this.candidateProfileDetails.cityId = '';\r\n }\r\n\r\n getCities() {\r\n if (\r\n this.candidateProfileDetails.countryId != null &&\r\n this.candidateProfileDetails.countryId != '' && this.candidateProfileDetails.countryId != undefined\r\n ) {\r\n this.apiService\r\n .getCities(this.candidateProfileDetails.countryId)\r\n .subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CitiesList = data.result;\r\n this.CitiesList = this.CitiesList.sort((a, b) =>\r\n a.name > b.name ? 1 : -1\r\n );\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n } else {\r\n this.CitiesList = [];\r\n }\r\n }\r\n\r\n getCitiesEmp(obj: any) {\r\n var CitiesList = [];\r\n if (obj.countryId != null) {\r\n this.apiService.getCities(obj.countryId).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n obj.CitiesList = data.result;\r\n }\r\n } else {\r\n this.toastr.error(data.meta.error.errorMessage);\r\n }\r\n },\r\n (error) => { }\r\n );\r\n } else {\r\n obj.CitiesList = [];\r\n }\r\n }\r\n\r\n getQualificationList() {\r\n this.apiService.getRefMasterData(92).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.qualificationList = data.result;\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getCertificationsList() {\r\n this.apiService.getRefMasterData(190).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.certificationsList = data.result;\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getrolesList() {\r\n this.apiService.getRefMasterData(191).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.rolesList = data.result;\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getCitiesEmployer(emp: any) {\r\n if (emp.countryId != null && emp.countryId != '') {\r\n this.apiService.getCities(emp.countryId).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n emp.CitiesList = data.result;\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n } else {\r\n this.CitiesList = [];\r\n }\r\n }\r\n\r\n addValue(addedVal: any) {\r\n //if (addedVal != null && addedVal != \"\")\r\n // addedVal = \"+\" + addedVal;\r\n //else {\r\n // addedVal = \"\";\r\n //}\r\n }\r\n\r\n addNewEmployer() {\r\n this.EmployeeViewModel = {\r\n id: 0,\r\n currentStatus: false,\r\n candProfId: this.candidateProfileDetails.canPrfId,\r\n employerName: '',\r\n employId: '',\r\n emptFromDate: null,\r\n emptToDate: null,\r\n address: '',\r\n phoneNumber: '',\r\n cityId: null,\r\n countryId: null,\r\n designationId: null,\r\n designation: '',\r\n cpname: '',\r\n cpdesignation: '',\r\n cpnumber: '',\r\n cpemailId: '',\r\n currentWorkingFlag: null,\r\n officialEmailId: '',\r\n hrcontactNo: '',\r\n hremailId: '',\r\n CitiesList: [],\r\n };\r\n this.openFormOfEmployer = true;\r\n }\r\n\r\n saveNewEmployer() {\r\n if (this.candidateEmpEduCertDtls.candidateEmpMentModel != null) {\r\n this.candidateEmpEduCertDtls.candidateEmpMentModel.push(\r\n this.EmployeeViewModel\r\n );\r\n this.openFormOfEmployer = false;\r\n } else {\r\n this.candidateEmpEduCertDtls.candidateEmpMentModel = [];\r\n this.candidateEmpEduCertDtls.candidateEmpMentModel.push(\r\n this.EmployeeViewModel\r\n );\r\n this.openFormOfEmployer = false;\r\n }\r\n }\r\n\r\n cancelEmployer() {\r\n this.addNewEmployer();\r\n this.openFormOfEmployer = false;\r\n }\r\n QalificatvalidationFlag: boolean = false;\r\n addQalification() {\r\n if (this.qualificationsId == null || this.qualificationsId == '') {\r\n this.QalificatvalidationFlag = true;\r\n return false;\r\n }\r\n if (this.groupid == null || this.groupid == '') {\r\n this.QalificatvalidationFlag = true;\r\n return false;\r\n }\r\n if (this.candidateEmpEduCertDtls.candidateEduViewModel != null) {\r\n if (this.candidateEmpEduCertDtls.candidateEduViewModel.length > 0) {\r\n var list = this.candidateEmpEduCertDtls.candidateEduViewModel.filter(\r\n (q) => q.qualificationId == this.qualificationsId && q.id != this.educationId\r\n );\r\n if (list.length > 0) {\r\n this.qualificationsId = '';\r\n this.toastr.error('Already existing this qualification name.');\r\n return false;\r\n }\r\n }\r\n }\r\n var qualificationname = this.qualificationList.filter(\r\n (q) => q.id == this.qualificationsId\r\n )[0].rmvalue;\r\n var coursename = this.CourseLists.filter((q) => q.id == this.groupid)[0]\r\n .rmvalue;\r\n this.educationViewModel.qualificationId = this.qualificationsId;\r\n this.educationViewModel.qualification = qualificationname;\r\n this.educationViewModel.candProfId = this.candidateProfileDetails.canPrfId;\r\n this.educationViewModel.course = coursename;\r\n this.educationViewModel.courseId = this.groupid;\r\n this.validationFlag = true;\r\n this.apiService.updateCandidateEduBGV(this.educationViewModel).subscribe(\r\n (data: any) => {\r\n this.educationId = 0;\r\n this.QalificatvalidationFlag = false;\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.toastr.success('Updated successfully');\r\n\r\n this.getCandidateEmpEduCertDtls(\r\n this.candidateProfileDetails.canPrfId\r\n );\r\n this.educationViewModel = {\r\n id: 0,\r\n candProfId: this.candidateProfileDetails.canPrfId,\r\n qualificationId: 0,\r\n qualification: '',\r\n courseId: 0,\r\n course: '',\r\n univOrInstitution: '',\r\n yearofPassing: null,\r\n durationFrom: null,\r\n durationTo: null,\r\n grade: '',\r\n percentage: null,\r\n };\r\n this.qualificationsId = '';\r\n this.groupid = '';\r\n }\r\n } else {\r\n this.toastr.error(data.meta.error.errorMessage);\r\n }\r\n },\r\n (error) => {\r\n this.toastr.error(error.error.meta.error.errorMessage);\r\n }\r\n );\r\n }\r\n\r\n addNewSkill() {\r\n if (this.candidatesSkillViewModel.length > 0) {\r\n var list = this.candidatesSkillViewModel.filter(\r\n (s) =>\r\n (s.technologyId == null ||\r\n s.technologyId == '' ||\r\n s.totalExp == 0 ||\r\n s.totalExp == '' ||\r\n s.selfRating == 0 ||\r\n s.selfRating == '') &&\r\n s.id == 0\r\n );\r\n if (list.length > 0) {\r\n this.toastr.error('Please enter all skills details');\r\n return false;\r\n }\r\n }\r\n var obj = {\r\n id: 0,\r\n technologyId: '',\r\n expInYears: 0,\r\n expInMonths: 0,\r\n totalExp: '',\r\n selfRating: 0,\r\n };\r\n this.candidatesSkillViewModel.push(obj);\r\n setTimeout(() => {\r\n this.myScrollContainer.nativeElement.scrollTop =\r\n this.myScrollContainer.nativeElement.scrollHeight;\r\n }, 500);\r\n }\r\n monthsValidtion(event) {\r\n if (event.target.value != null && event.target.value != '') {\r\n // this.value < 0\r\n // if(50 > parseInt(event.target.value)){\r\n\r\n // }\r\n if (50 > parseInt(event.target.value)) {\r\n var mon = event.target.value.split('.');\r\n if (mon.length == 2) {\r\n if (mon[1] != null) {\r\n if (parseInt(mon[1]) > 11) {\r\n event.target.value = mon[0] + '.' + '11';\r\n }\r\n }\r\n }\r\n } else {\r\n event.target.value = 50;\r\n }\r\n }\r\n return event.target.value;\r\n }\r\n removeSkill(ind: number) {\r\n this.candidatesSkillViewModel.splice(ind, 1);\r\n }\r\n\r\n saveBGVDetails(EmployeerData: any) {\r\n this.validationFlag = true;\r\n\r\n const invalidControl = this.el.nativeElement.querySelector(\r\n '.ng-invalid > input'\r\n );\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n if (\r\n EmployeerData.employerName == null ||\r\n EmployeerData.employerName == ''\r\n ) {\r\n return false;\r\n }\r\n //if (EmployeerData.address == null || EmployeerData.address == \"\") {\r\n // return false;\r\n //}\r\n if (EmployeerData.countryId == null || EmployeerData.countryId == '') {\r\n return false;\r\n }\r\n if (EmployeerData.cityId == null || EmployeerData.cityId == '') {\r\n return false;\r\n }\r\n //if (EmployeerData.employId == null || EmployeerData.employId == \"\") {\r\n // return false;\r\n //}\r\n if (\r\n EmployeerData.currentWorkingFlag === null ||\r\n EmployeerData.currentWorkingFlag === ''\r\n ) {\r\n return false;\r\n }\r\n if (\r\n EmployeerData.emptFromDate == null ||\r\n EmployeerData.emptFromDate == ''\r\n ) {\r\n return false;\r\n }\r\n if (EmployeerData.emptToDate == null || EmployeerData.emptToDate == '') {\r\n return false;\r\n }\r\n\r\n this.apiService.updateBGVEmployeerData(EmployeerData).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.validationFlag = false;\r\n this.openFormOfEmployer = false;\r\n this.toastr.success('Saved successfully');\r\n this.getCandidateEmpEduCertDtls(\r\n this.candidateProfileDetails.canPrfId\r\n );\r\n this.EmployeeViewModel = null;\r\n this.EmployeeViewModel = {\r\n id: 0,\r\n candProfId: this.candidateProfileDetails.canPrfId,\r\n employerName: '',\r\n employId: '',\r\n emptFromDate: null,\r\n emptToDate: null,\r\n address: '',\r\n phoneNumber: '',\r\n cityId: null,\r\n countryId: null,\r\n designationId: null,\r\n designation: '',\r\n cpname: '',\r\n cpdesignation: '',\r\n cpnumber: '',\r\n cpemailId: '',\r\n currentWorkingFlag: null,\r\n officialEmailId: '',\r\n hrcontactNo: '',\r\n hremailId: '',\r\n CitiesList: [],\r\n };\r\n }\r\n } else {\r\n this.toastr.error(data.meta.error.errorMessage);\r\n }\r\n },\r\n (error) => {\r\n this.toastr.error(error.error.meta.error.errorMessage);\r\n }\r\n );\r\n }\r\n\r\n editEmpDetails(emp: any) {\r\n this.openFormOfEmployer = true;\r\n this.EmployeeViewModel = emp;\r\n (this.EmployeeViewModel['candProfId'] =\r\n this.candidateProfileDetails.canPrfId),\r\n this.getCitiesEmp(this.EmployeeViewModel);\r\n if (\r\n this.EmployeeViewModel.emptFromDate != null ||\r\n this.EmployeeViewModel.emptFromDate != undefined\r\n ) {\r\n var dateis = new Date(this.EmployeeViewModel.emptFromDate);\r\n var x =\r\n dateis.getFullYear() +\r\n ' ' +\r\n (dateis.getUTCMonth() + 1) +\r\n ' ' +\r\n dateis.getDate();\r\n this.EmployeeViewModel.emptFromDate = new Date(x);\r\n }\r\n if (\r\n this.EmployeeViewModel.emptToDate != null ||\r\n this.EmployeeViewModel.emptToDate != undefined\r\n ) {\r\n var dateis = new Date(this.EmployeeViewModel.emptToDate);\r\n var x =\r\n dateis.getFullYear() +\r\n ' ' +\r\n (dateis.getUTCMonth() + 1) +\r\n ' ' +\r\n dateis.getDate();\r\n this.EmployeeViewModel.emptToDate = new Date(x);\r\n }\r\n }\r\n\r\n educationId: number = 0;\r\n editQualificationDetails(qal: any) {\r\n this.qualificationsId = qal.qualificationId;\r\n this.groupid = qal.courseId;\r\n this.educationViewModel = qal;\r\n this.educationId = qal.id;\r\n }\r\n\r\n cancelQalification() {\r\n this.educationId = 0;\r\n this.qualificationsId = undefined;\r\n this.groupid = undefined;\r\n }\r\n\r\n CertificatevalidationFlag: boolean = false;\r\n addCertfication() {\r\n if (this.certificationsId == null || this.certificationsId == '') {\r\n this.CertificatevalidationFlag = true;\r\n return false;\r\n }\r\n if (\r\n this.candidateEmpEduCertDtls.candidateCertificationViewModel?.length > 0\r\n ) {\r\n var list =\r\n this.candidateEmpEduCertDtls.candidateCertificationViewModel.filter(\r\n (c) => c.certificationId == this.certificationsId\r\n );\r\n if (list.length > 0) {\r\n this.toastr.error('Already existing this certificate name');\r\n return false;\r\n }\r\n }\r\n\r\n var obj = {\r\n certificationID: this.certificationsId,\r\n candProfId: this.candidateProfileDetails.canPrfId,\r\n };\r\n this.apiService.saveCertificationData(obj).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.toastr.success('Saved successfully');\r\n this.getCandidateEmpEduCertDtls(\r\n this.candidateProfileDetails.canPrfId\r\n );\r\n }\r\n } else {\r\n this.toastr.error(data.meta.error.errorMessage);\r\n }\r\n },\r\n (error) => {\r\n this.toastr.error(error.error.meta.error.errorMessage);\r\n }\r\n );\r\n }\r\n selectSkills(skillId: number, indexis: number, skill: any) {\r\n if (skillId != null) {\r\n var technologyId = this.candidatesSkillViewModel.filter(\r\n (s) => s.technologyId == skillId\r\n );\r\n var index = this.candidatesSkillViewModel.findIndex(\r\n (x) => x.technologyId == skillId\r\n );\r\n if (index != -1) {\r\n if (index != indexis) {\r\n this.toastr.error('Already existing this skill.');\r\n skill.technologyId = '';\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","
\n \n
\n
\n
\n
Edit your profile
\n
\n\n
\n
\n
About
\n

Tell us about yourself.

\n
\n
\n
\n
\n \"\"\n\n \"\"\n\n \n
\n \n
\n
\n
\n
\n
\n\n
\n
\n
\n\n
\n
\n \n \n
\n Required\n
\n
\n
\n\n
\n
\n\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n \n \"{{ {{ c.name }}\n \n \n
\n Required\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \"{{ {{ c.name }}\n \n \n
\n Required\n
\n
\n
\n
\n
\n
\n
\n \n \n {{ c.name }}\n \n
\n Required\n
\n
\n\n
\n\n
\n
\n
\n
\n \n \n \n
\n Required\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n \n
\n \n \n
\n
\n Required\n
\n
\n
\n \n
\n \n \n
\n
\n Required\n
\n
\n
\n\n
\n
\n
\n
\n\n
\n
\n \n
\n
\n \n \n \"{{ {{ c.phonecode }}\n \n \n
\n
\n \n
\n
\n
\n Required\n
\n
\n Enter valid number\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n \n \"{{ {{ c.phonecode }}\n \n \n
\n
\n \n
\n Enter valid number\n
\n
\n
\n
\n Required\n
\n
\n \n Duplicate Number\n \n
\n
\n
\n
\n
\n\n
\n
\n \n \n\n
\n Required\n
\n
\n
\n
\n
\n\n
\n
\n \n \n \n {{ c.rmvalue }}\n \n
\n Required\n
\n
\n\n
\n
\n\n
\n
\n
\n
\n
Employment Details
\n

Tell us about yourself.

\n
\n
\n
\n
\n
\n \n
\n \n \n
\n
\n Required\n
\n\n \n
\n
\n
\n
\n \n \n
\n Required\n
\n
\n
\n
\n\n
\n
\n
\n
\n \n \n \n \"{{ {{ c.name }}\n \n \n
\n
\n Required\n
\n
\n
\n
\n \n \n\n \n {{ c.name }}\n \n \n
\n
\n Required\n
\n
\n
\n
\n
\n\n
\n\n
\n
\n
\n \n \n
\n Required\n
\n
\n
\n \n \n
\n Required\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n\n
\n
\n \n
\n
\n\n
0\" style=\"margin-top:5px\">\n
\n {{empr.employerName}} \n
\n
\n\n
\n\n
\n
\n\n
\n
\n
\n
\n
Qualifications
\n

What schools have you studied at?

\n
\n
\n \n \n\n {{ qal.rmvalue }}\n \n
\n Required\n
\n
\n
\n \n \n\n {{ qal.rmvalue }}\n \n
\n Required\n
\n
\n
\n
\n
\n
\n \n \n\n
\n
\n
\n
\n
0\">\n
\n {{qal.qualification}} \n
\n
\n
\n\n
\n\n
\n
\n
\n
\n
Professional Certifications
\n

Sharing more details about yourself will help you stand out more.

\n
\n
\n \n \n\n {{ cet.rmvalue }}\n \n
\n Required\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
0\">\n
\n {{cert.certificationName}}\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
Skills
\n
Total Experience
\n
Self Rating
\n
\n
\n
\n \n\n \n {{ s.title }}\n \n \n\n
\n
\n
\n \n \n
\n \n
\n
\n \n \n \n \n \n \n \n \n
\n
\n \n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
Social Profiles
\n

Where can people find you online?

\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n\n
\n
\n\n
\n
\n
\n \n \n\n
\n
\n
\n
\n
","/* (ignored) */","/* (ignored) */","/* (ignored) */","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-why-choose',\n templateUrl: './why-choose.component.html',\n styleUrls: ['./why-choose.component.scss']\n})\nexport class WhyChooseComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","
\r\n
\r\n\r\n
\r\n

Why choose ParamInfo?

\r\n

\r\n ParamInfo is a Global Leader in providing Consulting, IT Services, IT\r\n Solutions and Outsourcing. We are one of the fastest growing IT\r\n service providers with our major operations in the Middle East, India\r\n and USA.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \"card We hire the best\r\n Talents\r\n
\r\n

\r\n Explain your skill, role & talent with us by this recommended\r\n jobs.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"card Featured Employers\r\n
\r\n

\r\n Explain your skill, role & talent with us by this recommended\r\n jobs.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"card Tips to elevate your\r\n Career\r\n
\r\n

\r\n Explain your skill, role & talent with us by this recommended\r\n jobs.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"card Global Exposure\r\n
\r\n

\r\n Explain your skill, role & talent with us by this recommended\r\n jobs.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \"A\r\n
\r\n
\r\n
\r\n","import {\r\n Component,\r\n OnInit,\r\n ElementRef,\r\n ViewChild,\r\n OnDestroy,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\r\nimport { CommonApiService } from '../../shared/services/common-api.service';\r\nimport { SliderConfigService } from '../../shared/services/slider-config.service';\r\nimport { filter } from 'rxjs/operators';\r\nimport { Subscription } from 'rxjs';\r\nimport { AuthenticationService } from '../../core/services/authentication.service';\r\nimport { User, userDetails } from '../../core/models/user';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\nimport { EditProfileDetailsComponent } from '../profile/edit-profile-details/edit-profile-details.component';\r\nimport { DocumentSubmissionComponent } from './document-submission/document-submission.component';\r\nimport { SalaryConfirmationComponent } from './salary-confirmation/salary-confirmation.component';\r\nimport { BVGVerificationObject } from '../Background-Verification/bgverification';\r\nimport {\r\n animate,\r\n state,\r\n style,\r\n transition,\r\n trigger,\r\n} from '@angular/animations';\r\nimport { NotificationsService } from '../../shared/services/notifications.service';\r\nimport { ChatCommunicationService } from '../../shared/services/chat-communication.service';\r\n\r\n@Component({\r\n selector: 'app-profile',\r\n templateUrl: './profile.component.html',\r\n styleUrls: ['./profile.component.scss'],\r\n animations: [\r\n trigger('slide_in_out', [\r\n state(\r\n 'slide_in',\r\n style({\r\n width: '45%',\r\n right: '0',\r\n // css styles when the element is in slide_in\r\n })\r\n ),\r\n state(\r\n 'slide_out',\r\n style({\r\n width: '45%',\r\n right: '-45%',\r\n // css styles when the element is in slide_out\r\n })\r\n ),\r\n // animation effect when transitioning from one state to another\r\n transition('slide_in <=> slide_out', animate(500)),\r\n ]),\r\n ],\r\n})\r\nexport class ProfileComponent implements OnInit, OnDestroy {\r\n @ViewChild('profilePhoto', { read: ElementRef })\r\n profilePhoto: ElementRef;\r\n currentUser: User;\r\n userPrimaryDetails: userDetails;\r\n candidateProfileDetails: any = {};\r\n bsModalRef: BsModalRef;\r\n pageLoaded: boolean = false;\r\n CountriesList: any = [];\r\n jobActiveApplication: any = [];\r\n jobNewApplications: any = [];\r\n jobArchivedApplication: any;\r\n slideConfig: any;\r\n CounselorsContactDetails: any = [];\r\n applicationType: any;\r\n loader: boolean = false;\r\n isActiveApplication = 'active';\r\n isNewJobApplication: boolean = true;\r\n existingAppliedJobsList = [];\r\n eventUrl: any;\r\n slider_state: string = 'slide_out';\r\n isMobileShow: boolean = false;\r\n castUnreadCount_subscribe: Subscription;\r\n isPageLive: boolean;\r\n similarJobs: any = [];\r\n videProfileLink: any = {};\r\n UnreadChatList: any;\r\n CurrentCountryName: string = 'N/A';\r\n constructor(\r\n private apiService: CommonApiService,\r\n private router: Router,\r\n private sliderConfigService: SliderConfigService,\r\n private authenticationService: AuthenticationService,\r\n private modalService: BsModalService,\r\n public bvgVerificationObject: BVGVerificationObject,\r\n private activatedRoute: ActivatedRoute,\r\n private notificationService: NotificationsService,\r\n private chatService: ChatCommunicationService\r\n ) {\r\n this.slideConfig = this.sliderConfigService.sliderConfig({\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n infinite: false,\r\n autoplay: true,\r\n dots: true,\r\n });\r\n this.authenticationService.currentUser.subscribe(\r\n (x) => (this.currentUser = x)\r\n );\r\n }\r\n\r\n checkUserStatus(isPageLive: boolean) {\r\n\r\n\r\n var resp = this.notificationService.getUserCurrentStatus();\r\n for (var i = 0; i < this.CounselorsContactDetails.length; i++) {\r\n let ob = resp.data.find(\r\n (da) => this.CounselorsContactDetails[i].emailId == da.emailId\r\n );\r\n if (ob) {\r\n this.CounselorsContactDetails[i].onlineStatus = ob.status ? 1 : 0;\r\n } else {\r\n this.CounselorsContactDetails[i].onlineStatus = 0;\r\n }\r\n }\r\n if (isPageLive)\r\n var rsp = setTimeout(() => {\r\n this.checkUserStatus(this.isPageLive);\r\n }, resp.timeInterval);\r\n }\r\n ngOnInit() {\r\n this.eventUrl = this.router.url;\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.isActiveApplication = 'active';\r\n this.eventUrl = event.url;\r\n if (this.eventUrl.match('profile-archived-applications')) {\r\n this.isActiveApplication = 'archived';\r\n }\r\n if (this.eventUrl.match('profile-active-newjobs')) {\r\n this.isActiveApplication = 'newjobs';\r\n }\r\n }\r\n });\r\n if (this.eventUrl.match('profile-archived-applications')) {\r\n this.isActiveApplication = 'archived';\r\n }\r\n if (this.eventUrl.match('profile-active-newjobs')) {\r\n this.isActiveApplication = 'newjobs';\r\n }\r\n this.authenticationService.currentUser.subscribe((x) => {\r\n this.currentUser = x;\r\n if (this.currentUser != null) {\r\n this.userPrimaryDetails = this.currentUser.userDetails;\r\n this.getCandidatePrimaryInfo();\r\n }\r\n });\r\n\r\n this.getTypesOfMasterData();\r\n this.getCountries();\r\n\r\n this.isPageLive = true;\r\n this.checkUserStatus(this.isPageLive);\r\n\r\n this.castUnreadCount_subscribe =\r\n this.chatService.castUnreadCount.subscribe((resp) => {\r\n if (resp == null) {\r\n resp = [];\r\n }\r\n this.UnreadChatList = resp;\r\n this.process_chatUnreadCount();\r\n }, (error) => {\r\n\r\n });\r\n }\r\n ngOnDestroy() {\r\n this.isPageLive = false;\r\n if (this.castUnreadCount_subscribe)\r\n this.castUnreadCount_subscribe.unsubscribe();\r\n }\r\n\r\n documetSubumissionPopup(listOfDoc: any, doctype: number) {\r\n this.bsModalRef = this.modalService.show(DocumentSubmissionComponent, {\r\n initialState: { pendingDoc: listOfDoc, docType: doctype },\r\n ignoreBackdropClick: true,\r\n class: 'modal-xxl modal-dialog-centered pihire-modal',\r\n });\r\n this.bsModalRef.content.closeBtnName = 'Close';\r\n this.bsModalRef.onHidden.subscribe((res) => {\r\n this.bsModalRef.hide();\r\n this.getCandidateActiveApplications();\r\n });\r\n }\r\n navigateJobDetailsapplied(joblist: any, applied: string) {\r\n this.router.navigate(['app/job-apply'], {\r\n queryParams: { jobid: joblist.jobId },\r\n });\r\n }\r\n viewJobDetails: any = {};\r\n viewJobDescription(viewJobDetails: any) {\r\n this.slider_state =\r\n this.slider_state === 'slide_out' ? 'slide_in' : 'slide_out';\r\n if (viewJobDetails != null) {\r\n this.viewJobDetails = viewJobDetails;\r\n }\r\n }\r\n\r\n navigateJobDetails(joblist: any) {\r\n if (joblist.candProfStatusCode == 'CCV') {\r\n this.router.navigate(['app/job-apply'], {\r\n queryParams: { jobid: joblist.jobId },\r\n });\r\n } else {\r\n // this.router.navigate(['app/jobdetails'], { queryParams: { jobid: joblist.jobId } });\r\n }\r\n }\r\n\r\n getCandidatePrimaryInfo() {\r\n this.apiService\r\n .getCandidatePrimaryInfo(this.userPrimaryDetails.email)\r\n .subscribe(\r\n (data: any) => {\r\n this.pageLoaded = true;\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n this.candidateProfileDetails = data.result;\r\n if (this.isActiveApplication == \"active\") {\r\n this.getCandidateActiveApplications();\r\n } else if (this.isActiveApplication == \"archived\") {\r\n this.getCandidateArchivedApplications();\r\n }\r\n else if (this.isActiveApplication == \"newjobs\") {\r\n this.getCandidateNewJobApplications();\r\n }\r\n this.getRecruiterDetails();\r\n this.getSimilarJobsList();\r\n }\r\n }\r\n },\r\n (error) => {\r\n this.pageLoaded = true;\r\n }\r\n );\r\n this.pageLoaded = true;\r\n }\r\n\r\n viewshowMobile(viewJobDetails: any) {\r\n this.isMobileShow = !this.isMobileShow;\r\n if (viewJobDetails != null) {\r\n this.viewJobDetails = viewJobDetails;\r\n }\r\n }\r\n\r\n update() {\r\n this.bsModalRef = this.modalService.show(EditProfileDetailsComponent, {\r\n initialState: {\r\n userPrimaryDetails: JSON.stringify(this.candidateProfileDetails),\r\n CountriesList: this.CountriesList,\r\n },\r\n ignoreBackdropClick: true,\r\n class: 'modal-xxl modal-dialog-centered',\r\n });\r\n this.bsModalRef.content.closeBtnName = 'Close';\r\n this.bsModalRef.onHidden.subscribe((res) => {\r\n this.bsModalRef.hide();\r\n this.getCandidatePrimaryInfo();\r\n });\r\n }\r\n\r\n getCountries() {\r\n this.apiService.getCountries().subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CountriesList = data.result;\r\n this.CountriesList.forEach((item) => {\r\n item.phonecode = \"+\" + item.phonecode\r\n })\r\n this.bvgVerificationObject.SetCountryList(this.CountriesList);\r\n if (\r\n this.candidateProfileDetails.countryID != null &&\r\n this.candidateProfileDetails.countryID != '' &&\r\n this.candidateProfileDetails.countryID != 0\r\n )\r\n var CurrentCountryName = this.CountriesList.filter(\r\n (c) => c.id == this.candidateProfileDetails.countryID\r\n )[0];\r\n if (CurrentCountryName != null) {\r\n this.CurrentCountryName = CurrentCountryName.name;\r\n } else {\r\n this.CurrentCountryName = '';\r\n }\r\n } else {\r\n this.candidateProfileDetails.countryName = '';\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n getCandidateActiveApplications() {\r\n this.pageLoaded = false;\r\n this.apiService\r\n .getCandidateActiveJobs(this.candidateProfileDetails.canPrfId)\r\n .subscribe(\r\n (data: any) => {\r\n this.pageLoaded = true;\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n this.jobActiveApplication = data.result.activeCandidateJobs;\r\n if (this.jobActiveApplication?.length > 0) {\r\n this.jobActiveApplication.forEach((elem) => {\r\n this.existingAppliedJobsList.push(elem.jobId);\r\n });\r\n this.jobActiveApplication = this.jobActiveApplication.filter(x => x.candProfStatusCode != 'CCV');\r\n\r\n var appliedJobs = this.existingAppliedJobsList.concat();\r\n localStorage.setItem('appliedJobs', appliedJobs + '');\r\n\r\n } else {\r\n //this.jobActiveApplication = [];\r\n }\r\n } else {\r\n //this.jobActiveApplication = [];\r\n }\r\n } else {\r\n this.getCandidateArchivedApplications();\r\n this.jobActiveApplication = [];\r\n }\r\n this.process_chatUnreadCount();\r\n },\r\n (error) => {\r\n this.pageLoaded = true;\r\n this.getCandidateArchivedApplications();\r\n }\r\n );\r\n\r\n }\r\n getCandidateArchivedApplications() {\r\n this.pageLoaded = false;\r\n this.apiService\r\n .getCandidateArchivedJobs(this.candidateProfileDetails.canPrfId)\r\n .subscribe(\r\n (data: any) => {\r\n this.pageLoaded = true;\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n this.jobArchivedApplication = data.result.activeCandidateJobs;\r\n\r\n this.jobArchivedApplication.forEach((elem) => {\r\n this.existingAppliedJobsList.push(elem.jobId);\r\n });\r\n var appliedJobs = this.existingAppliedJobsList.concat();\r\n localStorage.setItem('appliedJobs', appliedJobs + '');\r\n }\r\n } else {\r\n this.pageLoaded = true;\r\n }\r\n },\r\n (error) => {\r\n this.pageLoaded = true;\r\n }\r\n );\r\n\r\n }\r\n getCandidateNewJobApplications() {\r\n this.pageLoaded = false;\r\n this.apiService\r\n .getCandidateActiveJobs(this.candidateProfileDetails.canPrfId)\r\n .subscribe(\r\n (data: any) => {\r\n this.pageLoaded = true;\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n\r\n this.jobNewApplications = data.result.activeCandidateJobs;\r\n if (this.jobNewApplications?.length != 0) {\r\n this.jobNewApplications = this.jobNewApplications.filter(x => x.candProfStatusCode == 'CCV');\r\n }\r\n\r\n }\r\n } else {\r\n this.pageLoaded = true;\r\n }\r\n },\r\n (error) => {\r\n this.pageLoaded = true;\r\n }\r\n );\r\n }\r\n\r\n getRecruiterDetails() {\r\n this.apiService\r\n .getRecruiterDetails(this.candidateProfileDetails.canPrfId, 0)\r\n .subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n this.CounselorsContactDetails = data.result;\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getTypesOfMasterData() {\r\n this.apiService.getTypeOfMasterDta().subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n checkDocumentSubmitionPending(listofType: any, type: number) {\r\n var returnStatus = false;\r\n if (listofType != null) {\r\n listofType.forEach((element) => {\r\n if (element.docStatus == 7) {\r\n returnStatus = true;\r\n }\r\n });\r\n return returnStatus;\r\n } else {\r\n return returnStatus;\r\n }\r\n }\r\n\r\n getSimilarJobsList() {\r\n var canPrfId = this.candidateProfileDetails.canPrfId;\r\n if (\r\n this.candidateProfileDetails.canPrfId == null ||\r\n this.candidateProfileDetails.canPrfId == undefined\r\n ) {\r\n canPrfId = 0;\r\n }\r\n var obj = `perPage=7¤tPage=1&candidateId=` + canPrfId + `&searchKey=`;\r\n this.apiService.getSimilarJobsList(obj).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.similarJobs = data.result.candidateSimilarJobs;\r\n let obj = this;\r\n if (this.similarJobs.length > 0) {\r\n this.similarJobs.filter(function (person) {\r\n this.ProfileComponent?.existingAppliedJobsList.includes(\r\n person.jobId\r\n ) == -1;\r\n }, this);\r\n }\r\n // it is continuesly calling without stop if similor job list count 0\r\n //if (this.similarJobs.length == 0) {\r\n // this.getSimilarJobsList();\r\n //}\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n uploadProfilePhoto() {\r\n const files = (this.profilePhoto.nativeElement as HTMLInputElement).files;\r\n var formDT = new FormData();\r\n var countryId = this.candidateProfileDetails.countryId;\r\n if (countryId == null || countryId == '') {\r\n countryId = 0;\r\n }\r\n for (let i = 0; i < files.length; i++) {\r\n formDT.append(\r\n 'profilePhoto',\r\n files[i],\r\n files[i].name.replace(/\\s+/g, '').trim()\r\n );\r\n }\r\n formDT.append('contactNo', this.candidateProfileDetails.contactNo);\r\n formDT.append('countryId', countryId);\r\n formDT.append('countryName', this.candidateProfileDetails.countryName);\r\n formDT.append('canPrfId', this.candidateProfileDetails.canPrfId);\r\n formDT.append('emailId', this.candidateProfileDetails.emailId);\r\n formDT.append('name', this.candidateProfileDetails.name);\r\n formDT.append(\r\n 'candidatesSkillViewModel',\r\n JSON.stringify(this.candidateProfileDetails.candidatesSkillViewModel)\r\n );\r\n\r\n this.apiService.UpdatePrimaryDetails(formDT).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.getCandidatePrimaryInfo();\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n salaryConfirmation(jobActiveApplication) {\r\n var candidateProId = this.candidateProfileDetails.canPrfId;\r\n var salaryDetails = {\r\n clientCurrency: jobActiveApplication.opCurrency || 'N/A',\r\n candidateCurrency: jobActiveApplication.cpCurrency || 'N/A',\r\n\r\n clientSalary: jobActiveApplication.opGrossPayPerMonth || 0,\r\n candidatePreviousSalaryPerMonth:\r\n jobActiveApplication.cpTakeHomeSalPerMonth || 0,\r\n\r\n jobId: jobActiveApplication.jobId,\r\n canPrfId: candidateProId,\r\n offeredSalary: jobActiveApplication.opGrossPayPerMonth || 0,\r\n candidateCity: jobActiveApplication.candidateCity || 'N/A',\r\n candidateCountry: jobActiveApplication.candidateCountry || 'N/A',\r\n clientCity: jobActiveApplication.jobCityName || 'N/A',\r\n clientCountry: jobActiveApplication.jobCountryName || 'N/A',\r\n todaysDate: new Date(),\r\n };\r\n\r\n this.bsModalRef = this.modalService.show(SalaryConfirmationComponent, {\r\n initialState: { salaryDetailsObj: salaryDetails },\r\n ignoreBackdropClick: true,\r\n class: 'modal-xmd modal-dialog-centered pihire-modal',\r\n });\r\n this.bsModalRef.content.closeBtnName = 'Close';\r\n this.bsModalRef.onHidden.subscribe((res) => {\r\n this.bsModalRef.hide();\r\n this.getCandidatePrimaryInfo();\r\n });\r\n }\r\n\r\n navigateBgVerifiation(bgv: any) {\r\n this.router.navigate([\r\n 'app/pre-employment-form',\r\n bgv.jobId,\r\n this.candidateProfileDetails.canPrfId,\r\n ]);\r\n //[routerLink] = \"['/app/bg-verification?jobd']\"\r\n }\r\n\r\n redirectToChatComunication(arg: any) {\r\n this.router.navigate(['app/job-conversation'], {\r\n queryParams: {\r\n jobid: arg.jobId,\r\n profileid: this.candidateProfileDetails.canPrfId,\r\n },\r\n });\r\n }\r\n\r\n getDockTypeVideo(objList: any) {\r\n var flagis = objList.filter((x) => x.docTypeName == 'Video Profile');\r\n if (flagis.length > 0) {\r\n this.videProfileLink = objList.filter(\r\n (x) => x.docTypeName == 'Video Profile'\r\n );\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n getFilesList(objList: any) {\r\n return objList.filter((x) => x.docTypeName != 'Video Profile');\r\n }\r\n\r\n process_chatUnreadCount() {\r\n if (this.jobActiveApplication) {\r\n for (var indx = 0; indx < this.jobActiveApplication.length; indx++) {\r\n this.jobActiveApplication[indx].chatUnreadCount = 0;\r\n if (this.UnreadChatList && this.UnreadChatList.length > 0) {\r\n let roomCounts: any[] = this.UnreadChatList.filter(f => f.jobId == this.jobActiveApplication[indx].jobId);\r\n if (roomCounts != null && roomCounts.length > 0) {\r\n this.jobActiveApplication[indx].chatUnreadCount = roomCounts.map(da => da.count).reduce((a, b) => a + b, 0);\r\n }\r\n else {\r\n this.jobActiveApplication[indx].chatUnreadCount = 0;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nexport class usedDetails {\r\n designation: any;\r\n email: string;\r\n firstName: string;\r\n id: number;\r\n lastName: string;\r\n location: string;\r\n mobileNo: string;\r\n permission: string;\r\n timezone: string;\r\n userType: string;\r\n}\r\n","
\r\n
0)}\">\r\n
0)}\" *ngIf=\"isActiveApplication=='active'\">\r\n
0)\">\r\n
You don't have any Active Job application(s).
\r\n \"No\r\n
\r\n\r\n
0\">\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{ joblist.jobId }} - {{ joblist.jobTitle }}
\r\n
\r\n \r\n \"location\"\r\n {{joblist.jobCityName}} / {{joblist.jobCountryName}}\r\n \r\n Applied on : {{joblist.appliedDate|date:\"dd MMMM YYYY\" }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Shared Files
\r\n
0\">\r\n
\r\n
\r\n
\r\n \"download\"\r\n \r\n {{fileis.docTypeName}}\r\n \r\n
\r\n {{fileis.fileName}}\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n No Files\r\n
\r\n\r\n
\r\n
\r\n
Video Profile
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"no\r\n

No Video Found

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
0)}\" *ngIf=\"isActiveApplication == 'archived'\">\r\n
0)\">\r\n
\r\n You don't have any Archived Job application(s).\r\n
\r\n \"No\r\n
\r\n
0\">\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{ joblist.jobId }} - {{joblist.jobTitle}}
\r\n
\r\n \r\n \"location\"\r\n {{joblist.jobCityName}}/{{ joblist.jobCountryName}}\r\n \r\n Applied on : {{ joblist.appliedDate|date:\"dd MMMM YYYY\" }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Shared Files
\r\n
0\">\r\n
\r\n
\r\n
\r\n \"download\"\r\n \r\n {{fileis.docTypeName}}\r\n \r\n
\r\n {{fileis.fileName}}\r\n \r\n
\r\n
\r\n \r\n\r\n \"download\"\r\n \r\n
\r\n
\r\n
\r\n
\r\n No Files\r\n
\r\n\r\n
\r\n
\r\n
Video Profile
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
0)}\" *ngIf=\"isActiveApplication == 'newjobs'\">\r\n
0)\">\r\n
There are no new job applications pending with you.
\r\n \"No\r\n
\r\n\r\n
0\">\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{ joblist.jobId }} - {{ joblist.jobTitle }}
\r\n
\r\n \r\n \"location\"\r\n {{joblist.jobCityName}} / {{joblist.jobCountryName}}\r\n \r\n Applied on : {{joblist.appliedDate|date:\"dd MMMM YYYY\" }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Shared Files
\r\n
0\">\r\n
\r\n
\r\n
\r\n \"download\"\r\n \r\n {{fileis.docTypeName}}\r\n \r\n
\r\n {{fileis.fileName}}\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n No Files\r\n
\r\n\r\n
\r\n
\r\n
Video Profile
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"no\r\n

No Video Found

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

{{viewJobDetails.jobId}} - {{viewJobDetails.jobTitle}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{viewJobDetails.minExp}} - {{viewJobDetails.maxExp}} Years

\r\n
\r\n
\r\n
\r\n \r\n

{{viewJobDetails.postedDate|date:'dd MMMM YYYY'}}

\r\n
\r\n
\r\n
\r\n \r\n

{{viewJobDetails.jobCityName}} / {{viewJobDetails.jobCountryName}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Job Description
\r\n
\r\n

\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Skills
\r\n
\r\n
Experience
\r\n
\r\n
\r\n
{{skill.technologyName}}
\r\n\r\n
{{skill?.expInYears || '0'}}.{{skill?.expInMonths || '0'}} Yrs
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

{{viewJobDetails.jobId}} - {{viewJobDetails.jobTitle}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{viewJobDetails.minExp}} - {{viewJobDetails.maxExp}} Years

\r\n
\r\n
\r\n \r\n

{{viewJobDetails.postedDate|date:'dd MMMM YYYY'}}

\r\n
\r\n
\r\n \r\n

{{viewJobDetails.jobCityName}} / {{viewJobDetails.jobCountryName}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Job Description
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Skills
\r\n
\r\n
Experience
\r\n
\r\n
\r\n
{{skill.technologyName}}
\r\n\r\n
{{skill?.expInYears || '0'}}.{{skill?.expInMonths || '0'}} Yrs
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ElementRef, ViewChild, OnDestroy, ViewEncapsulation } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CommonApiService } from '../../../shared/services';\r\nimport { DatetimeConverterService } from '../../../shared/services/utility/datetime-converter.service';\r\nimport { AuthenticationService } from '../../../core/services/authentication.service';\r\nimport { ChatCommunicationService } from '../../../shared/services/chat-communication.service';\r\nimport { SendMessageModel } from '../../../shared/model/chat-communication-model';\r\nimport { Console } from 'console';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-conversation',\r\n templateUrl: './conversation.component.html',\r\n styleUrls: ['./conversation.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class ConversationComponent implements OnInit, OnDestroy {\r\n jobid: number;\r\n jobDesc: any;\r\n roomDetails: any = null;\r\n profileid: number;\r\n roomId: number;\r\n messages: any;\r\n receiverId: number;\r\n candidateUserId: number;\r\n enterText: string = \"\";\r\n selectedFiles: File[];\r\n\r\n resumes;\r\n\r\n @ViewChild('fileInput')\r\n fileInput: ElementRef;\r\n route_subscribe: Subscription;\r\n castUnreadCount_subscribe: Subscription;\r\n castChatMessages_subscribe: Subscription;\r\n castRooms_subscribe: Subscription;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private commonService: CommonApiService,\r\n private router: Router,\r\n public datetimeService: DatetimeConverterService,\r\n private authService: AuthenticationService,\r\n private toastr: ToastrService,\r\n private chatService: ChatCommunicationService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.route_subscribe =\r\n this.route.queryParams.subscribe((params) => {\r\n this.jobid = 0;\r\n this.profileid = 0;\r\n if (params['jobid'] != null && params['jobid'] != \"\") {\r\n this.jobid = parseInt(params['jobid']);\r\n }\r\n if (params['profileid'] != null && params['profileid'] != \"\") {\r\n this.profileid = parseInt(params['profileid']);\r\n }\r\n\r\n if (this.profileid == null || this.profileid == 0) {\r\n this.router.navigate(['/app/profile']);\r\n }\r\n\r\n if (this.jobid == null || this.jobid == 0) {\r\n this.router.navigate(['/app/profile']);\r\n } else {\r\n this.getJobDescription(this.jobid);\r\n this.getRecuiterDetails(this.jobid, this.profileid);\r\n }\r\n });\r\n this.castUnreadCount_subscribe =\r\n this.chatService.castUnreadCount.subscribe((resp) => {\r\n if (resp == null) {\r\n resp = [];\r\n }\r\n if (this.roomDetails != null) {\r\n for (var i = 0; i < this.roomDetails.length; i++) {\r\n var roomCount = resp.find(f => f.roomId == this.roomDetails[i].roomId);\r\n if (roomCount != null) {\r\n this.roomDetails[i].unreadCount = roomCount.count;\r\n }\r\n else {\r\n this.roomDetails[i].unreadCount = 0;\r\n }\r\n }\r\n for (var i = 0; i < resp.length; i++) {\r\n var room = this.roomDetails.find(f => f.roomId == resp[i].roomId);\r\n if (room != null) {\r\n room.unreadCount = resp[i].count;\r\n room.latestMessageDt = resp[i].latestMessageDt;\r\n }\r\n else if (resp[i].jobId == this.jobid) {\r\n //new chat room needed to reload chat room\r\n this.chatService.getRoomByJob({ jobId: this.jobid, receiverId: this.receiverId });\r\n break;\r\n }\r\n }\r\n this.roomDetails =\r\n this.roomDetails.sort((a, b) => {\r\n return new Date(b['latestMessageDt'] ?? '2020-01-01') - new Date(a['latestMessageDt'] ?? '2020-01-01');\r\n });\r\n }\r\n\r\n //scroll to bottom\r\n setTimeout(() => {\r\n document.getElementsByClassName('conversation-list')[0].scrollTop =\r\n document.getElementsByClassName('conversation-list')[0].scrollHeight;\r\n }, 500);\r\n }, (error) => {\r\n\r\n });\r\n this.castChatMessages_subscribe =\r\n this.chatService.castChatMessages.subscribe((resp) => {\r\n if (resp != null) {\r\n this.messages = resp;\r\n }\r\n this.roomId = this.chatService.roomId;\r\n if (this.roomId != null) {\r\n this.chatService.UpdateReadStatus(this.roomId);\r\n if (this.roomDetails == null || this.roomDetails.length == 0) {\r\n this.chatService.getRoomByJob({ jobId: this.jobid, receiverId: this.receiverId });\r\n }\r\n }\r\n\r\n }, (error) => {\r\n\r\n });\r\n this.castRooms_subscribe =\r\n this.chatService.castRooms.subscribe((resp) => {\r\n this.roomDetails = resp;\r\n this.chatService.GetUnreadCount();\r\n }, (error) => {\r\n\r\n });\r\n\r\n this.candidateUserId = this.authService.currentUserValue.id;\r\n }\r\n ngOnDestroy() {\r\n if (this.route_subscribe)\r\n this.route_subscribe.unsubscribe();\r\n if (this.castUnreadCount_subscribe)\r\n this.castUnreadCount_subscribe.unsubscribe();\r\n if (this.castChatMessages_subscribe)\r\n this.castChatMessages_subscribe.unsubscribe();\r\n if (this.castRooms_subscribe)\r\n this.castRooms_subscribe.unsubscribe();\r\n }\r\n\r\n getJobDescription(jobid: number) {\r\n this.commonService.getJobDescription(jobid).subscribe((resp: any) => {\r\n this.jobDesc = resp.result;\r\n }, (err) => {\r\n\r\n });\r\n }\r\n\r\n getRecuiterDetails(jobid: number, candidateId: number) {\r\n this.commonService.getRecruiterDetails(candidateId, jobid).subscribe((resp: any) => {\r\n if (resp.result == null || resp.result.length == 0) {\r\n this.toastr.warning(\"No recuiter is assign to this opening and candidate.\");\r\n return false;\r\n }\r\n else {\r\n this.receiverId = resp.result[0].userId;\r\n this.chatService.getChatCommunication({ receiverId: resp.result[0].userId, jobId: this.jobid })\r\n\r\n }\r\n }, (err) => {\r\n\r\n });\r\n }\r\n\r\n sendMessage() {\r\n if (this.enterText == \"\") {\r\n return false;\r\n }\r\n let room = this.roomDetails.find(f => f.roomId == this.roomId);\r\n if (room == null) {\r\n return false;\r\n }\r\n\r\n var formData = new FormData();\r\n if (this.selectedFiles != null) {\r\n formData.append('file', this.selectedFiles[0]);\r\n }\r\n let model: SendMessageModel = {\r\n chatRoomId: this.chatService.roomId,\r\n message: this.enterText,\r\n receiverId: room.receiverId,\r\n receiverName: room.receiverName\r\n };\r\n\r\n formData.append('model', JSON.stringify(model));\r\n\r\n this.chatService.sendChatCommunicationMessage(formData).subscribe((resp) => {\r\n this.enterText = \"\";\r\n this.selectedFiles = null;\r\n this.fileInput.nativeElement.value = \"\";\r\n }, (error) => {\r\n this.enterText = \"\";\r\n this.selectedFiles = null;\r\n this.fileInput.nativeElement.value = \"\";\r\n });\r\n }\r\n\r\n selectRoom(arg: any) {\r\n this.roomId = arg.roomId;\r\n this.receiverId = arg.receiverId;\r\n this.chatService.setRoomId(this.roomId);\r\n this.chatService.getChatCommunication({ receiverId: this.receiverId, jobId: this.jobid });\r\n\r\n }\r\n\r\n upload(files: File[]) {\r\n this.selectedFiles = files;\r\n }\r\n\r\n removeFiles() {\r\n this.resumes = null;\r\n this.selectedFiles = null;\r\n }\r\n}\r\n","
\r\n\r\n
\r\n
\r\n \r\n
Messages
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ item?.receiverName[0] }}{{ item?.receiverName?.split(' ').length > 1 ? item?.receiverName?.split('\r\n ')[1][0] : \"\r\n \"}}\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
{{ item.receiverName }}
\r\n
{{datetimeService.getDateTimeAgo(item.updatedDate) }}
\r\n
\r\n
\r\n {{ item.role }}\r\n
\r\n
\r\n
\r\n {{item.unreadCount == 0 ? '':item.unreadCount}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n #{{jobDesc?.jobId}} -\r\n {{jobDesc?.jobTitle}}\r\n

\r\n
\r\n
\r\n
Experience {{jobDesc?.minYear}}-{{jobDesc?.maxYear}} Years
\r\n
\r\n Posted Date\r\n {{datetimeService.getLocalDate(jobDesc?.createdDate,'DD MMMM YYYY')}}\r\n
\r\n
\r\n {{jobDesc?.country}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n {{chat.senderName[0]}}\r\n
\r\n
\r\n

\r\n {{chat.message}}\r\n

\r\n
\r\n {{datetimeService.getLocalDate(chat.createdDate, 'DD-MMM-YYYY HH:MM A')}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n {{ resumes?.split('\\\\').pop().split('/').pop() }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\nimport { trigger, state, style, animate, transition } from '@angular/animations';\nimport { ChatCommunicationService } from '../../shared/services/chat-communication.service';\r\n\n@Component({\n selector: 'app-live-chat',\n templateUrl: './live-chat.component.html',\n styleUrls: ['./live-chat.component.scss'],\n animations: [\n trigger('slide_in_out', [\n state('slide_in', style({\n bottom: '70px'\n // css styles when the element is in slide_in\n })),\n state('slide_out', style({\n bottom: '-500px'\n // css styles when the element is in slide_out\n })),\n // animation effect when transitioning from one state to another\n transition('slide_in => slide_out', animate('200ms ease-in')),\n transition('slide_out => slide_in', animate('100ms ease-out'))\n ]),\n\n ]\n})\nexport class LiveChatComponent implements OnInit {\n\n slider_state: string = \"slide_out\";\n messages: any;\n\n openChat(): void {\n\n // do something to change the animation_state variable\n this.slider_state = this.slider_state === 'slide_out' ? 'slide_in' : 'slide_out';\n }\n\n constructor(\n private chatService: ChatCommunicationService\n ) { }\n\n ngOnInit(): void {\n this.chatService.getAllChatCommunication();\n this.chatService.castChatMessagesAll.subscribe((resp) => {\n if (resp != null) {\n this.messages = resp;\n }\n }, (error) => {\n\n });\n\n }\n\n}\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"first\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Francine Riley
\r\n Online\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"sender\"\r\n
\r\n
\r\n It has survived not only five centuries, but also the leap into\r\n electronic typesetting Lorem ipsum\r\n
\r\n
\r\n
\r\n
\r\n
{{chat.message}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { CommonApiService } from '../../../shared/services/index';\nimport { ToastrService } from 'ngx-toastr';\nimport { environment } from '../../../../environments/environment.prod';\r\n\n\n@Component({\n selector: 'app-article-details',\n templateUrl: './article-details.component.html',\n styleUrls: ['./article-details.component.scss']\n})\nexport class ArticleDetailsComponent implements OnInit {\n\n articleId: any; isLoader: boolean; featuredArticlesLists: any = [];\n constructor(private activatedRoute: ActivatedRoute,\n private commonApiService: CommonApiService,\n private toastr: ToastrService) { }\n\n getArticle(id) {\n this.isLoader = true;\n this.commonApiService.getArticldetails(id).subscribe(\n (resp: any) => {\n this.isLoader = false;\n if (resp.status) {\n this.featuredArticlesLists = resp.result;\n } else {\n this.toastr.error(resp.meta.error.errorMessage);\n }\n },\n (error) => {\n this.featuredArticlesLists = [];\n this.isLoader = false;\n this.toastr.error('Error');\n }\n );\n }\n\n websiteUrl: any;\n ngOnInit(): void {\n this.websiteUrl = environment.websiteUrl;\n this.activatedRoute.params.subscribe((params) => {\n this.articleId = params['id'];\n if (this.articleId > 0) {\n this.getArticle(this.articleId);\n }\n });\n }\n}\n","
\n
\n
\n \n \n Home > Articles >\n {{ featuredArticlesLists.title.slice(0,100) || 'title' }}\n
\n
\n
\n

{{ featuredArticlesLists.title || 'title' }}

\n

by {{ featuredArticlesLists.authorName || '-' }}\n {{ featuredArticlesLists.createdDate | date:'dd MMM YYYY' }}

\n \n
\n\n
\n
\n\n
\n
\n\n
\n","import { Component, OnInit } from '@angular/core';\nimport { Title } from '@angular/platform-browser';\n\n@Component({\n selector: 'app-forbidden',\n templateUrl: './forbidden.component.html',\n styleUrls: ['./forbidden.component.scss']\n})\nexport class ForbiddenComponent implements OnInit {\n\n constructor(private titleService: Title) { }\n\n title = \"Career Portal - PiHire\"\n ngOnInit(): void {\n this.titleService.setTitle(this.title);\n }\n\n}\n","
\n
\n \"Logo\"\n
\n
\n
\n

Forbidden

\n
Opps, Access to this resource on the server is denied!
\n \n
\n
\n
\n","import { Component, EventEmitter, Input, OnInit, Output, SimpleChanges } from '@angular/core';\nimport { JobApplyComponent } from '../job-apply.component';\nimport { CommonApiService } from '../../../shared/services/common-api.service';\nimport { ToastrService } from 'ngx-toastr';\n\n@Component({\n selector: 'app-job-knowledge',\n templateUrl: './job-knowledge.component.html',\n styleUrls: ['./job-knowledge.component.scss']\n})\nexport class JobKnowledgeComponent implements OnInit {\n\n @Input() application: any;\n @Input() currentOpeningPREF: any = {};\n @Input() fildOfCandidateDetails: any;\n @Output() valueChange = new EventEmitter();\n @Input() currentPage:number;\n @Input() currentWizard:number; \n isShowEducationGrid:boolean = false;\n isSkillSectionShow:boolean = true;\n\n sections:any = [\n {\n name:'Specializations',\n code: 'jobDesirableSpecializations',\n bgcolor: '#ffa629'\n },\n {\n name:'Implementations',\n code: 'jobDesirableImplementations',\n bgcolor: '#ffff00'\n },\n {\n name:'Design',\n code: 'jobDesirableDesigns',\n bgcolor: '#ffff00'\n\n },\n {\n name:'Development',\n code: 'jobDesirableDevelopments'\n },\n {\n name:'Support',\n code: 'jobDesirableSupports'\n },\n {\n name:'Quality',\n code: 'jobDesirableQualities'\n },\n {\n name:'Documentation',\n code: 'jobDesirableDocumentations'\n }\n ]\n\n // sections:any = [];\n\n\n\n tabs:any = [\n {\n name:'specialization',\n id: 1, \n data: false,\n hide: false,\n },\n {\n name:'skills',\n id: 2, \n data: false,\n hide: false,\n },\n {\n name:'education',\n id: 3, \n data: false,\n hide: false,\n },\n {\n name:'opening',\n id: 4, \n data: false,\n hide: false,\n },\n ]\n\n sectionId:number = 1; \n\n \n\n constructor(\n public JobApplication: JobApplyComponent,\n private commonApiService: CommonApiService,\n private toastr: ToastrService\n\n ) {\n\n }\n\n\n\n // checkNoPreferenceValues() {\n\n // let obj = this;\n // this.sections = this.tmp_sections.filter(function( sec:any ) {\n\n // return !(!obj.application[sec.code] || obj.application[sec.code]?.length == 0)\n \n \n\n // });\n \n // console.log(this.sections);\n // }\n\n ngOnInit(): void {\n\n \n\n }\n\n\n VerifyAllEmpty() {\n\n if (this.sections.length == 0 && this.application.openingSkillSet.length == 0 \n && this.application.candidateEducationQualifications.length == 0 \n && this.application.candidateEducationCertifications.length == 0 && this.application.openingCertifications.length == 0\n && this.application.openingQualifications.length == 0\n ) {\n this.valueChange.emit({\n currentPage: 1,\n mainWizardPage: 5,\n isSave: false,\n });\n }\n\n }\n ngAfterViewInit() {\n // if(this.application) {\n \n // this.checkNoPreferenceValues();\n\n // this.checkWhichPageSection();\n \n\n // } else {\n // this.sections = JSON.parse(JSON.stringify(this.tmp_sections))\n // }\n }\n\n // this logic checking initial time whether skills, specializiation, and education qualification is empty \n checkWhichPageSection() {\n //all empty\n if (this.sections.length == 0 && this.application.openingSkillSet.length == 0 \n && this.application.candidateEducationQualifications.length == 0 \n && this.application.candidateEducationCertifications.length == 0 && this.application.openingCertifications.length == 0\n && this.application.openingQualifications.length == 0\n ) {\n this.valueChange.emit({\n currentPage: 1,\n mainWizardPage: 5,\n isSave: false,\n });\n } else {\n\n // specializations empty\n if(this.sections.length == 0) {\n this.tabs[0].hide = true;\n }\n\n //skills empty\n if (this.application.openingSkillSet.length == 0) {\n this.tabs[1].hide = true;\n }\n\n if (this.application.candidateEducationQualifications.length == 0 && this.application.candidateEducationCertifications.length == 0) {\n this.tabs[2].hide = true;\n }\n\n if (this.application.openingCertifications.length == 0 && this.application.openingQualifications.length == 0) {\n this.tabs[3].hide = true;\n }\n\n \n\n //load initial section id if no preference\n for (let i=0;i parseInt(event.target.value)) {\n var mon = event.target.value.split(\".\");\n if (mon.length == 2) {\n if (mon[1] != null) {\n if (parseInt(mon[1]) > 11) {\n totalExp=event.target.value = mon[0] + \".\" + \"11\";\n }\n }\n }\n } else {\n totalExp=event.target.value = 50\n }\n }\n totalExp = event.target.value;\n return event.target.value;\n }\n\n\n\n checkIsTabHide(tabs:number[]) {\n\n let sectionId = 0;\n for(let i=0; i<=tabs.length-1;i++) {\n\n if(!this.tabs[tabs[i]]?.hide ) {\n sectionId = this.tabs[tabs[i]].id;\n break;\n } \n }\n\n return sectionId;\n }\n \n\n \n getLastWizrd() {\n this.valueChange.emit({\n currentPage: 1,\n mainWizardPage: 3,\n isSave: false,\n });\n }\n\n checkIsEducationYesOption() {\n let isYesOptionChecked:boolean = false;\n this.JobApplication.candidateProfileDetails.candidateQualificationModel.forEach(element => {\n\n if(element.course.preferenceType) {\n isYesOptionChecked = true;\n }\n\n });\n\n if(!isYesOptionChecked) {\n this.isShowEducationGrid = true; \n }\n }\n\n qualification: number;\n course: number;\n addFalg: boolean = false;\n addQualification() {\n this.addFalg = true;\n if (this.qualification == null) {\n return false;\n }\n if (this.course == null) {\n return false;\n }\n var checkList = this.JobApplication.CandidateOpeningList.filter(x => x.qualificationId == this.qualification && x.courseId == this.course);\n if (checkList.length > 0) {\n this.toastr.warning(\"This qualification already available.\");\n return false;\n }\n var obj = {\n id: 0,\n qualificationId: this.qualification,\n qualification: this.JobApplication.qualificationLists.filter(a => a.id == this.qualification)[0].rmvalue,\n courseId: this.course,\n course: this.JobApplication.CourseLists.filter(a => a.id == this.course)[0].rmvalue,\n }\n this.JobApplication.CandidateOpeningList.push(obj);\n this.addFalg = false;\n this.qualification = null;\n this.course = null;\n\n }\n\n removequalification(index) {\n this.JobApplication.CandidateOpeningList.splice(index, 1);\n }\n \n CertificationID: number = null;\n addFlag: boolean = false;\n addcertificates() {\n this.addFlag = true;\n if (this.CertificationID == null) {\n return false;\n }\n var cert = this.JobApplication.CertificationList.filter(x => x.id == this.CertificationID);\n if (cert.length != 0) {\n var certDtls = this.JobApplication.candidateCirtificates.filter(x => x.CertificationID == this.CertificationID);\n if (certDtls.length == 0) {\n this.JobApplication.candidateCirtificates.push({ id: 0, CertificationID: this.CertificationID, certificationName: cert[0].rmvalue })\n } \n }\n this.CertificationID = null;\n this.addFlag = false;\n }\n\n removeCertification(index) {\n this.JobApplication.candidateCirtificates.splice(index, 1);\n }\n\n}\n","
\n\n \n
\n\n \n \n\n\n
\n
\n
\n
{{section.name}} in
\n
Years
\n
Months
\n
Self Rating
\n\n
\n
\n
\n
\n
\n {{ data.technology }}\n
\n\n
\n
\n
\n
\n\n \n \n\n
\n\n
\n
\n
\n\n \n \n\n
\n\n
\n\n
\n\n
\n \n \n \n \n \n \n \n \n
\n\n
0 || data.expInYears === '0') && validationFlag)\">\n Required\n
\n
\n\n
\n
\n
\n
\n\n
\n
\n\n\n\n \n
\n\n \n \n\n\n
\n
\n
\n
Skill in
\n
\n
Year
\n
Month
\n
\n
Self Rating
\n
\n
\n
\n
\n
\n {{ data.technologyName }}\n
\n\n
\n
\n\n
\n
\n\n \n \n\n
\n
\n\n
\n
\n\n \n \n\n
\n\n
\n
\n\n\n\n
\n \n \n \n \n \n \n \n \n
\n
0 || data.expInYears === '0') && validationFlag)\">\n Required\n
\n
\n
\n
\n
\n
\n
\n
\n\n\n
\n
0\">Education Details
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n\n
0\">\n
Note : Could you please provide details of your additional educational qualifications?
\n
\n
\n
\n
\n
\n
\n \n \n {{ c.rmvalue }}\n \n \n \n\n
\n
\n \n Required\n \n
\n
\n \n Required qualifications\n \n
\n
\n
\n
\n \n \n {{ c.rmvalue }}\n \n \n \n
\n
\n \n Required\n \n
\n \n
\n
\n \n
\n
\n
\n
\n\n
\n
\n
Qualification
\n
Course
\n
Action
\n
\n
\n\n
\n {{ql.qualification}}\n
\n
\n {{ql.course}}\n
\n
\n \n
\n
\n
\n\n\n
\n\n
\n\n\n
0\">Certification
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n\n
0\">\n
Note : Could you please provide details of your additional educational certifications?
\n\n
\n
\n
\n
\n
\n \n \n {{ c.rmvalue }}\n \n \n \n
\n
\n
\n \n
\n
\n \n Required\n \n
\n
\n \n Certifications Required\n \n
\n
\n
\n
\n
\n
\n
Certification
\n
Action
\n
\n
\n
\n {{ql.certificationName}}\n
\n
\n \n
\n
\n
\n \n
\n
\n\n\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n\n
\n \n \n
\n
","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { CommonApiService } from '../../../shared/services';\nimport { ToastrService } from 'ngx-toastr';\n\n@Component({\n selector: 'app-add-document',\n templateUrl: './add-document.component.html',\n styleUrls: ['./add-document.component.scss'],\n})\nexport class AddDocumentComponent implements OnInit {\n @Input() candiateId;\n @Input() jobId;\n @Input() requestedFiles;\n uploadFileObj = {\n id:0,\n docType: '',\n fileGroup: '',\n jobId: 0,\n candId: 0,\n };\n @ViewChild('resume', { read: ElementRef })\n resume: ElementRef;\n resumes =\"\";\n isLoader: boolean;\n fileGroupLists: any;\n docTypeLists: any;\n isFormSubmitted;\n isVideoRec: boolean = false;\n videoRecorder: any;\n docType: any;\n constructor(\n public activeModal: NgbActiveModal,\n private toastr: ToastrService,\n private commonApiService: CommonApiService\n ) {}\n\n isVideoEnable(isVideo) {\n this.isVideoRec = isVideo;\n }\n updatePlayer(e) {\n this.videoRecorder = e.rec;\n }\n resetFile(){\n this.videoRecorder = \"\";\n this.resumes = \"\";\n this.isVideoRec = false; \n this.uploadFileObj.fileGroup = this.docType?.fileGroup || '';\n this.uploadFileObj.docType = this.docType?.docTypeName || '';\n this.uploadFileObj.id = this.docType?.id || 0;\n if(this.uploadFileObj.docType.trim() == 'Video Profile'){\n this.isVideoRec = true;\n }\n }\n getGroup() {\n this.isLoader = true;\n this.commonApiService.getCommonLists().subscribe(\n (resp: any) => {\n if (resp.status) {\n this.fileGroupLists = resp.result.fileGroup;\n } else {\n this.toastr.error(resp.meta.error.errorMessage);\n }\n this.isLoader = false;\n },\n (error) => {\n this.isLoader = false;\n this.toastr.error('Error');\n }\n );\n }\n getDocType() {\n this.isLoader = true;\n this.commonApiService.getRefDate(15).subscribe(\n (resp: any) => {\n if (resp.status) {\n this.docTypeLists = resp.result;\n } else {\n this.toastr.error(resp.meta.error.errorMessage);\n }\n this.isLoader = false;\n },\n (error) => {\n this.isLoader = false;\n this.toastr.error('Error');\n }\n );\n }\n // resetFile(){\n // this.resumes = \"\";\n // }\n saveFiles(isValid) {\n this.isFormSubmitted = true;\n var data = this.videoRecorder;\n if (data == undefined && this.isVideoRec) {\n this.toastr.error('File is Required');\n return;\n }\n \n if (!this.isVideoRec) {\n if(this.resumes ==\"\"){\n this.toastr.error('File is Required');\n return;\n }\n if(this.resumes !=\"\"){\n const files = (this.resume.nativeElement as HTMLInputElement).files;\n var isValidFile = false;\n if(this.uploadFileObj.docType.trim() !='Video Profile'){\n for (let i = 0; i < files.length; i++) { \n var file = files[i];\n if(file.size > (1048576 * 2)){\n var text = files[i].name + ' should be less then 2MB';\n this.toastr.error(text);\n isValidFile = true;\n } \n }\n }\n if(this.uploadFileObj.docType.trim() == 'Video Profile' && !this.isVideoRec){\n for (let i = 0; i < files.length; i++) { \n var file = files[i];\n if(file.size > (1048576 * 6)){\n var text = files[i].name + ' should be less then 6MB';\n this.toastr.error(text);\n isValidFile = true;\n } \n }\n }\n if(isValidFile){\n return; \n }\n }\n // this.toastr.error('Upload File');\n // return;\n }\n if (isValid) {\n this.isFormSubmitted = false;\n this.isLoader = true;\n const sendable = new FormData();\n for (var key in this.uploadFileObj) {\n sendable.append(key, this.uploadFileObj[key]);\n }\n if (this.isVideoRec) {\n var data = this.videoRecorder;\n if (data.name) { \n sendable.append('files', data, data.name.replace(/\\s+/g,'').trim());\n }\n } else {\n const files = (this.resume.nativeElement as HTMLInputElement).files;\n \n for (let i = 0; i < files.length; i++) { \n sendable.append('files', files[i], files[i].name.replace(/\\s+/g,'').trim());\n }\n }\n this.commonApiService.saveFiles(sendable).subscribe(\n (resp: any) => {\n this.isLoader = false;\n if (resp.status) {\n this.toastr.success(resp.result);\n this.activeModal.close('Saved successfully');\n } else {\n this.toastr.error(resp.meta.error.errorMessage);\n }\n },\n (error) => {\n this.isLoader = false;\n this.toastr.error('Error');\n }\n );\n }\n }\n ngOnInit(): void {\n // this.getDocType();\n this.getGroup();\n this.uploadFileObj.jobId = this.jobId;\n this.uploadFileObj.candId = this.candiateId;\n this.docTypeLists = this.requestedFiles;\n this.uploadFileObj.fileGroup = this.requestedFiles[0].fileGroup;\n this.uploadFileObj.docType = this.requestedFiles[0].docTypeName;\n this.uploadFileObj.id = this.requestedFiles[0].id;\n this.docType = this.requestedFiles[0];\n }\n}\n","
\n
Upload Document
\n \n
\n\n\n
\n
\n \n
\n
\n \n \n
\n
\n Required\n
\n
\n
\n \n \n \n
\n
\n
{{ uploadFileObj.docType || 'Resume' }}
\n
\n \n
\n {{ resumes?.split('\\\\').pop().split('/').pop() }}\n
\n \n
\n
\n
\n
\n
\n \n\n \n
","import { Component, OnInit } from '@angular/core';\nimport { Title } from '@angular/platform-browser';\n\n@Component({\n selector: 'app-not-found',\n templateUrl: './not-found.component.html',\n styleUrls: ['./not-found.component.scss']\n})\nexport class NotFoundComponent implements OnInit {\n constructor(private titleService: Title) { }\n\n title = \"404 Not Found - Career Portal - PiHire\"\n ngOnInit(): void {\n this.titleService.setTitle(this.title);\n }\n}\n","
\n
\n \"Logo\"\n
\n
\n
\n

404

\n
Oops, Page not found!
\n \n
\n
\n
\n","import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http';\r\nimport { AuthenticationService } from '../services/authentication.service';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from '../../../environments/environment';\r\nimport { Injectable } from '@angular/core';\r\n\n@Injectable()\nexport class JwtInterceptor implements HttpInterceptor {\n\n constructor(private authenticationService: AuthenticationService) { }\n\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n // add auth header with jwt if user is logged in and request is to the api url\r\n const currentUser = this.authenticationService.currentUserValue;\r\n const isLoggedIn = currentUser && currentUser.token;\r\n const isApiUrl = request.url.startsWith(environment.baseUrl);\r\n if (isLoggedIn && isApiUrl) {\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `Bearer ${currentUser.token}`\r\n }\r\n });\r\n }\r\n\r\n return next.handle(request);\r\n }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-terms-and-services',\n templateUrl: './terms-and-services.component.html',\n styleUrls: ['./terms-and-services.component.scss']\n})\nexport class TermsAndServicesComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n\n
\n
\n
\n \"Logo\"\n
\n
Terms of Service
\n
\n
\n
\n

\n Using this site indicates your acceptance of all the following terms and conditions without limitation or\n qualification.\n

\n
    \n
  • \n Contents on this site, unless otherwise specified, include the following including, but not limited to,\n the\n text and images contained herein, as well as their arrangement, are the property of ParamInfo.\n Trademarks used\n or referred to on this website are the property of their respective owners.\n
  • \n
  • \n No part of this site should be construed as conferring by implication, or otherwise, any license or\n right to\n any copyright, patent, trademark, or other proprietary interest of ParamInfo or any third-party.\n
  • \n
  • \n It is prohibited for visitors to copy, reproduce, republish, download, upload, post, transmit, or\n distribute\n this site and its contents (or restricted environment) without Param Info’s prior written consent.\n
  • \n
  • \n The Client may download, display, and print one copy of the materials on any one computer solely for his\n or\n her private, non-commercial use, provided that the material is not modified, and the ownership\n (copyright,\n trademark, and other proprietary) notices are intact.\n
  • \n
  • \n In providing this information, ParamInfo does not create any business or professional relationship\n between you\n and ParamInfo.\n
  • \n
  • \n ParamInfo may provide links to services or sites not run by the company, such other sites or services\n are not\n endorsed or endorsed by ParamInfo. Therefore, ParamInfo does not assume responsibility for them or their\n content. An external link to another site or service is not an endorsement of that site or service. Use\n of\n information provided on such sites or services, is strictly at your own risk. ParamInfo cannot be held\n responsible for any consequences.\n
  • \n
  • \n In terms of the site and its contents, ParamInfo makes no representations or warranties of any kind with\n respect to this site or any site or service accessible through it.\n
  • \n
  • \n ParamInfo expressly disclaims all express and implied warranties including, but not limited to, the\n implied\n warranties of merchantability, fitness for a particular purpose, title, and non-infringement.\n
  • \n
  • \n Neither ParamInfo nor its third-party service providers are liable to any party for any direct,\n indirect,\n incidental, special, exemplary, consequential, or other damages (including, but not limited to, lost\n profits,\n business interruption, loss of programs or data) without regard to the form of action and whether in\n contract,\n tort, negligence, strict liability, or otherwise, arising out of or in connection with this site, any\n content\n on or accessed through this site or any site service linked to, or any copying, displaying, or use\n thereof.\n
  • \n
  • \n As ParamInfo operates this site in the U.A.E, you agree to submit to the jurisdiction of the state\n without\n reference to its choice of law rules with respect to these terms of use and any legal action or\n proceeding\n relating to this site.\n
  • \n
  • \n In any legal action against ParamInfo, you specifically acknowledge that ParamInfo has the right to\n choose the\n jurisdiction where any legal action against us may be filed.\n
  • \n
  • \n By using this site, you agree that the laws of the State will govern any such proceedings, and we are\n able to\n make this decision regardless of your location or where you accessed the site.\n
  • \n
  • \n In addition to complying with the laws of the jurisdiction from which you are accessing this site, you\n agree\n not to access or use the material on this site in violation of such laws.\n
  • \n
  • \n Unless the contrary is explicitly stated herein, all information you submit through this site shall be\n deemed\n non-confidential and non-proprietary\n
  • \n
  • \n The information you submit here will be accurate and lawful, and you agree not to submit it unless you\n have\n the legal right to. As the Internet is an open medium, we recommend not submitting information you\n consider\n confidential.\n
  • \n
  • \n Unauthorized ideas submitted outside of established business relationships may not be considered by\n ParamInfo. The issue of such submissions must be handled with great care to safeguard our interests as\n well as\n those of our clients.\n
  • \n
  • \n Without an established business relationship, ParamInfo cannot treat any such submission confidentially.\n Thus,\n we ask you to refrain from submitting unauthorized ideas to ParamInfo via this site.\n
  • \n
  • \n ParamInfo may develop, use, and disclose similar ideas without compensating you or accounting to you\n when\n ideas are disclosed outside a pre-existing and documented confidential business relationship.\n
  • \n
  • \n ParamInfo will return or destroy any unapproved idea submission that has not been reviewed thoroughly.\n
  • \n
  • \n In any case, if ParamInfo feels reviewing the idea is appropriate, it does so with the understanding\n that\n ParamInfo will have no obligation to protect or compensate you for the disclosure of your idea.\n
  • \n
  • \n The terms of this stated policy apply to you if you submit any detailed information through this website\n to\n ParamInfo.\n
  • \n
\n
\n \n
\n
\n \n
\n
\n
"," \r\n\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\n@Component({\r\n selector: 'app-expectation',\r\n templateUrl: './expectation.component.html',\r\n styleUrls: ['./expectation.component.scss']\r\n})\r\nexport class ExpectationComponent implements OnInit {\r\n\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n constructor(public JobApplication: JobApplicationComponent, private toastr: ToastrService) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {}\r\n checkOpeningPREF() {\r\n if (this.JobApplication.candidateProfileDetails.epTakeHomeSalPerMonth == null || this.JobApplication.candidateProfileDetails.epTakeHomeSalPerMonth == \"\") {\r\n this.toastr.warning('Please enter expected salary in selected currency');\r\n return false;\r\n }\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n\r\n }\r\n save() {\r\n\r\n }\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n\r\n","
Expectation
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Expected Take Home Salary in AED
\r\n
:
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n UAE is an Income tax\r\n free country View More\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-anonymous-section',\n templateUrl: './anonymous-section.component.html',\n styleUrls: ['./anonymous-section.component.scss']\n})\nexport class AnonymousSectionComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n","\r\nvar preUrl = 'https://hireapi.paraminfo.com'\r\nexport const environment = {\r\n production: true,\r\n serverPath: preUrl,\r\n baseUrl: preUrl + '/api/v1',\r\n appUrl: 'https://hirecp.paraminfo.com', \r\n onlineStatusInterval: 10000,\r\n websiteUrl: 'https://paraminfo.com/careers',\r\n env_name: 'production',\r\n google: {\r\n login: {\r\n ClientId: \"433136606656-0t5vbq82i88hjjg7v8orri6dccfgqeec.apps.googleusercontent.com\"\r\n },\r\n picker: {\r\n // The Browser API key obtained from the Google API Console. - API key\r\n DeveloperKey: 'AIzaSyCITcpljUY9xOAaUy31-h_L8GR2NjFmoc8',\r\n ClientId: \"433136606656-0t5vbq82i88hjjg7v8orri6dccfgqeec.apps.googleusercontent.com\",\r\n // See \"Project number\" under \"IAM & Admin\" > \"Settings\"\r\n AppId: \"433136606656\",\r\n // Scope to use to access user's Drive items.\r\n Scope: 'https://www.googleapis.com/auth/drive.file'\r\n }\r\n },\r\n facebook: {\r\n login: {\r\n ClientId: \"541601724901353\"\r\n }\r\n }\r\n};\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { Component, EventEmitter, Input, OnInit, Output, ElementRef } from '@angular/core';\nimport { JobApplicationComponent } from '../../job-application.component';\nimport { CommonApiService } from '../../../../shared/services';\n\n@Component({\n selector: 'app-question-form',\n templateUrl: './question-form.component.html',\n styleUrls: ['./question-form.component.scss']\n})\nexport class QuestionFormComponent implements OnInit {\n @Input() application: any;\n @Input() currentOpeningPREF: any = {};\n @Input() fildOfCandidateDetails: any;\n @Output() valueChange = new EventEmitter();\n validationFlag: boolean = false;\n constructor(public JobApplication: JobApplicationComponent, private commonApiService: CommonApiService, private el: ElementRef) {\n // this.changeWizard = new EventEmitter();\n }\n next() {\n this.checkOpeningPREF();\n }\n previous() {\n this.previousCheckValue();\n }\n previousCheckValue() {\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\n this.valueChange.emit(this.currentOpeningPREF);\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\n if (ExistindexIs != -1) {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.valueChange.emit(this.currentOpeningPREF);\n } else {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.previousCheckValue();\n }\n }\n }\n CheckVaribale: any = {}\n checkOpeningPREF() {\n if (this.requiredOrNotFlag == 1) {\n if (this.JobApplication.application.openingQtns?.length > 0) {\n var listis = this.JobApplication.application.openingQtns.filter(q => q.Response == null || q.Response == \"\");\n if (listis.length > 0) {\n this.validationFlag = true;\n return false;\n } \n }\n }\n\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\n this.valueChange.emit(this.currentOpeningPREF);\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\n if (ExistindexIs != -1) {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\n this.valueChange.emit(this.currentOpeningPREF);\n } else {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\n this.checkOpeningPREF();\n }\n }\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\n\n }\n save() {\n\n }\n\n requiredOrNotFlag: number = 2;\n ngOnInit(): void {\n this.CheckVaribale = this.currentOpeningPREF;\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\n if (this.JobApplication.application.openingQtns == null || this.JobApplication.application.openingQtns.length == 0) {\n this.next();\n }\n }\n\n}\n","
Question Form
\n
\n
\n
\n
\n
\n

{{qtn.questionText}}

\n
\n \n\n
\n \n Required\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n Required\n \n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n\n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\r\nimport { BgVerificationComponent } from '../bg-verification/bg-verification.component';\r\nimport { CommonApiService } from '../../../shared/services';\r\nimport { BVGVerificationObject } from '../bgverification';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-permenant-address',\r\n templateUrl: './permenant-address.component.html',\r\n styleUrls: ['./permenant-address.component.scss']\r\n})\r\nexport class PermenantAddressComponent implements OnInit {\r\n selectedCity: any;\r\n\r\n cityId: number = null;\r\n datePickerConfig = {\r\n dateInputFormat: 'DD MMM YYYY',\r\n containerClass: 'theme-green',\r\n showWeekNumbers: false,\r\n showWeeks: false,\r\n isAnimated: true,\r\n adaptivePosition: true,\r\n width: 400,\r\n height: 300\r\n };\r\n validationFlag: boolean = false;\r\n maxDate: Date;\r\n constructor(public BgVerificationComponent: BgVerificationComponent, private commonApiService: CommonApiService, public bvgVerificationObject: BVGVerificationObject, private ToastrService: ToastrService, private router: Router, private route: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n\r\n this.maxDate = new Date();\r\n this.cityId = this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId;\r\n this.getCities();\r\n this.cityId = this.BgVerificationComponent.candidateBGVerificationData.permAddrCityID;\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrCityID = 0;\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrResiSince != null || this.BgVerificationComponent.candidateBGVerificationData.permAddrResiSince != undefined) {\r\n var dateis = new Date(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiSince);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiSince = new Date(x);\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrResiTill != null || this.BgVerificationComponent.candidateBGVerificationData.permAddrResiTill != undefined) {\r\n var dateis = new Date(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiTill);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiTill = new Date(x);\r\n }\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo.split(\" \");\r\n if (cont.length > 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo=\"\"\r\n }\r\n if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo = cont[1];\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code = cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code = \"\";\r\n }\r\n }\r\n }\r\n\r\n onDateChange(newDate: Date) {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiSince = new Date(newDate);\r\n }\r\n onDateChangeTill(newDate: Date) {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiTill = new Date(newDate);\r\n }\r\n CitiesList: any = [];\r\n getCities() {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrCountryID != null) {\r\n this.commonApiService.getCities(this.BgVerificationComponent.candidateBGVerificationData.permAddrCountryID).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CitiesList = data.result;\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrCityID = this.cityId;\r\n }\r\n }\r\n }, error => {\r\n\r\n })\r\n } else {\r\n this.CitiesList = [];\r\n }\r\n }\r\n\r\n saveBGVDetails() {\r\n this.validationFlag = true;\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddress == null || this.BgVerificationComponent.candidateBGVerificationData.permAddress == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrLandMark == null || this.BgVerificationComponent.candidateBGVerificationData.permAddrLandMark == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType == null || Number.isNaN(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType)) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrCountryID == null || Number.isNaN(this.BgVerificationComponent.candidateBGVerificationData.permAddrCountryID)) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrCityID == null || this.BgVerificationComponent.candidateBGVerificationData.permAddrCityID==0|| Number.isNaN(this.BgVerificationComponent.candidateBGVerificationData.permAddrCityID)) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactPerson == null || this.BgVerificationComponent.candidateBGVerificationData.permAddrContactPerson == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code == null || this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo == null || this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo == \"\") {\r\n return false;\r\n } else {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo.length < 8) {\r\n return false;\r\n }\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrResiSince == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrResiTill == null) {\r\n return false;\r\n }\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo = this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo;\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInMonths = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInMonths + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInYears = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInYears + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = parseInt(this.BgVerificationComponent.candidateBGVerificationData.noOfKids + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType + \"\");\r\n\r\n this.commonApiService.updateBGVericationData(this.BgVerificationComponent.candidateBGVerificationData).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code = \"\";\r\n //this.ToastrService.success(\"Updated successfully\");\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid + '/' + this.BgVerificationComponent.profileid + '/present-address']);\r\n\r\n }\r\n } else {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo.split(\" \");\r\n if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo = cont[1];\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code = cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code = \"\";\r\n }\r\n }\r\n }\r\n }, (error) => {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo.split(\" \");\r\n if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo = cont[1];\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code = cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code = \"\";\r\n }\r\n }\r\n this.ToastrService.error(error.error.meta.error.errorMessage);\r\n })\r\n }\r\n\r\n nextPage() {\r\n this.validationFlag = true;\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddress == null || this.BgVerificationComponent.candidateBGVerificationData.permAddress == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrLandMark == null || this.BgVerificationComponent.candidateBGVerificationData.permAddrLandMark == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrCountryID == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrCityID == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactPerson == null || this.BgVerificationComponent.candidateBGVerificationData.permAddrContactPerson == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code == null || this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo == null || this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrResiSince == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrResiTill == null) {\r\n return false;\r\n }\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo = this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo;\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInMonths = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInMonths + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInYears = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInYears + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = parseInt(this.BgVerificationComponent.candidateBGVerificationData.noOfKids + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType + \"\");\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid +'/'+ this.BgVerificationComponent.profileid + '/present-address']);\r\n\r\n }\r\n previousPage() {\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo = this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo;\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid +'/'+ this.BgVerificationComponent.profileid + '/family-details']);\r\n\r\n }\r\n\r\n isNumber(value) {\r\n return Number.isNaN(value);\r\n }\r\n}\r\n","
\n \n
\n
\n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n
\n \n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n \n
\n \n Required\n \n
\n
\n
\n \n \n {{ c.name }}\n \n
\n \n Required\n \n
\n
\n
\n \n \n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n
\n
\n \n \n \"{{{{ c.phonecode }}\n \n \n
\n
\n \n
\n
\n
\n \n Required\n \n
\n
\n \n Enter valid number\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n \n
\n
\n
\n
\n \n
\n \n\n \n
\n
\n
\n
\n
\n","import { Component, ViewChild, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport {\n debounceTime,\n distinctUntilChanged,\n map,\n filter,\n} from 'rxjs/operators';\nimport { CommonApiService, HomePageService } from '../../../shared/services';\nimport { HomeComponent } from '../home.component';\nimport {\n SmoothScrollService,\n ISmoothScrollOption,\n} from '@boatzako/ngx-smooth-scroll';\n\n@Component({\n selector: 'app-search-job',\n templateUrl: './search-job.component.html',\n styleUrls: ['./search-job.component.scss'],\n})\nexport class SearchJobComponent implements OnInit {\n searchJob: any;\n slideConfig: any;\n searchSkils: any = [];\n jobsAvailableLists: any = [];\n selectedCity: any;\n items: any = [];\n CountriesList: any = [];\n TechnologysList: any = [];\n TechnologysList_copy: any = [];\n countryId: any = '';\n constructor(\n private commonApiService: CommonApiService,\n private homePageService: HomePageService,\n private router: Router,\n public homeComponent: HomeComponent,\n private smooth: SmoothScrollService\n ) {}\n totalJobCount: number = 0;\n jobAvailableList: any = [];\n heroText = 'WE ARE';\n hiring = 'HIRING';\n herSubtext = 'local. remote. global opportunities';\n\n formatter = (job: JobInterface) => job.OpeningName;\n\n navigateJobList() {\n this.router.navigate(['job-listing'], {\n queryParams: { searchObj: JSON.stringify(this.searchSkils) },\n });\n }\n ngOnInit() {\n this.getCountries();\n this.getTechnology();\n this.getCountryWiseJobCounts();\n // this.smooth.smoothScrollToAnchor();\n }\n jobAvailableFilter(id) {}\n getCountries() {\n this.commonApiService.getCountries().subscribe(\n (data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.CountriesList = data.result;\n } else {\n }\n }\n },\n (error) => {}\n );\n }\n getCountryWiseJobCounts() {\n this.commonApiService.getCountryWiseJobCounts().subscribe(\n (data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.jobAvailableList = data.result;\n for (var i = 0; i < this.jobAvailableList.length; i++) {\n //loop through the array\n this.totalJobCount += this.jobAvailableList[i].jobCount; //Do the math!\n }\n } else {\n }\n }\n },\n (error) => {}\n );\n }\n\n getTechnology() {\n this.homePageService.getTechnologys().subscribe(\n (data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.TechnologysList = data.result;\n this.TechnologysList = this.TechnologysList.splice(0, 3000);\n //this.TechnologysList.filter((t) => { this.TechnologysList_copy.push({ \"display\": t.title, \"value\": t.id, \"cetagiry\": \"TE\" }); })\n } else {\n }\n }\n },\n (error) => {}\n );\n }\n\n getAllJobsList() {\n let skillIs: any = [];\n this.searchSkils.forEach((element) => {\n if (element.category == undefined) {\n skillIs.push({ value: 0, category: 'JR', display: element.display });\n } else {\n skillIs.push({\n value: element.value,\n category: 'TE',\n display: element.display,\n });\n }\n });\n\n this.homeComponent.searchSkils = skillIs;\n this.homeComponent.getAllJobsList();\n }\n}\n\n// interface JobInterface {id: number, name: string};\ninterface JobInterface {\n City?: any;\n Country?: any;\n Currency?: any;\n Exp_Max_Yrs?: any;\n Exp_Min_Yrs?: any;\n JobDescription?: any;\n JobRole?: any;\n Job_Desc?: any;\n OpID?: any;\n OpType?: any;\n OpeningName?: any;\n SkillSet?: any;\n keySkills?: any;\n updatedDate?: any;\n updatedDateString?: any;\n}\n","
\r\n
\r\n
\r\n
\r\n

{{ heroText }} {{hiring}}

\r\n

{{ herSubtext }}

\r\n
\r\n
\r\n

Find an opportunity matching your skills...

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Location\r\n {{ c.name }}\r\n \r\n
\r\n
\r\n \r\n

Search

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{totalJobCount}}+ Jobs Available

\r\n

No Opening on Website

\r\n
\r\n
\r\n
\r\n \"{{jobAvailableList.iso}}\"\r\n
\r\n
\r\n\r\n {{ (jobAvailableList?.countryName =='United Arab Emirates' ? 'U.A.E' : jobAvailableList?.countryName)\r\n || '-' }}
\r\n

{{ jobAvailableList?.jobCount || '-' }}

\r\n Click Here to view >\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import {\n Component,\n OnInit,\n EventEmitter,\n ViewChild,\n ElementRef,\n} from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { ToastrService } from 'ngx-toastr';\nimport { CommonApiService } from '../../../shared/services';\n\n@Component({\n selector: 'app-document-submission',\n templateUrl: './document-submission.component.html',\n styleUrls: ['./document-submission.component.scss'],\n})\nexport class DocumentSubmissionComponent implements OnInit {\n public onClose: EventEmitter = new EventEmitter();\n @ViewChild('documents', { read: ElementRef })\n documents: ElementRef;\n pendingDoc: any;\n docType: any;\n pendingDocumentType: any = [];\n selectedDocId: any = \"\";\n videoRecorder: any;\n constructor(\n public bsModalRef: BsModalRef,\n private toastr: ToastrService,\n private commonApiService: CommonApiService\n ) { }\n isVideoRec: boolean = false;\n\n isVideoEnable(isVideo) {\n this.isVideoRec = isVideo;\n }\n updatePlayer(e) {\n this.videoRecorder = e.rec;\n }\n ngOnInit() {\n this.pendingDocumentType = this.pendingDoc?.filter(\n (d) => d.docStatus == 7\n );\n }\n fileName: string = \"Upload Document\";\n validationFlag: boolean = false;\n selectedFileUpload() {\n const files = (this.documents.nativeElement as HTMLInputElement).files;\n if (files.length > 0) {\n this.fileName = files[0].name.replace(/\\s+/g, '').trim();\n } else {\n this.fileName = \"Upload Document\";\n }\n }\n resetFile(value) {\n this.videoRecorder = \"\";\n this.isVideoRec = false;\n\n if (value == 'Video Profile') {\n this.isVideoRec = true;\n }\n }\n\n uploadDocument() {\n this.validationFlag = true;\n if (this.selectedDocId == \"\") {\n return false;\n }\n var objofDoc = this.pendingDocumentType.filter(\n (d) => d.docTypeName == this.selectedDocId\n )[0];\n // const files = (this.documents.nativeElement as HTMLInputElement).files;\n var data = this.videoRecorder;\n if (data == undefined && this.isVideoRec) {\n this, this.toastr.error('Upload File');\n return;\n }\n var formDt = new FormData();\n let sasticval: any = 1;\n\n if (this.isVideoRec) {\n var data = this.videoRecorder;\n if (data.name) {\n formDt.append('files', data, data.name.replace(/\\s+/g, '').trim());\n }\n } else {\n const files = (this.documents.nativeElement as HTMLInputElement).files;\n\n for (let i = 0; i < files.length; i++) {\n formDt.append('Files', files[i], files[i].name.replace(/\\s+/g, '').trim());\n }\n }\n\n formDt.append('Id', objofDoc.id);\n formDt.append('CandId', objofDoc.candProfId);\n formDt.append('JobId', objofDoc.joid);\n formDt.append('FileGroup', objofDoc.fileGroup);\n formDt.append('DocType', this.selectedDocId); //objofDoc.docType\n this.validationFlag = false;\n this.commonApiService.UpdateCandidateFile(formDt).subscribe((data: any) => {\n if (data.status == true) {\n this.validationFlag = false;\n this.fileName = \"Upload Document\";\n this.toastr.success(\"File uploaded successfully\");\n this.pendingDocumentType = this.pendingDocumentType.filter((d) => d.docTypeName != this.selectedDocId);\n if (this.pendingDocumentType.length == 0) {\n this.bsModalRef.hide();\n }\n this.selectedDocId = \"\";\n\n }\n },\n (error) => { }\n );\n }\n}\n","
\r\n

Document/File Submission

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Required\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n","import { Injectable } from '@angular/core';\nimport { HubConnection, HubConnectionBuilder, LogLevel } from '@microsoft/signalr';\nimport { MessagePackHubProtocol } from '@microsoft/signalr-protocol-msgpack';\nimport { BehaviorSubject } from 'rxjs';\nimport { environment } from '../../../environments/environment';\nimport { HttpClient } from '@angular/common/http';\nimport { NotificationsService } from './notifications.service';\nimport { ChatCommunicationService } from './chat-communication.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SignalrNotificationsService {\n\n private hubConnection: HubConnection;\n //public messages: ChatMessage[] = [];\n private apiUrl = 'https://localhost:44381/api/chat';\n connectionId: string = null;\n\n private srConnectionIdSubject = new BehaviorSubject(this.connectionId);\n castrConnectionId = this.srConnectionIdSubject.asObservable();\n\n private logoutSubject = new BehaviorSubject(false);\n castlogout = this.logoutSubject.asObservable();\n\n constructor(\n private http: HttpClient,\n private notificationService: NotificationsService,\n private chatService: ChatCommunicationService\n ) { }\n\n\n\n public connect = () => {\n this.startConnection();\n this.addListeners();\n }\n\n private getConnection(): HubConnection {\n return new HubConnectionBuilder()\n .withUrl(environment.serverPath + '/notification')\n .withAutomaticReconnect()\n .withHubProtocol(new MessagePackHubProtocol())\n // .configureLogging(LogLevel.Trace)\n .build();\n }\n\n private startConnection() {\n this.hubConnection = this.getConnection();\n\n this.hubConnection.start()\n .then(() => console.log('notification connection started'))\n .catch((err) => console.log('error while establishing notification signalr connection: ' + err))\n }\n\n public disconnectConnection() {\n if (this.hubConnection != undefined) {\n this.hubConnection.stop()\n .then(() => { })\n .catch((err) => console.log(' ' + err))\n }\n }\n\n private addListeners() {\n this.hubConnection.on(\"notificationReceivedFromApi\", (data: string) => {\n this.notificationService.getNotifications();\n let messageData = JSON.parse(data); debugger;\n if (messageData.IsAudioNotify == true) {\n let x: any = document.getElementById(\"notificationAudio\");\n if (x) {\n x.play();\n }\n else{\n console.log(\"notificationAudio not found\");\n }\n }\n })\n this.hubConnection.on(\"notificationReceivedFromHub\", (data: string) => {\n });\n this.hubConnection.on(\"chatMessageReceived\", (data: string) => {\n let messageData = JSON.parse(data);\n this.chatService.updateChatMessages(messageData);\n });\n this.hubConnection.on(\"logoutFromAllDevices\", (data: string) => {\n this.logoutSubject.next(true);\n });\n this.hubConnection.on(\"newUserConnected\", _ => {\n if (this.connectionId != this.hubConnection.connectionId) {\n this.connectionId = this.hubConnection.connectionId;\n this.srConnectionIdSubject.next(this.connectionId);\n }\n });\n }\n}\n","\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\n\r\n@Component({\r\n selector: 'app-contact-detais',\r\n templateUrl: './contact-detais.component.html',\r\n styleUrls: ['./contact-detais.component.scss']\r\n})\r\nexport class ContactDetaisComponent implements OnInit {\r\n\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n countryCodePhoneNumber: any = 0;\r\n altCountryCodePhoneNumber: any = 0;\r\n constructor(public JobApplication: JobApplicationComponent) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n if (this.afterValidation == false) {\r\n if (this.countryCodePhoneNumber != \"\") {\r\n this.JobApplication.candidateProfileDetails.contactNo = this.countryCodePhoneNumber + \" \" + this.JobApplication.candidateProfileDetails.contactNo;\r\n } else {\r\n this.JobApplication.candidateProfileDetails.contactNo = this.JobApplication.candidateProfileDetails.contactNo;\r\n }\r\n if (this.altCountryCodePhoneNumber != \"\" && this.altCountryCodePhoneNumber != \"undefined\" && this.altCountryCodePhoneNumber != \"+undefined\") {\r\n this.JobApplication.candidateProfileDetails.alteContactNo = this.altCountryCodePhoneNumber + \" \" + this.JobApplication.candidateProfileDetails.alteContactNo;\r\n } else {\r\n this.JobApplication.candidateProfileDetails.alteContactNo = this.JobApplication.candidateProfileDetails.alteContactNo;\r\n }\r\n this.afterValidation = true;\r\n }\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {}\r\n afterValidation: boolean = false;\r\n validationFlag: boolean = false;\r\n checkOpeningPREF() {\r\n this.validationFlag = true;\r\n if (this.afterValidation == false) {\r\n if (this.JobApplication.candidateProfileDetails.contactNo == null || this.JobApplication.candidateProfileDetails.contactNo == \"\") {\r\n return false;\r\n } else {\r\n if (this.JobApplication.candidateProfileDetails.contactNo.length < 8) {\r\n return false;\r\n }\r\n }\r\n this.countryCodePhoneNumber = this.countryCodePhoneNumber.toString();\r\n if (this.countryCodePhoneNumber == null || this.countryCodePhoneNumber == \"\") {\r\n return false;\r\n }\r\n\r\n if (this.JobApplication.candidateProfileDetails.alteContactNo == null || this.JobApplication.candidateProfileDetails.alteContactNo == \"\") {\r\n return false;\r\n }\r\n this.altCountryCodePhoneNumber = this.altCountryCodePhoneNumber.toString();\r\n if (this.altCountryCodePhoneNumber == null || this.altCountryCodePhoneNumber == \"\") {\r\n return false;\r\n }\r\n\r\n if (this.JobApplication.candidateProfileDetails.contactNo == this.JobApplication.candidateProfileDetails.alteContactNo) {\r\n return false;\r\n }\r\n\r\n\r\n // this.JobApplication.candidateProfileDetails.contactNo = this.JobApplication.candidateProfileDetails.contactNo\r\n if (this.altCountryCodePhoneNumber != null && this.altCountryCodePhoneNumber != \"\" && this.altCountryCodePhoneNumber != \"undefined\") {\r\n if (this.JobApplication.candidateProfileDetails.alteContactNo != null && this.JobApplication.candidateProfileDetails.alteContactNo != \"\") {\r\n if (this.JobApplication.candidateProfileDetails.alteContactNo.length < 8) {\r\n return false;\r\n }\r\n }\r\n this.JobApplication.candidateProfileDetails.alteContactNo = this.altCountryCodePhoneNumber + \" \" + this.JobApplication.candidateProfileDetails.alteContactNo;\r\n } else {\r\n this.JobApplication.candidateProfileDetails.alteContactNo = this.JobApplication.candidateProfileDetails.alteContactNo;\r\n }\r\n this.JobApplication.candidateProfileDetails.alteContactNo = this.JobApplication.candidateProfileDetails.alteContactNo;\r\n this.JobApplication.candidateProfileDetails.contactNo = this.countryCodePhoneNumber + \" \" + this.JobApplication.candidateProfileDetails.contactNo;\r\n }\r\n this.afterValidation = true;\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n\r\n }\r\n save() {\r\n\r\n }\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n if (this.JobApplication.candidateProfileDetails.contactNo != null && this.JobApplication.candidateProfileDetails.contactNo != undefined) {\r\n var cont = this.JobApplication.candidateProfileDetails.contactNo.split(\" \");\r\n if (cont.length > 2) {\r\n this.JobApplication.candidateProfileDetails.contactNo = \"\";\r\n } else if (cont.length == 2) {\r\n this.JobApplication.candidateProfileDetails.contactNo = cont[1];\r\n cont[0] = cont[0];\r\n this.countryCodePhoneNumber = cont[0];\r\n } else if (cont.length == 1) {\r\n this.JobApplication.candidateProfileDetails.contactNo = cont[0];\r\n this.countryCodePhoneNumber = \"\";\r\n }\r\n }\r\n if (this.JobApplication.candidateProfileDetails.alteContactNo != null && this.JobApplication.candidateProfileDetails.alteContactNo != undefined) {\r\n var cont = this.JobApplication.candidateProfileDetails.alteContactNo.split(\" \");\r\n if (cont.length == 2) {\r\n this.JobApplication.candidateProfileDetails.alteContactNo = cont[1];\r\n cont[0] = cont[0];\r\n this.altCountryCodePhoneNumber = cont[0];\r\n } else if (cont.length == 1) {\r\n this.JobApplication.candidateProfileDetails.alteContactNo = cont[0];\r\n this.altCountryCodePhoneNumber = \"\";\r\n }\r\n }\r\n }\r\n\r\n addValue() {\r\n if (this.countryCodePhoneNumber != null && this.countryCodePhoneNumber != \"\") {\r\n this.countryCodePhoneNumber = this.countryCodePhoneNumber;\r\n } else {\r\n this.countryCodePhoneNumber = \"\";\r\n }\r\n }\r\n alternatePincode() {\r\n if (this.altCountryCodePhoneNumber != null && this.altCountryCodePhoneNumber != \"\") {\r\n this.altCountryCodePhoneNumber = this.altCountryCodePhoneNumber.toString();\r\n } else {\r\n this.altCountryCodePhoneNumber = \"\";\r\n }\r\n }\r\n\r\n}\r\n\r\n\r\n","
Contact Details
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

Phone Number

\r\n
\r\n
\r\n \r\n \r\n \"{{ {{ c.phonecode }}\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n \r\n Enter valid number\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Alternate Phone Number

\r\n\r\n
\r\n
\r\n \r\n \r\n \"{{\r\n {{ c.phonecode }}\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n \r\n Duplicate Number\r\n \r\n
\r\n
\r\n \r\n Enter valid number\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Please enter a valid alternate\r\n number because we don't want you to miss any updates from us.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","\n/*\n *ngFor=\"let c of oneDimArray | sortBy:'asc/desc'\"\n *ngFor=\"let c of arrayOfObjects | sortBy:'asc/desc':'propertyName'\"\n*/\nimport { Pipe, PipeTransform } from '@angular/core';\nimport { orderBy } from 'lodash';\n\n@Pipe({ name: 'sortBy' })\nexport class SortByPipe implements PipeTransform {\n\n transform(value: any[], order = '', column: string = ''): any[] {\n if (!value || order === '' || !order) { return value; } // no array\n if (value.length <= 1) { return value; } // array with only one item\n if (!column || column === '') { \n if(order==='asc'){return value.sort()}\n else{return value.sort().reverse();}\n } // sort 1d array\n return orderBy(value, [column], [order]);\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, Router, CanActivate } from '@angular/router';\r\nimport { AuthenticationService } from '../services/authentication.service';\r\n\r\n\n\n@Injectable({ providedIn: 'root' })\nexport class AuthGuard implements CanActivate {\n\n constructor(\r\n private router: Router,\r\n private authenticationService: AuthenticationService\r\n )\r\n {\r\n \r\n }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n const currentUser = this.authenticationService.currentUserValue;\r\n if (currentUser != null) {\r\n\r\n // logged in so return true\r\n return true;\r\n }\r\n\r\n if (route.queryParams.jobid != undefined && route.queryParams.jobid != null) {\r\n this.router.navigate(['/login'], { queryParams: route.queryParams });\r\n return false;\r\n }\r\n\r\n\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/login']);\r\n return false;\r\n }\n\n}\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser'\r\n\r\n@Pipe({ name: 'safeHtml' })\r\nexport class SafeHtmlPipe implements PipeTransform {\r\n constructor(private sanitized: DomSanitizer) { }\r\n transform(value: string) {\r\n return this.sanitized.bypassSecurityTrustHtml(value);\r\n }\r\n}\r\n\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { SliderConfigService, CommonApiService } from '../../../shared/services';\r\nimport { ProfileComponent } from '../profile.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-similar-jobs',\r\n templateUrl: './similar-jobs.component.html',\r\n styleUrls: ['./similar-jobs.component.scss']\r\n})\r\nexport class SimilarJobsComponent implements OnInit {\r\n //@Input() similarJobs: any;\r\n slideConfig: any;\r\n countryId: any = \"\";\r\n constructor(\r\n private commonApiService: CommonApiService,\r\n private router: Router, private route: ActivatedRoute,\r\n private sliderConfigService: SliderConfigService,\r\n public ProfileComponent: ProfileComponent\r\n ) {\r\n this.slideConfig = this.sliderConfigService.sliderConfig({ slidesToShow: 3, slidesToScroll: 3, infinite: false, autoplay: false });\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.countryId = this.ProfileComponent?.candidateProfileDetails.countryId;\r\n if (this.ProfileComponent?.candidateProfileDetails?.countryId == null || this.ProfileComponent?.candidateProfileDetails?.countryId == undefined) {\r\n this.countryId = '';\r\n }\r\n\r\n }\r\n navigateJobDetails(joblist: any) {\r\n this.router.navigate(['app/jobdetails'], { queryParams: { jobid: joblist.jobId, sf: 5 } });\r\n }\r\n\r\n navigateViewAllJobDetails() {\r\n var profileId = 0;\r\n if (this.ProfileComponent?.candidateProfileDetails?.canPrfId != null || this.ProfileComponent?.candidateProfileDetails?.canPrfId != undefined) {\r\n profileId = this.ProfileComponent?.candidateProfileDetails?.canPrfId;\r\n }\r\n this.router.navigate(['app/job-listing'], { queryParams: { profileId: profileId } });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
0\">\r\n
\r\n

\r\n Similar Jobs View All\r\n \r\n

\r\n
\r\n
2\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{ similarJob.jobTitle }} - {{similarJob.jobId}}\r\n

\r\n \r\n \"location\"\r\n {{similarJob.cityName}}/{{similarJob.countryName}}\r\n \r\n

\r\n N/A\r\n

\r\n
\r\n
\r\n
\r\n \r\n Experience \r\n\r\n {{ similarJob.minExp }}-{{similarJob.maxExp}}Years\r\n
\r\n \r\n \r\n Posted Date \r\n \r\n {{ similarJob.postedDate | date: \"dd MMMM YYYY \" }}\r\n \r\n \r\n
\r\n
\r\n
\r\n View & Apply \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n VIEW ALL\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Injectable } from '@angular/core';\r\nimport { Title, Meta } from '@angular/platform-browser';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MetaTagService {\r\n\r\n constructor(\r\n private title: Title,\r\n private meta: Meta\r\n ) { }\r\n\r\n updateShareFacebook(url, type, section, siteName, title, description, imageUrl) {\r\n document.getElementsByTagName(\"title\")[0].innerText = \"Career Portal : \" + title;\r\n if (document.querySelector(\"meta[name=description]\")) {\r\n if (document.querySelector(\"meta[name=description]\").getAttribute(\"content\") !== description) {\r\n document.querySelector(\"meta[name=description]\").setAttribute(\"content\", description);\r\n }\r\n }\r\n else {\r\n this.meta.addTag({ name: 'description', content: description });\r\n }\r\n\r\n this.meta.addTag({ property: 'og:type', content: type });\r\n this.meta.addTag({ property: 'article:section', content: section });\r\n var currentDt = new Date();\r\n this.meta.addTag({\r\n property: 'article:updated_time', content: currentDt.getUTCFullYear() + \"-\" +\r\n (currentDt.getUTCMonth() < 10 ? \"0\" + currentDt.getUTCMonth() : \"\" + currentDt.getUTCMonth()) + \"-\" +\r\n (currentDt.getUTCDate() < 10 ? \"0\" + currentDt.getUTCDate() : \"\" + currentDt.getUTCDate()) + \"T\" +\r\n (currentDt.getUTCHours() < 10 ? \"0\" + currentDt.getUTCHours() : \"\" + currentDt.getUTCHours()) + \":\" +\r\n (currentDt.getUTCMinutes() < 10 ? \"0\" + currentDt.getUTCMinutes() : \"\" + currentDt.getUTCMinutes()) + \":\" +\r\n (currentDt.getUTCSeconds() < 10 ? \"0\" + currentDt.getUTCSeconds() : \"\" + currentDt.getUTCSeconds()) + \"+00:00\"\r\n });\r\n this.meta.addTag({ property: 'og:title', content: title });\r\n this.meta.addTag({ property: 'og:description', content: description });\r\n this.meta.addTag({ property: 'og:url', content: url });\r\n this.meta.addTag({ property: 'og:site_name', content: siteName });\r\n this.meta.addTag({ property: 'og:image', content: imageUrl });\r\n this.meta.addTag({ property: 'og:image:width', content: '940' });\r\n this.meta.addTag({ property: 'og:image:height', content: '492' });\r\n this.meta.addTag({ property: 'og:image:alt', content: title });\r\n\r\n //\r\n this.meta.addTag({ name: 'twitter:card', content: \"summary_large_image\" });\r\n this.meta.addTag({ name: 'twitter:title', content: title });\r\n this.meta.addTag({ name: 'twitter:description', content: description });\r\n this.meta.addTag({ name: 'twitter:image', content: imageUrl });\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\nimport { environment } from '../../../../src/environments/environment';\nimport { CommonApiService, HomePageService } from '../../shared/services';\n\n@Component({\n selector: 'app-home',\n templateUrl: './home.component.html',\n styleUrls: ['./home.component.scss'],\n})\nexport class HomeComponent implements OnInit {\n AllJobsList = [];\n searchSkils: any = [];\n openJoblistFlag: boolean = false;\n similarJobCount: number = 0;\n currentPage: number = 1;\n perPageCount: number = 20;\n countryID: any = '';\n constructor(private homePageService: HomePageService) {}\n\n ngOnInit(): void {\n this.getAllJobsList();\n\n window.location.href = environment.websiteUrl;\n }\n scrollToview() {}\n\n getAllJobsList() {\n this.AllJobsList = [];\n var obj = {\n perPage: this.perPageCount,\n currentPage: this.currentPage,\n countryId: this.countryID == '' ? null : this.countryID,\n searchKeyModel: this.searchSkils,\n };\n // var obj = `perPage=${this.perPageCount}¤tPage=${this.currentPage}&countryId=${this.countryID}&searchKey=${this.searchSkils}`;\n this.homePageService.getAllJobsList(obj).subscribe(\n (data: any) => {\n this.openJoblistFlag = true;\n if (data.status == true) {\n if (data.result != null) {\n this.AllJobsList = data.result.portalJobs;\n this.similarJobCount = data.result.portalJobCount;\n }\n }\n },\n (error) => {\n this.openJoblistFlag = true;\n }\n );\n }\n}\n","\r\n\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\n\r\n@Component({\r\n selector: 'app-rate-skills',\r\n templateUrl: './rate-skills.component.html',\r\n styleUrls: ['./rate-skills.component.scss']\r\n})\r\nexport class RateSkillsComponent implements OnInit {\r\n\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n createCandidateSkillViewModel: any;\r\n constructor(\r\n public JobApplication: JobApplicationComponent,\r\n private toastr: ToastrService,\r\n ) {\r\n // this.changeWizard = new EventEmitter();\r\n\r\n }\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {}\r\n validationFlag: boolean = false;\r\n checkOpeningPREF() {\r\n //sk.expInMonths == null \r\n this.validationFlag = false;\r\n if (this.JobApplication.candidateProfileDetails.createCandidateSkillViewModel?.length != 0) {\r\n this.JobApplication.candidateProfileDetails.createCandidateSkillViewModel.forEach((skil) => {\r\n var totalExp = [];\r\n skil.totalExp =skil.totalExp;\r\n if (skil.totalExp != \"\" && skil.totalExp != \"null\") {\r\n skil.totalExp = skil.totalExp + \"\";\r\n totalExp = skil.totalExp.split(\".\")\r\n if (totalExp.length == 1) {\r\n skil.expInYears = parseInt(totalExp[0]);\r\n }\r\n if (totalExp.length == 2) {\r\n skil.expInYears = parseInt(totalExp[0]);\r\n skil.expInMonths = parseInt(totalExp[1]);\r\n }\r\n } else {\r\n skil.expInYears = \"\";\r\n skil.expInMonths = \"\";\r\n }\r\n var expInYears = parseInt(skil.expInYears)\r\n var expInMonths = parseInt(skil.expInMonths)\r\n if (expInYears != null && expInYears > 0) {\r\n if (skil.expInMonths == null || skil.expInMonths == \"\") {\r\n skil.expInMonths = \"0\";\r\n }\r\n }\r\n if (expInYears == 0 && expInMonths == 0) {\r\n skil.selfRating = 0;\r\n }\r\n if (skil.expInYears == null || skil.expInYears == \"\") {\r\n if (skil.selfRating == null || skil.selfRating == \"\") {\r\n skil.selfRating = 0;\r\n }\r\n }\r\n })\r\n }\r\n\r\n if (this.JobApplication.candidateProfileDetails.createCandidateSkillViewModel?.length != 0) {\r\n var list = this.JobApplication.candidateProfileDetails.createCandidateSkillViewModel.filter((sk) => { return (sk.expInYears === null || sk.expInYears === \"\") || (sk.technologyId == null || sk.technologyId == \"\") })\r\n if (list.length > 0) {\r\n this.validationFlag = true;\r\n return false;\r\n }\r\n var list1 = this.JobApplication.candidateProfileDetails.createCandidateSkillViewModel.filter((sk) => { return (parseInt(sk.expInYears) > 0 || parseInt(sk.expInMonths) > 0) && (sk.selfRating == 0 || sk.selfRating == null) })\r\n if (list1.length > 0) {\r\n this.validationFlag = true\r\n return false;\r\n }\r\n if (list.length == 0) {\r\n var valueArr = this.JobApplication.candidateProfileDetails.createCandidateSkillViewModel.map(function (item) { return item.technologyId });\r\n var isDuplicate = valueArr.some(function (item, idx) {\r\n return valueArr.indexOf(item) != idx\r\n });\r\n if (isDuplicate) {\r\n this.toastr.warning('Remove duplicate Skill');\r\n return false;\r\n }\r\n }\r\n\r\n }\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n //if (AvailindexIs == 14) {\r\n // AvailindexIs = 13;\r\n //}\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1]?.fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1]?.dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1]?.dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[14];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[14];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n\r\n }\r\n save() {\r\n\r\n }\r\n //addSkill() {\r\n // var obj = {\r\n // Id: 0,\r\n // expInMonths: \"\",\r\n // expInYears: \"\",\r\n // skillLevel: \"\",\r\n // skillLevelId: 0,\r\n // technologyId: 0,\r\n // technologyName: \"\",\r\n // selfRating: 0,\r\n // IsCanSkill: true,\r\n // isNewTechnology: true\r\n // }\r\n // this.JobApplication.candidateProfileDetails.createCandidateSkillViewModel.push(obj)\r\n //}\r\n\r\n //removeSkills(index) {\r\n // this.JobApplication.candidateProfileDetails.createCandidateSkillViewModel.splice(index, 1);\r\n //}\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n var createCandidateSkillViewModelArray = Object.assign([], this.JobApplication.candidateProfileDetails.createCandidateSkillViewModel);\r\n this.createCandidateSkillViewModel = createCandidateSkillViewModelArray.length;\r\n\r\n }\r\n monthsValidtion(event, totalExp) {\r\n if (event.target.value != null && event.target.value != \"\") {\r\n if (50 > parseInt(event.target.value)) {\r\n var mon = event.target.value.split(\".\");\r\n if (mon.length == 2) {\r\n if (mon[1] != null) {\r\n if (parseInt(mon[1]) > 11) {\r\n totalExp=event.target.value = mon[0] + \".\" + \"11\";\r\n }\r\n }\r\n }\r\n } else {\r\n totalExp=event.target.value = 50\r\n }\r\n }\r\n totalExp = event.target.value;\r\n return event.target.value;\r\n }\r\n isNumberKey(evt) {\r\n var charCode = (evt.which) ? evt.which : evt.keyCode;\r\n if (charCode != 46 && charCode > 31\r\n && (charCode < 48 || charCode > 57))\r\n return false;\r\n\r\n return true;\r\n }\r\n}\r\n","
Personal Information
\r\n
\r\n
\r\n
\r\n
Skill
\r\n
Total Experience
\r\n
Self Rating
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{ rateSkillList.technologyName }}\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
Domain
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ skillSetList.title }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
0 || rateSkillList.totalExp === '0') && validationFlag) || (!( rateSkillList.selfRating > 0) && validationFlag)\">\r\n Required\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\nimport { AuthenticationService } from '../../core/services/authentication.service';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport {Location} from '@angular/common';\n\n@Component({\n selector: 'app-forgot-password',\n templateUrl: './forgot-password.component.html',\n styleUrls: ['./forgot-password.component.scss']\n})\nexport class ForgotPasswordComponent implements OnInit {\n\n fpForm: FormGroup;\n submitted = false;\n loader: boolean = false;\n requestSuccess: boolean = false;\n constructor(\n private authenticationService: AuthenticationService,\n private formBuilder: FormBuilder,\n private toastr: ToastrService,\n private _location: Location\n ) { }\n\n ngOnInit() {\n\n this.fpForm = this.formBuilder.group({\n email: ['', [Validators.required, Validators.email]]\n }, {\n });\n }\n get f() { return this.fpForm.controls; }\n\n onSubmit() {\n this.submitted = true;\n if (this.fpForm.invalid) {\n return;\n }\n this.loader = true;\n this.authenticationService.forgetPassword(this.fpForm.controls.email.value)\n .subscribe((resp) => {\n this.loader = false;\n if (resp != null && resp.status == true) {\n this.requestSuccess = true;\n }\n else {\n this.toastr.error(resp != null ? resp.message : \"Enter email not found.\");\n }\n \n }, (error) => {\n this.loader = false;\n this.toastr.error(\"Something went wrong, Please try again.\");\n })\n }\n\n backClicked() {\n this._location.back();\n }\n\n}\n","
\r\n
\r\n \"logo\"\r\n
\r\n
\r\n
\r\n
\r\n Reset password link has been sent to the registered Email ID.\r\n \r\n
\r\n\r\n \r\n

Forgot Password?

\r\n Enter the registered Email ID to Reset password.\r\n
\r\n
\r\n \r\n \r\n
\r\n Required\r\n \r\n Invalid Email\r\n \r\n
\r\n
\r\n
\r\n Back to Login\r\n
\r\n \r\n
\r\n
\r\n
\r\n
","
\n
\n\n
\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n Required\n \n
\n
\n
\n
\n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n \n
\n \n \n
\n
\n
\n
importance of interview slot
\n
Your profile has been shortlisted by the client from many other candidatures directly by the client
\n\n
Mode of interview
\n
Face2Face, Virtual
\n
\n
\n\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { ToastrService } from 'ngx-toastr';\nimport { JobApplyComponent } from '../job-apply.component';\nimport { DatePipe } from '@angular/common';\nimport { CommonApiService } from '../../../shared/services';\nimport { Router } from '@angular/router';\nimport { deviceTypes } from '../../../core/models/enums';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\nimport { first } from 'rxjs/operators';\n\n@Component({\n selector: 'app-job-apply-interview-availability',\n templateUrl: './job-apply-interview-availability.component.html',\n styleUrls: ['./job-apply-interview-availability.component.scss']\n})\nexport class JobApplyInterviewAvailabilityComponent implements OnInit {\n @Input() application: any;\n @Input() currentOpeningPREF: any = {};\n @Input() fildOfCandidateDetails: any;\n @Output() valueChange = new EventEmitter();\n @Input() currentPage:number;\n @Input() currentWizard:number;\n\n validationFlag: boolean = true;\n\n constructor(public JobApplication: JobApplyComponent,\n private datePipe: DatePipe,\n private router: Router,\n private breakpointObserver: BreakpointObserver,\n private apiService: CommonApiService,\n private toastr: ToastrService) {\n\n }\n\n ngOnInit() {\n\n\n }\n defaultNonAvailablities = ['Reschedule', 'Currently out of station', 'Looking for virtual interview', 'Health/Medical Issues', 'Others']\n interviewFaceToFaceReasonChoice: any;\n\n isSubmit: boolean = false;\n isLoader: boolean = false;\n\n \n checkNullableSpecialization(name:string) {\n if (\n this.JobApplication.candidateProfileDetails[name] != null ||\n this.JobApplication.candidateProfileDetails[name] != undefined\n ) {\n if (\n this.JobApplication.candidateProfileDetails[name].length > 0\n ) {\n this.JobApplication.candidateProfileDetails[name].forEach(\n (element) => {\n \n if (element.expInMonths == null || element.expInMonths == '') {\n element.expInMonths = 0;\n }\n if (element.expInYears == null || element.expInYears == '') {\n element.expInYears = 0;\n }\n if (element.selfRating == null || element.selfRating == '') {\n element.selfRating = 0;\n }\n }\n );\n }\n }\n }\n\n \n\n\n async getDeviceCategory() {\n \n let deviceType:number = deviceTypes.WEB;\n \n const MOBILE_BREAKPOINT = '(max-width: 599px)'; \n const TABLET_BREAKPOINT = '(min-width: 600px) and (max-width: 959px)'; \n const DESKTOP_BREAKPOINT = '(min-width: 960px)'; \n \n\n const state: BreakpointState = await this.breakpointObserver\n .observe([MOBILE_BREAKPOINT, TABLET_BREAKPOINT, DESKTOP_BREAKPOINT])\n .pipe(first())\n .toPromise();\n\n\n if (state.breakpoints[MOBILE_BREAKPOINT]) {\n deviceType = deviceTypes.MOBILE;\n } else if (state.breakpoints[TABLET_BREAKPOINT]) {\n deviceType = deviceTypes.TAB;\n } else if (state.breakpoints[DESKTOP_BREAKPOINT]) {\n deviceType = deviceTypes.WEB;\n } else {\n deviceType = deviceTypes.WEB;\n }\n\n return deviceType;\n\n\n \n }\n async nextClick() {\n this.isSubmit = true;\n this.isLoader = true;\n\n var formdt = new FormData();\n formdt.append('sourceId', this.JobApplication.sourceId);\n formdt.append('jobId', this.JobApplication.candidateProfileDetails.jobId);\n\n let deviceCategory = (await this.getDeviceCategory()).toString();\n\n formdt.append('PSDevice', deviceCategory);\n\n // if (this.JobApplication.candidateProfileDetails.validPpflag) {\n // formdt.append(\n // 'fullNameInPp',\n // this.JobApplication.candidateProfileDetails.fullNameInPp\n // );\n // formdt.append(\n // 'fullName',\n // this.JobApplication.candidateProfileDetails.fullNameInPp\n // );\n // } else {\n\n // }\n\n formdt.append(\n 'fullName',\n this.JobApplication.candidateProfileDetails.fullName\n );\n formdt.append('emailAddress', this.JobApplication.userPrimaryDetails.email);\n if (this.JobApplication.candidateProfileDetails.resume != null) {\n for (\n let i = 0;\n i < this.JobApplication.candidateProfileDetails.resume.length;\n i++\n ) {\n formdt.append(\n 'resume',\n this.JobApplication.candidateProfileDetails.resume[i],\n this.JobApplication.candidateProfileDetails.resume[i].name\n .replace(/\\s+/g, '')\n .trim()\n );\n }\n }\n if (this.JobApplication.googleDriveResumeFiles.length > 0) {\n formdt.append(\n 'resumeURL',\n this.JobApplication.googleDriveResumeFiles[0].url\n );\n formdt.append(\n 'resumeURLType',\n this.JobApplication.googleDriveResumeFiles[0].ResumeURLType\n );\n formdt.append('resume', '');\n }\n\n for (\n let i = 0;\n i < this.JobApplication?.candidateProfileDetails.paySlips?.length;\n i++\n ) {\n formdt.append(\n 'payslips',\n this.JobApplication?.candidateProfileDetails?.paySlips[i],\n this.JobApplication?.candidateProfileDetails?.paySlips[i]?.name\n ?.replace(/\\s+/g, '')\n .trim()\n );\n }\n\n // if (this.JobApplication.googleDrivePaySlipsFiles.length > 0) {\n // formdt.append(\n // 'paySlipUrls',\n // JSON.stringify(this.JobApplication.candidateProfileDetails.PaySlipsURL)\n // );\n // }\n\n formdt.append(\n 'paySlipUrls',\n JSON.stringify([])\n );\n\n if (this.JobApplication.candidateProfileDetails.remarks)\n formdt.append(\n 'remarks',\n this.JobApplication.candidateProfileDetails.remarks\n );\n\n if (\n this.application.candidatePrefVidPrfl &&\n !!this.JobApplication.candidateProfileDetails.candVideoProfile\n ) {\n for (\n let i = 0;\n i < this.JobApplication.candidateProfileDetails.candVideoProfile.length;\n i++\n ) {\n formdt.append(\n 'candVideoProfile',\n this.JobApplication.candidateProfileDetails.candVideoProfile[i],\n this.JobApplication.candidateProfileDetails.candVideoProfile[i].name\n .replace(/\\s+/g, '')\n .trim()\n );\n }\n } else if (!!this.JobApplication.recordedData) {\n var data = this.JobApplication.recordedData;\n if (data.name) {\n formdt.append(\n 'candVideoProfile',\n data,\n data.name.replace(/\\s+/g, '').trim()\n );\n }\n }\n\n formdt.append(\n 'validPpflag',\n this.JobApplication.candidateProfileDetails.validPpflag\n );\n\n if(this.JobApplication.candidateProfileDetails.validPpflag != null && this.JobApplication.candidateProfileDetails.passportExpiryDate) {\n var passportExpiryDate = this.datePipe.transform(\n this.JobApplication.candidateProfileDetails.passportExpiryDate,\n 'yyyy-MM-dd'\n );\n formdt.append('passportExpiryDate', passportExpiryDate);\n }\n\n if (this.application.candidatePrefRegion && this.JobApplication.candidateProfileDetails.candidatePrefRegion) {\n formdt.append(\n 'candidatePrefRegion',\n JSON.stringify(this.JobApplication.candidateProfileDetails.candidatePrefRegion)\n );\n }\n\n\n if (this.application.candidatePrefDrivingLicence && this.JobApplication.candidateProfileDetails.jobCountryDrivingLicence)\n formdt.append(\n 'jobCountryDrivingLicence',\n this.JobApplication.candidateProfileDetails.jobCountryDrivingLicence\n );\n\n\n if (this.application.jobDesirableDomain && this.JobApplication.candidateProfileDetails.jobDesirableDomain)\n formdt.append(\n 'jobDesirableDomain',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableDomain)\n );\n\n if (this.JobApplication.candidateProfileDetails.jobDesirableCategory && this.JobApplication.candidateProfileDetails.jobDesirableCategory.preferenceType)\n formdt.append(\n 'jobDesirableCategory',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableCategory)\n );\n\n if (this.application.jobTenure && this.JobApplication.candidateProfileDetails.jobDesirableTenure && this.JobApplication.candidateProfileDetails.jobDesirableTenure.preferenceType)\n formdt.append(\n 'jobDesirableTenure',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableTenure)\n );\n\n\n if (this.application.jobWorkPattern && this.JobApplication.candidateProfileDetails.jobDesirableWorkPattern)\n formdt.append(\n 'jobDesirableWorkPattern',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableWorkPattern)\n );\n\n if ( this.application.candidatePrefLanguage && this.JobApplication.candidateProfileDetails.candidatePrefLanguage)\n formdt.append(\n 'candidatePrefLanguage',\n JSON.stringify(this.JobApplication.candidateProfileDetails.candidatePrefLanguage)\n );\n\n\n if (this.application.candidatePrefVisaPreference && this.JobApplication.candidateProfileDetails.candidatePrefVisaPreference)\n formdt.append(\n 'candidatePrefVisaPreference',\n JSON.stringify(this.JobApplication.candidateProfileDetails.candidatePrefVisaPreference)\n );\n\n\n if (this.application.jobDesirableTeamRole && this.JobApplication.candidateProfileDetails.jobDesirableTeamRole)\n formdt.append(\n 'jobDesirableTeamRole',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableTeamRole)\n );\n\n if (this.JobApplication.candidateProfileDetails.currEmplFlag)\n formdt.append(\n 'currEmplFlag',\n this.JobApplication.candidateProfileDetails.currEmplFlag\n );\n\n if (this.JobApplication.candidateProfileDetails.gender)\n formdt.append('gender', this.JobApplication.candidateProfileDetails.gender);\n\n if (this.JobApplication.candidateProfileDetails.maritalStatus)\n formdt.append(\n 'maritalStatus',\n this.JobApplication.candidateProfileDetails.maritalStatus\n );\n\n if (this.JobApplication.candidateProfileDetails.noticePeriod) {\n formdt.append(\n 'noticePeriod',\n this.JobApplication.candidateProfileDetails.noticePeriod\n );\n } else {\n formdt.append(\n 'noticePeriod',\n '0'\n );\n }\n\n\n\n if (this.JobApplication.candidateProfileDetails.candidatePrefEmployeeStatus)\n formdt.append(\n 'candidatePrefEmployeeStatus',\n this.JobApplication.candidateProfileDetails.candidatePrefEmployeeStatus\n );\n\n\n if (this.JobApplication.candidateProfileDetails.candidateResignationAccepted) {\n formdt.append(\n 'candidateResignationAccepted',\n this.JobApplication.candidateProfileDetails.candidateResignationAccepted\n );\n }\n\n if (this.JobApplication.candidateProfileDetails.reasonType)\n formdt.append(\n 'reasonType',\n this.JobApplication.candidateProfileDetails.reasonType\n );\n\n if (this.JobApplication.candidateProfileDetails.reasonsForReloc)\n formdt.append(\n 'reasonsForReloc', this.JobApplication.candidateProfileDetails.reasonsForReloc\n );\n\n if (this.JobApplication.candidateProfileDetails.address)\n formdt.append(\n 'address',\n this.JobApplication.candidateProfileDetails.address == undefined\n ? ''\n : this.JobApplication.candidateProfileDetails.address\n );\n\n if (this.JobApplication.candidateProfileDetails.currLocation)\n formdt.append(\n 'currLocation',\n this.JobApplication.candidateProfileDetails.currLocation == null\n ? ''\n : this.JobApplication.candidateProfileDetails.currLocation\n ); //this.JobApplication.candidateProfileDetails.currLocation);\n\n\n if (this.JobApplication.candidateProfileDetails.currLocationID) {\n formdt.append(\n 'currLocationID',\n this.JobApplication.candidateProfileDetails.currLocationID\n );\n }\n\n if (this.JobApplication.candidateProfileDetails.countryID) {\n formdt.append(\n 'countryID',\n this.JobApplication.candidateProfileDetails.countryID\n );\n }\n\n if (this.JobApplication.candidateProfileDetails.currOrganization)\n formdt.append(\n 'currOrganization',\n this.JobApplication.candidateProfileDetails.currOrganization\n );\n\n if (this.JobApplication.candidateProfileDetails.totalExperiance)\n formdt.append(\n 'totalExperiance',\n this.JobApplication.candidateProfileDetails.totalExperiance\n );\n\n if (this.JobApplication.candidateProfileDetails.relevantExperiance)\n formdt.append(\n 'relevantExperiance',\n this.JobApplication.candidateProfileDetails.relevantExperiance\n );\n\n if (this.JobApplication.candidateProfileDetails.contactNo && this.JobApplication.candidateProfileDetails.countryCodePhoneNumber)\n formdt.append(\n 'contactNo',\n this.JobApplication.candidateProfileDetails.countryCodePhoneNumber + ' ' + this.JobApplication.candidateProfileDetails.contactNo\n );\n\n if (this.JobApplication.candidateProfileDetails.alteContactNo && this.JobApplication.candidateProfileDetails.altCountryCodePhoneNumber)\n formdt.append(\n 'alteContactNo',\n this.JobApplication.candidateProfileDetails.altCountryCodePhoneNumber + ' ' + this.JobApplication.candidateProfileDetails.alteContactNo\n );\n\n if (this.JobApplication.candidateProfileDetails.cpCurrency)\n formdt.append(\n 'cpCurrency',\n this.JobApplication.candidateProfileDetails.cpCurrency\n );\n\n if (this.JobApplication.candidateProfileDetails.cpGrossPayPerAnnum)\n formdt.append(\n 'cpGrossPayPerAnnum',\n this.JobApplication.candidateProfileDetails.cpGrossPayPerAnnum\n );\n\n if (this.JobApplication.candidateProfileDetails.cpDeductionsPerAnnum)\n formdt.append(\n 'cpDeductionsPerAnnum',\n this.JobApplication.candidateProfileDetails.cpDeductionsPerAnnum\n );\n\n if (this.JobApplication.candidateProfileDetails.cpVariablePayPerAnnum)\n formdt.append(\n 'cpVariablePayPerAnnum',\n this.JobApplication.candidateProfileDetails.cpVariablePayPerAnnum\n );\n\n if (this.JobApplication.candidateProfileDetails.cpTakeHomeSalPerMonth)\n formdt.append(\n 'cpTakeHomeSalPerMonth',\n this.JobApplication.candidateProfileDetails.cpTakeHomeSalPerMonth\n );\n\n if (this.JobApplication.application.currencyName)\n formdt.append('epCurrency', this.JobApplication.application.currencyName); //this.JobApplication.candidateProfileDetails.epCurrency\n\n if (this.JobApplication.candidateProfileDetails.epTakeHomeSalPerMonth)\n formdt.append(\n 'epTakeHomeSalPerMonth',\n this.JobApplication.candidateProfileDetails.epTakeHomeSalPerMonth\n );\n // formdt.append(\"selfRating\", this.JobApplication.candidateProfileDetails.selfRating);\n\n if (this.JobApplication.candidateProfileDetails.nationality)\n formdt.append(\n 'nationality',\n this.JobApplication.candidateProfileDetails.nationality == null\n ? ''\n : this.JobApplication.candidateProfileDetails.nationality\n );\n\n if (this.JobApplication.candidateProfileDetails.expectedPackage)\n formdt.append(\n 'expectedPackage',\n this.JobApplication.candidateProfileDetails.expectedPackage == null\n ? 0\n : this.JobApplication.candidateProfileDetails.expectedPackage\n );\n\n formdt.append('id', this.JobApplication.candidatePrimaryDetails.canPrfId);\n // formdt.append(\n // 'currEmplFlag',\n // this.JobApplication.candidateProfileDetails.currEmplFlag\n // );\n\n if (this.JobApplication.candidateProfileDetails.currDesignation)\n formdt.append(\n 'currDesignation',\n this.JobApplication.candidateProfileDetails.currDesignation == undefined\n ? null\n : this.JobApplication.candidateProfileDetails.currDesignation\n );\n\n if (this.JobApplication.candidateProfileDetails.anyOfferInHand) {\n formdt.append(\n 'anyOfferInHand', this.JobApplication.candidateProfileDetails.anyOfferInHand\n );\n }\n\n\n if (this.JobApplication.candidateProfileDetails.candidateCanJoinDate) {\n var candidateCanJoinDate = this.datePipe.transform(\n this.JobApplication.candidateProfileDetails.candidateCanJoinDate,\n 'yyyy-MM-dd'\n );\n formdt.append('candidateCanJoinDate', candidateCanJoinDate);\n }\n\n if (this.JobApplication.candidateProfileDetails.candidateLastWorkDate) {\n var candidateLastWorkDate = this.datePipe.transform(\n this.JobApplication.candidateProfileDetails.candidateLastWorkDate,\n 'yyyy-MM-dd'\n );\n formdt.append('candidateLastWorkDate', candidateLastWorkDate);\n }\n\n\n if (this.JobApplication.candidateProfileDetails.candidateDOB) {\n var dob = this.datePipe.transform(\n this.JobApplication.candidateProfileDetails.candidateDOB,\n 'yyyy-MM-dd'\n );\n formdt.append('candidateDOB', dob);\n }\n\n\n this.checkNullableSpecialization('jobDesirableSpecializations');\n\n if (this.JobApplication.candidateProfileDetails.jobDesirableSpecializations) {\n formdt.append(\n 'jobDesirableSpecializations',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableSpecializations)\n );\n }\n\n this.checkNullableSpecialization('jobDesirableImplementations');\n\n if (this.JobApplication.candidateProfileDetails.jobDesirableImplementations) {\n formdt.append(\n 'jobDesirableImplementations',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableImplementations)\n );\n }\n\n\n this.checkNullableSpecialization('jobDesirableDesigns');\n\n if (this.JobApplication.candidateProfileDetails.jobDesirableDesigns) {\n formdt.append(\n 'jobDesirableDesigns',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableDesigns)\n );\n }\n\n this.checkNullableSpecialization('jobDesirableDevelopments');\n\n if (this.JobApplication.candidateProfileDetails.jobDesirableDevelopments) {\n formdt.append(\n 'jobDesirableDevelopments',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableDevelopments)\n );\n }\n\n this.checkNullableSpecialization('jobDesirableSupports');\n\n if (this.JobApplication.candidateProfileDetails.jobDesirableSupports) {\n formdt.append(\n 'jobDesirableSupports',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableSupports)\n );\n }\n\n\n this.checkNullableSpecialization('jobDesirableQualities');\n\n if (this.JobApplication.candidateProfileDetails.jobDesirableQualities) {\n formdt.append(\n 'jobDesirableQualities',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableQualities)\n );\n }\n\n this.checkNullableSpecialization('jobDesirableDocumentations');\n\n\n if (this.JobApplication.candidateProfileDetails.jobDesirableDocumentations) {\n formdt.append(\n 'jobDesirableDocumentations',\n JSON.stringify(this.JobApplication.candidateProfileDetails.jobDesirableDocumentations)\n );\n }\n\n\n\n\n if (\n this.JobApplication.candidateProfileDetails\n .candidateSkills != null ||\n this.JobApplication.candidateProfileDetails\n .candidateSkills != undefined\n ) {\n if (\n this.JobApplication.candidateProfileDetails\n .candidateSkills.length > 0\n ) {\n this.JobApplication.candidateProfileDetails.candidateSkills.forEach(\n (element) => {\n if (element.skillLevelId == null || element.skillLevelId == '') {\n element.skillLevelId = 0;\n }\n if (element.expInMonths == null || element.expInMonths == '') {\n element.expInMonths = 0;\n }\n if (element.expInYears == null || element.expInYears == '') {\n element.expInYears = 0;\n }\n if (element.selfRating == null || element.selfRating == '') {\n element.selfRating = 0;\n }\n element.expInMonths = parseInt(element.expInMonths);\n element.expInYears = parseInt(element.expInYears);\n element.selfRating = parseFloat(element.selfRating);\n\n }\n );\n }\n }\n\n\n let candidateQualificationModel = this.JobApplication.candidateProfileDetails.candidateQualificationModel || [];\n if(this.JobApplication.CandidateOpeningList?.length > 0) {\n\n this.JobApplication.CandidateOpeningList.forEach(element => {\n candidateQualificationModel.push({\n \"qualificationId\": element.qualificationId,\n \"qualification\": null,\n \"courseId\": element.courseId,\n \"course\":null\n });\n \n })\n }\n\n if (this.JobApplication.candidateProfileDetails.candidateQualificationModel) {\n formdt.append(\n 'candidateQualificationModel',\n JSON.stringify(candidateQualificationModel)\n );\n }\n\n let candidateCertificationModel = this.JobApplication.candidateProfileDetails.candidateCertificationModel || [];\n if(this.JobApplication.candidateCirtificates?.length > 0) {\n\n this.JobApplication.candidateCirtificates.forEach(element => {\n candidateCertificationModel.push({\n certificationId: element.CertificationID,\n certification: null\n })\n });\n \n }\n\n if (this.JobApplication.candidateProfileDetails.candidateCertificationModel) {\n formdt.append(\n 'candidateCertificationModel',\n JSON.stringify(candidateCertificationModel)\n );\n }\n\n\n if (this.JobApplication.candidateProfileDetails.openingQualifications) {\n formdt.append(\n 'openingQualifications',\n JSON.stringify(this.JobApplication.candidateProfileDetails.openingQualifications)\n );\n }\n\n\n if (this.JobApplication.candidateProfileDetails.openingCertifications) {\n formdt.append(\n 'openingCertifications',\n JSON.stringify(this.JobApplication.candidateProfileDetails.openingCertifications)\n );\n }\n\n\n\n // formdt.append(\n // 'candidateQuestionResponseModel',\n // JSON.stringify(this.JobApplication.application.openingQtns)\n // );\n // formdt.append(\n // 'CandidateOpeningList',\n // JSON.stringify(this.JobApplication.CandidateOpeningList)\n // );\n // formdt.append(\n // 'candidateCertificationModel',\n // JSON.stringify(this.JobApplication.candidateCirtificates)\n // );\n\n \n\n \n\n if (this.JobApplication.userApplyJob == true) {\n formdt.append(\n 'candidateSkills',\n JSON.stringify(\n this.JobApplication.candidateProfileDetails\n .candidateSkills\n )\n );\n\n if (this.JobApplication.candidateProfileDetails.interviewFaceToFace)\n formdt.append(\n 'interviewFaceToFace',\n this.JobApplication.candidateProfileDetails.interviewFaceToFace\n );\n\n if (this.JobApplication.candidateProfileDetails.interviewFaceToFaceReason)\n formdt.append(\n 'interviewFaceToFaceReason', this.JobApplication.candidateProfileDetails.interviewFaceToFace == true ? '' :\n (this.interviewFaceToFaceReasonChoice == this.defaultNonAvailablities[this.defaultNonAvailablities.length - 1] ?\n this.JobApplication.candidateProfileDetails.interviewFaceToFaceReason : this.interviewFaceToFaceReasonChoice) || ''\n );\n\n this.isLoader = true;\n console.log(this.JobApplication.candidateProfileDetails)\n console.log(formdt)\n this.apiService.createUpdateJobCandidate(formdt).subscribe(\n (data: any) => {\n \n if (data.status == true) {\n setTimeout(() => {\n this.isSubmit = false;\n this.router.navigate(['/app/profile-active-applications']);\n\n }, 3000);\n\n // this.router.navigate(['/app/profile']);\n // const modalRef = this.modalService.open(ThankYouComponent, { backdrop: 'static', centered: true, size: 'md' });\n // modalRef.result.then((result) => {\n // }, (reason) => {\n // });\n } else {\n this.toastr.error(data.meta.error.errorMessage);\n this.isSubmit = false;\n }\n this.isLoader = false;\n },\n (error) => {\n this.toastr.error(error.error.meta.error.errorMessage);\n this.isLoader = false;\n this.isSubmit = false;\n }\n );\n } else {\n formdt.append(\n 'candidateSkills',\n JSON.stringify(\n this.JobApplication.candidateProfileDetails\n .candidateSkills\n )\n );\n\n console.log(this.JobApplication.candidateProfileDetails)\n console.log(formdt)\n this.apiService.createUpdateJobCandidate(formdt).subscribe(\n (data: any) => {\n this.isSubmit = false;\n this.isLoader = true;\n if (data.status == true) {\n setTimeout(() => {\n this.router.navigate(['/app/profile-active-applications']);\n }, 3000);\n // this.router.navigate(['/app/profile']);\n // const modalRef = this.modalService.open(ThankYouComponent, { backdrop: 'static', centered: true, size: 'md' });\n // modalRef.result.then((result) => {\n // }, (reason) => {\n\n // });\n this.isLoader = false;\n } else {\n this.toastr.error(data.meta.error.errorMessage);\n this.isLoader = false;\n }\n },\n (error) => {\n this.toastr.error(error.error.meta.error.errorMessage);\n this.isLoader = false;\n this.isSubmit = false;\n }\n );\n }\n }\n previousClick() {\n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: false\n });\n }\n\n\n}\n","import { Component, EventEmitter, Input, OnInit, Output, ElementRef, ViewChild, OnDestroy, } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\nimport { DatePipe } from '@angular/common';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CommonApiService } from '../../../../shared/services';\r\nimport { ThankYouComponent } from '../../../../shared/component/thank-you/thank-you.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { SampleVideoComponent } from './sample-video/sample-video.component';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\n\r\n@Component({\r\n selector: 'app-impress-your-future-employer',\r\n templateUrl: './impress-your-future-employer.component.html',\r\n styleUrls: ['./impress-your-future-employer.component.scss'],\r\n})\r\nexport class ImpressYourFutureEmployerComponent implements OnInit {\r\n bsModalRef: BsModalRef;\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n @ViewChild('video', { read: ElementRef })\r\n video: ElementRef;\r\n isVideoFile: boolean = false;\r\n recordedData: any;\r\n videoFile;\r\n isPreviewFile = false;\r\n previewVideoFile: string;\r\n isSubmit: boolean = false;\r\n isEndedRecord: any = true;\r\n isLoader: boolean;\r\n isShowVideo: boolean = true;\r\n isThankyouScreen: boolean = false;\r\n constructor(\r\n private datePipe: DatePipe,\r\n public JobApplication: JobApplicationComponent,\r\n private toastr: ToastrService,\r\n private modalServices: BsModalService,\r\n private apiService: CommonApiService,\r\n private formBuilder: FormBuilder,\r\n private modalService: NgbModal,\r\n private router: Router,\r\n elementRef: ElementRef\r\n ) { }\r\n uploadresume() {\r\n this.JobApplication.recordedData = '';\r\n this.JobApplication.recDataBlob = '';\r\n this.JobApplication.videofilesList = [];\r\n var files = (this.video.nativeElement as HTMLInputElement).files;\r\n for (var f = 0; f < files.length; f++) {\r\n this.JobApplication.videofilesList.push(files[f]);\r\n }\r\n this.JobApplication.candidateProfileDetails.candVideoProfile = this.JobApplication.videofilesList;\r\n }\r\n removeResume(index: number) {\r\n this.JobApplication.videofilesList.splice(index, 1);\r\n }\r\n sampleVideo() {\r\n this.bsModalRef = this.modalServices.show(SampleVideoComponent, {\r\n ignoreBackdropClick: true,\r\n class: 'modal-md modal-dialog-centered pihire-modal',\r\n });\r\n this.bsModalRef.content.closeBtnName = 'Close';\r\n // this.bsModalRef.onHidden.subscribe((res) => {\r\n // this.bsModalRef.hide();\r\n // });\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) {\r\n return e.fieldCode;\r\n }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) {\r\n return e.fieldCode;\r\n }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {};\r\n\r\n resumeType(type) {\r\n this.isVideoFile = false;\r\n this.isShowVideo = true;\r\n if (type == 'videoFile') {\r\n this.isVideoFile = true;\r\n }\r\n }\r\n updatePlayer(eve) {\r\n this.JobApplication.recordedData = eve.rec;\r\n this.JobApplication.recDataBlob = eve.recDataBlob;\r\n this.isEndedRecord = eve.isEndedRecord;\r\n this.isPreviewFile = false;\r\n if (!eve.isEndedRecord) {\r\n this.JobApplication.recordedData = '';\r\n this.JobApplication.recDataBlob = '';\r\n }\r\n }\r\n\r\n save() {\r\n this.previewFile();\r\n this.isSubmit = true;\r\n this.isLoader = true;\r\n const files = (this.video?.nativeElement as HTMLInputElement)?.files;\r\n \r\n var formdt = new FormData();\r\n formdt.append('sourceId', this.JobApplication.sourceId);\r\n formdt.append('jobId', this.JobApplication.candidateProfileDetails.jobId);\r\n if (this.JobApplication.candidateProfileDetails.validPpflag) {\r\n formdt.append(\r\n 'fullNameInPp',\r\n this.JobApplication.candidateProfileDetails.fullNameInPp\r\n );\r\n formdt.append(\r\n 'fullName',\r\n this.JobApplication.candidateProfileDetails.fullNameInPp\r\n );\r\n } else {\r\n formdt.append(\r\n 'fullNameInPp',\r\n this.JobApplication.candidateProfileDetails.fullName\r\n );\r\n formdt.append(\r\n 'fullName',\r\n this.JobApplication.candidateProfileDetails.fullName\r\n );\r\n }\r\n formdt.append('emailAddress', this.JobApplication.userPrimaryDetails.email);\r\n if (this.JobApplication.candidateProfileDetails.resume != null) {\r\n for (\r\n let i = 0;\r\n i < this.JobApplication.candidateProfileDetails.resume.length;\r\n i++\r\n ) {\r\n formdt.append(\r\n 'resume',\r\n this.JobApplication.candidateProfileDetails.resume[i],\r\n this.JobApplication.candidateProfileDetails.resume[i].name\r\n .replace(/\\s+/g, '')\r\n .trim()\r\n );\r\n }\r\n }\r\n if (this.JobApplication.googleDriveResumeFiles.length > 0) {\r\n formdt.append(\r\n 'resumeURL',\r\n this.JobApplication.googleDriveResumeFiles[0].url\r\n );\r\n formdt.append(\r\n 'resumeURLType',\r\n this.JobApplication.googleDriveResumeFiles[0].ResumeURLType\r\n );\r\n formdt.append('resume', '');\r\n }\r\n\r\n for (\r\n let i = 0;\r\n i < this.JobApplication?.candidateProfileDetails.paySlips?.length;\r\n i++\r\n ) {\r\n formdt.append(\r\n 'payslips',\r\n this.JobApplication?.candidateProfileDetails?.paySlips[i],\r\n this.JobApplication?.candidateProfileDetails?.paySlips[i]?.name\r\n ?.replace(/\\s+/g, '')\r\n .trim()\r\n );\r\n }\r\n\r\n if (this.JobApplication.googleDrivePaySlipsFiles.length > 0) {\r\n formdt.append(\r\n 'paySlipsModel',\r\n JSON.stringify(this.JobApplication.candidateProfileDetails.PaySlipsURL)\r\n );\r\n }\r\n\r\n formdt.append(\r\n 'remarks',\r\n this.JobApplication.candidateProfileDetails.remarks\r\n );\r\n if (\r\n this.isVideoFile &&\r\n !!this.JobApplication.candidateProfileDetails.candVideoProfile\r\n ) {\r\n for (\r\n let i = 0;\r\n i < this.JobApplication.candidateProfileDetails.candVideoProfile.length;\r\n i++\r\n ) {\r\n formdt.append(\r\n 'candVideoProfile',\r\n this.JobApplication.candidateProfileDetails.candVideoProfile[i],\r\n this.JobApplication.candidateProfileDetails.candVideoProfile[i].name\r\n .replace(/\\s+/g, '')\r\n .trim()\r\n );\r\n }\r\n } else if (!!this.JobApplication.recordedData) {\r\n var data = this.JobApplication.recordedData;\r\n if (data.name) {\r\n formdt.append(\r\n 'candVideoProfile',\r\n data,\r\n data.name.replace(/\\s+/g, '').trim()\r\n );\r\n }\r\n }\r\n\r\n formdt.append(\r\n 'validPpflag',\r\n this.JobApplication.candidateProfileDetails.validPpflag\r\n );\r\n formdt.append(\r\n 'currEmplFlag',\r\n this.JobApplication.candidateProfileDetails.currEmplFlag\r\n );\r\n formdt.append('gender', this.JobApplication.candidateProfileDetails.gender);\r\n formdt.append(\r\n 'maritalStatus',\r\n this.JobApplication.candidateProfileDetails.maritalStatus\r\n );\r\n formdt.append(\r\n 'noticePeriod',\r\n this.JobApplication.candidateProfileDetails.noticePeriod\r\n );\r\n formdt.append(\r\n 'reasonType',\r\n this.JobApplication.candidateProfileDetails.reasonType\r\n );\r\n formdt.append(\r\n 'reasonsForReloc',\r\n this.JobApplication.candidateProfileDetails.reasonsForReloc == null\r\n ? ''\r\n : this.JobApplication.candidateProfileDetails.reasonsForReloc\r\n );\r\n formdt.append(\r\n 'address',\r\n this.JobApplication.candidateProfileDetails.address == undefined\r\n ? ''\r\n : this.JobApplication.candidateProfileDetails.address\r\n );\r\n formdt.append(\r\n 'currLocation',\r\n this.JobApplication.candidateProfileDetails.currLocation == null\r\n ? ''\r\n : this.JobApplication.candidateProfileDetails.currLocation\r\n ); //this.JobApplication.candidateProfileDetails.currLocation);\r\n if (this.JobApplication.candidateProfileDetails.currLocationID != null && this.JobApplication.candidateProfileDetails.currLocationID != \"\") {\r\n formdt.append(\r\n 'currLocationID',\r\n this.JobApplication.candidateProfileDetails.currLocationID\r\n );\r\n }\r\n if (this.JobApplication.candidateProfileDetails.countryID != null && this.JobApplication.candidateProfileDetails.countryID != \"\") {\r\n formdt.append(\r\n 'countryID',\r\n this.JobApplication.candidateProfileDetails.countryID\r\n );\r\n }\r\n\r\n formdt.append(\r\n 'currOrganization',\r\n this.JobApplication.candidateProfileDetails.currOrganization\r\n );\r\n formdt.append(\r\n 'totalExperiance',\r\n this.JobApplication.candidateProfileDetails.totalExperiance\r\n );\r\n formdt.append(\r\n 'relevantExperiance',\r\n this.JobApplication.candidateProfileDetails.relevantExperiance\r\n );\r\n formdt.append(\r\n 'contactNo',\r\n this.JobApplication.candidateProfileDetails.contactNo\r\n );\r\n formdt.append(\r\n 'alteContactNo',\r\n this.JobApplication.candidateProfileDetails.alteContactNo\r\n );\r\n formdt.append(\r\n 'cpCurrency',\r\n this.JobApplication.candidateProfileDetails.cpCurrency\r\n );\r\n formdt.append(\r\n 'cpGrossPayPerAnnum',\r\n this.JobApplication.candidateProfileDetails.cpGrossPayPerAnnum\r\n );\r\n formdt.append(\r\n 'cpDeductionsPerAnnum',\r\n this.JobApplication.candidateProfileDetails.cpDeductionsPerAnnum\r\n );\r\n formdt.append(\r\n 'cpVariablePayPerAnnum',\r\n this.JobApplication.candidateProfileDetails.cpVariablePayPerAnnum\r\n );\r\n formdt.append(\r\n 'cpTakeHomeSalPerMonth',\r\n this.JobApplication.candidateProfileDetails.cpTakeHomeSalPerMonth\r\n );\r\n formdt.append('epCurrency', this.JobApplication.application.currencyName); //this.JobApplication.candidateProfileDetails.epCurrency\r\n formdt.append(\r\n 'epTakeHomeSalPerMonth',\r\n this.JobApplication.candidateProfileDetails.epTakeHomeSalPerMonth\r\n );\r\n // formdt.append(\"selfRating\", this.JobApplication.candidateProfileDetails.selfRating);\r\n formdt.append(\r\n 'nationality',\r\n this.JobApplication.candidateProfileDetails.nationality == null\r\n ? ''\r\n : this.JobApplication.candidateProfileDetails.nationality + ''\r\n );\r\n formdt.append(\r\n 'expectedPackage',\r\n this.JobApplication.candidateProfileDetails.expectedPackage == null\r\n ? 0\r\n : this.JobApplication.candidateProfileDetails.expectedPackage\r\n );\r\n formdt.append('id', this.JobApplication.candidatePrimaryDetails.canPrfId);\r\n formdt.append(\r\n 'currEmplFlag',\r\n this.JobApplication.candidateProfileDetails.currEmplFlag\r\n );\r\n formdt.append(\r\n 'currDesignation',\r\n this.JobApplication.candidateProfileDetails.currDesignation == undefined\r\n ? null\r\n : this.JobApplication.candidateProfileDetails.currDesignation\r\n );\r\n\r\n if (this.JobApplication.candidateProfileDetails.candidateDOB != null) {\r\n var dob = this.datePipe.transform(\r\n this.JobApplication.candidateProfileDetails.candidateDOB,\r\n 'yyyy-MM-dd'\r\n );\r\n formdt.append('candidateDOB', dob);\r\n } else {\r\n formdt.append('candidateDOB', '');\r\n }\r\n\r\n if (\r\n this.JobApplication.candidateProfileDetails\r\n .createCandidateSkillViewModel != null ||\r\n this.JobApplication.candidateProfileDetails\r\n .createCandidateSkillViewModel != undefined\r\n ) {\r\n if (\r\n this.JobApplication.candidateProfileDetails\r\n .createCandidateSkillViewModel.length > 0\r\n ) {\r\n this.JobApplication.candidateProfileDetails.createCandidateSkillViewModel.forEach(\r\n (element) => {\r\n if (element.skillLevelId == null || element.skillLevelId == '') {\r\n element.skillLevelId = 0;\r\n }\r\n if (element.expInMonths == null || element.expInMonths == '') {\r\n element.expInMonths = 0;\r\n }\r\n if (element.expInYears == null || element.expInYears == '') {\r\n element.expInYears = 0;\r\n }\r\n if (element.selfRating == null || element.selfRating == '') {\r\n element.selfRating = 0;\r\n }\r\n }\r\n );\r\n }\r\n }\r\n formdt.append(\r\n 'candidateQuestionResponseModel',\r\n JSON.stringify(this.JobApplication.application.openingQtns)\r\n );\r\n formdt.append(\r\n 'candidateQualificationModel',\r\n JSON.stringify(this.JobApplication.CandidateOpeningList)\r\n );\r\n formdt.append(\r\n 'candidateCertificationModel',\r\n JSON.stringify(this.JobApplication.candidateCirtificates)\r\n );\r\n if (this.JobApplication.userApplyJob == true) {\r\n formdt.append(\r\n 'updateCandidateSkillViewModel',\r\n JSON.stringify(\r\n this.JobApplication.candidateProfileDetails\r\n .createCandidateSkillViewModel\r\n )\r\n );\r\n \r\n this.isLoader = true;\r\n this.apiService.UpdateCandiate(formdt).subscribe(\r\n (data: any) => {\r\n this.isSubmit = false;\r\n if (data.status == true) {\r\n this.isThankyouScreen = true;\r\n setTimeout(()=>{ \r\n this.router.navigate(['/app/profile-active-applications']);\r\n this.isThankyouScreen = false;\r\n }, 3000);\r\n\r\n // this.router.navigate(['/app/profile']);\r\n // const modalRef = this.modalService.open(ThankYouComponent, { backdrop: 'static', centered: true, size: 'md' });\r\n // modalRef.result.then((result) => {\r\n // }, (reason) => {\r\n // });\r\n } else {\r\n this.toastr.error(data.meta.error.errorMessage);\r\n }\r\n this.isLoader = false;\r\n },\r\n (error) => {\r\n this.toastr.error(error.error.meta.error.errorMessage);\r\n this.isLoader = false;\r\n this.isSubmit = false;\r\n }\r\n );\r\n } else {\r\n formdt.append(\r\n 'createCandidateSkillViewModel',\r\n JSON.stringify(\r\n this.JobApplication.candidateProfileDetails\r\n .createCandidateSkillViewModel\r\n )\r\n );\r\n\r\n console.log(this.JobApplication.candidateProfileDetails.epCurrency )\r\n this.apiService.createCandidate(formdt).subscribe(\r\n (data: any) => {\r\n this.isSubmit = false;\r\n this.isLoader = true;\r\n if (data.status == true) {\r\n this.isThankyouScreen = true;\r\n setTimeout(()=>{ \r\n this.router.navigate(['/app/profile-active-applications']);\r\n this.isThankyouScreen = false;\r\n }, 3000);\r\n // this.router.navigate(['/app/profile']);\r\n // const modalRef = this.modalService.open(ThankYouComponent, { backdrop: 'static', centered: true, size: 'md' });\r\n // modalRef.result.then((result) => {\r\n // }, (reason) => {\r\n\r\n // });\r\n this.isLoader = false;\r\n } else {\r\n this.toastr.error(data.meta.error.errorMessage);\r\n this.isLoader = false;\r\n }\r\n },\r\n (error) => {\r\n this.toastr.error(error.error.meta.error.errorMessage);\r\n this.isLoader = false;\r\n this.isSubmit = false;\r\n }\r\n );\r\n }\r\n }\r\n reset() {\r\n this.isShowVideo = false;\r\n this.isVideoFile = false;\r\n this.JobApplication.recordedData = '';\r\n this.JobApplication.recDataBlob = '';\r\n\r\n setTimeout(() => {\r\n this.resumeType('videoRecorder');\r\n }, 100);\r\n }\r\n clearVideo() {\r\n var dispPlayer: any = document.getElementById('dispPlayer');\r\n dispPlayer.src = '';\r\n this.isPreviewFile = false;\r\n this.isVideoFile = false;\r\n\r\n this.JobApplication.recordedData = '';\r\n this.JobApplication.recDataBlob = '';\r\n }\r\n previewFile(){\r\n this.isPreviewFile = false;\r\n if (this.JobApplication.recordedData != undefined && this.JobApplication.recordedData != '' && this.JobApplication.recordedData != null) {\r\n this.isPreviewFile = true;\r\n this.isVideoFile = false;\r\n var dispPlayer: any = document.getElementById('dispPlayer');\r\n dispPlayer.src = URL?.createObjectURL(this.JobApplication.recDataBlob);\r\n }\r\n }\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n this.JobApplication.candidatePrimaryDetails.canPrfId = this.JobApplication.candidatePrimaryDetails.canPrfId == null || this.JobApplication.candidatePrimaryDetails.canPrfId == undefined ? 0 : this.JobApplication.candidatePrimaryDetails.canPrfId;\r\n this.previewFile();\r\n }\r\n ngAfterviewinit() {\r\n // this.previewVideoFile = URL.createObjectURL(this.JobApplication.recDataBlob);\r\n }\r\n}\r\n","
Impress your future employer.
\r\n
\r\n
\r\n
\r\n

Thank you for your job application.

\r\n
\r\n \r\n

\r\n We look forward to helping you find your next position.\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

Video Profile

\r\n
\r\n
\r\n sample videos\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Record video for upto 90 Seconds\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AddDocumentComponent } from './add-document/add-document.component';\r\nimport { CommonApiService } from '../../shared/services';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { PreviewDocComponent } from './preview-doc/preview-doc.component';\r\nimport { AuthenticationService } from '../../core/services/authentication.service';\r\nimport { MetaTagService } from '../../shared/services/meta-tag.service';\r\nimport { environment } from '../../../../src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-job-details',\r\n templateUrl: './job-details.component.html',\r\n styleUrls: ['./job-details.component.scss'],\r\n})\r\nexport class JobDetailsComponent implements OnInit {\r\n shareUrl: string = null;\r\n jobid: any;\r\n sourceId: number = 5;\r\n\r\n Isapply: string = 'apply';\r\n loader: boolean = false;\r\n jobDetails: any;\r\n appliedJobs: any = [];\r\n candidateFilesLists: any;\r\n isLoader: boolean;\r\n candidateFileLists: any = [];\r\n currentUser: any;\r\n candidateId: string;\r\n userPrimaryDetails: any;\r\n candidateProfileDetails: any;\r\n CounselorsContactDetails: any = [];\r\n userApplyJob: any = {};\r\n requestedFiles: any = [];\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private commonApiService: CommonApiService,\r\n private modalService: NgbModal,\r\n private router: Router,\r\n private toastr: ToastrService,\r\n private apiService: CommonApiService,\r\n private authenticationService: AuthenticationService,\r\n private metaService: MetaTagService\r\n ) {}\r\n getJobDetails(jobid: any) {\r\n this.loader = true;\r\n this.commonApiService.getJobDetails(jobid).subscribe((jobDetail: any) => {\r\n this.loader = true;\r\n if (jobDetail.result != null) {\r\n this.jobDetails = jobDetail.result;\r\n this.CounselorsContactDetails = this.jobDetails.recruiterViewModel;\r\n this.metaService.updateShareFacebook(\r\n window.location.href,\r\n 'article',\r\n 'Uncategorized',\r\n 'piHire - Career Portal',\r\n this.jobDetails.jobTitle,\r\n this.jobDetails.shortJobDesc,\r\n environment.appUrl + 'assets/img/paraminfo-logo.svg'\r\n );\r\n }\r\n });\r\n }\r\n getImage(url) {\r\n this.commonApiService.getImage(url).subscribe((data) => {\r\n this.isLoader = false;\r\n var byteArray = new Uint8Array(data);\r\n var filename = url.split('\\\\').pop().split('/').pop();\r\n this.downloadFiles(byteArray, filename);\r\n }),\r\n (error) => console.log('Error downloading the file.'),\r\n () => console.info('OK');\r\n }\r\n\r\n downloadFiles(blob: any, filename: string) {\r\n var binaryData = [];\r\n binaryData.push(blob);\r\n const url = window.URL.createObjectURL(new Blob(binaryData, { type: '' })); // <-- work with blob directly\r\n const a = document.createElement('a');\r\n a.setAttribute('style', 'display:none;');\r\n document.body.appendChild(a);\r\n a.href = url;\r\n a.download = filename;\r\n a.click();\r\n }\r\n viewDocument(fileObj) {\r\n const modalRef = this.modalService.open(PreviewDocComponent, {\r\n centered: true,\r\n size: 'lg',\r\n });\r\n modalRef.componentInstance.viewDocument = fileObj;\r\n modalRef.result.then(\r\n (result) => {\r\n this.getCandidateFiles(this.candidateId, this.jobid);\r\n },\r\n (reason) => {}\r\n );\r\n }\r\n uploadDoc() {\r\n const modalRef = this.modalService.open(AddDocumentComponent, {\r\n centered: true,\r\n });\r\n modalRef.componentInstance.candiateId = this.candidateId;\r\n modalRef.componentInstance.jobId = this.jobid;\r\n modalRef.componentInstance.requestedFiles = this.requestedFiles;\r\n modalRef.result.then(\r\n (result) => {\r\n this.getCandidateFiles(this.candidateId, this.jobid);\r\n this.getCandidateRequestedFiles(this.candidateId, this.jobid);\r\n },\r\n (reason) => {}\r\n );\r\n }\r\n getCandidateFiles(canPrfId, jobId) {\r\n this.isLoader = true;\r\n this.commonApiService.getCandidateFiles(canPrfId, jobId).subscribe(\r\n (resp: any) => {\r\n if (resp.status) {\r\n this.candidateFileLists = resp.result;\r\n } else {\r\n this.toastr.error(resp.meta.error.errorMessage);\r\n }\r\n this.isLoader = false;\r\n },\r\n (error) => {\r\n this.isLoader = false;\r\n this.toastr.error('Unhandled Exception');\r\n }\r\n );\r\n }\r\n getCandidateRequestedFiles(canPrfId, jobId) {\r\n this.isLoader = true;\r\n this.commonApiService.getCandidateRequestedFiles(canPrfId, jobId).subscribe(\r\n (resp: any) => {\r\n if (resp.status) {\r\n this.requestedFiles = resp.result || [];\r\n } else {\r\n this.toastr.error(resp.meta.error.errorMessage);\r\n }\r\n this.isLoader = false;\r\n },\r\n (error) => {\r\n this.isLoader = false;\r\n this.toastr.error('Unhandled Exception');\r\n }\r\n );\r\n }\r\n getCandidatePrimaryInfo(email) {\r\n this.apiService.getCandidatePrimaryInfo(email).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n this.candidateProfileDetails = data.result;\r\n this.candidateId = data.result.canPrfId;\r\n\r\n this.getCandidateFiles(this.candidateId, this.jobid);\r\n this.getCandidateRequestedFiles(this.candidateId, this.jobid);\r\n this.getRecruiterDetails(this.candidateProfileDetails.canPrfId);\r\n this.getCandidateProfileDetails();\r\n }\r\n }\r\n },\r\n (error) => {}\r\n );\r\n }\r\n ngOnInit(): void {\r\n window.location.href = environment.websiteUrl;\r\n\r\n this.shareUrl = window.location.href;\r\n this.appliedJobs = localStorage.getItem('appliedJobs');\r\n if (this.appliedJobs != null) {\r\n this.appliedJobs = this.appliedJobs.split(',');\r\n }\r\n\r\n this.route.queryParams.subscribe((params) => {\r\n this.jobid = params['jobid'];\r\n this.sourceId =\r\n params['sf'] == null || params['sf'] == undefined ? 5 : params['sf'];\r\n this.shareUrl =\r\n environment.appUrl +\r\n '/job?jobid=' +\r\n this.jobid +\r\n '&sf=' +\r\n this.sourceId;\r\n this.shareUrl = encodeURI(this.shareUrl);\r\n if (\r\n this.authenticationService.currentUserValue != null &&\r\n this.authenticationService.currentUserValue != undefined\r\n ) {\r\n this.getCandidatePrimaryInfo(\r\n this.authenticationService.currentUserValue.userDetails.email\r\n );\r\n } else {\r\n this.Isapply = 'apply';\r\n this.getRecruiterDetails(0);\r\n }\r\n\r\n //this.Isapply = params['apply'];\r\n this.getJobDetails(this.jobid);\r\n });\r\n }\r\n\r\n getRecruiterDetails(candidateId) {\r\n this.apiService.getRecruiterDetails(candidateId, this.jobid).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n this.CounselorsContactDetails = data.result;\r\n }\r\n }\r\n },\r\n (error) => {}\r\n );\r\n }\r\n\r\n applyForJob() {\r\n this.router.navigate(['app/job-apply'], {\r\n queryParams: { jobid: this.jobid, sf: this.sourceId },\r\n });\r\n }\r\n\r\n getCandidateProfileDetails() {\r\n this.apiService\r\n .getCandidateProfileDetails(parseFloat(this.candidateId), this.jobid)\r\n .subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.userApplyJob = data.result;\r\n if (this.userApplyJob.jobId != 0) {\r\n if (this.userApplyJob.candProfStatusCode == 'CCV') {\r\n this.Isapply = 'apply';\r\n } else {\r\n this.Isapply = 'applied';\r\n }\r\n }\r\n }\r\n }\r\n },\r\n (error) => {}\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{jobid}} - {{jobDetails.jobTitle}}\r\n

\r\n
\r\n
\r\n \r\n

{{jobDetails.minYears}}-{{jobDetails.maxYears}} Years

\r\n
\r\n \r\n
\r\n \r\n

{{jobDetails.startDate|date:\"dd MMMM YYYY\"}}

\r\n
\r\n \r\n
\r\n \r\n

{{jobDetails.cityName}}/{{jobDetails.countryName}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n Apply Now\r\n \r\n \r\n
\r\n
\r\n\r\n

Job Description

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Skills
\r\n
\r\n
Experience
\r\n
\r\n
\r\n
{{ skils.technology }}
\r\n\r\n
{{ skils.expYears || '0' }}.{{ skils.expMonth || '0' }} Yrs
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n Shared Files\r\n
\r\n
    \r\n
  • \r\n No Record\r\n
  • \r\n
  • \r\n
    \r\n
    \r\n \"download\"\r\n {{ candidateFileList.docType || '-' }}\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \"download\"\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
  • \r\n
\r\n
0\">\r\n \r\n
\r\n
\r\n \r\n
0\">\r\n
We are here to help you.
\r\n
\r\n
\r\n
\r\n \r\n \"\"\r\n \"\"\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
Share Job
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[carouselItem]',\r\n})\r\nexport class CarouselItemDirective {\r\n constructor(public tpl: TemplateRef) {}\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-job-category',\r\n templateUrl: './job-category.component.html',\r\n styleUrls: ['./job-category.component.scss']\r\n})\r\nexport class JobCategoryComponent implements OnInit {\r\njobCategory = [\r\n { \r\n img:'https://www.flaticon.com/svg/static/icons/svg/3014/3014003.svg',\r\n career:'Career in India' ,\r\n },\r\n { \r\n img:'https://www.flaticon.com/svg/static/icons/svg/3014/3014003.svg',\r\n career:'Career in Oman' ,\r\n },\r\n { \r\n img:'https://www.flaticon.com/svg/static/icons/svg/3014/3014003.svg',\r\n career:'Career in UAE' ,\r\n },\r\n { \r\n img:'https://www.flaticon.com/svg/static/icons/svg/3014/3014003.svg',\r\n career:'Career in Bahrain' ,\r\n },\r\n { \r\n img:'https://www.flaticon.com/svg/static/icons/svg/3014/3014003.svg',\r\n career:'Career in Qatar' ,\r\n },\r\n { \r\n img:'https://www.flaticon.com/svg/static/icons/svg/3014/3014003.svg',\r\n career:'Career in Kuwait' ,\r\n }];\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

500+

\r\n

Jobs Available

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Router, NavigationEnd } from '@angular/router';\r\nimport { AuthenticationService } from '../../../core/services/authentication.service';\r\nimport { NotificationsService } from '../../../shared/services/notifications.service';\r\nimport { CommonApiService } from '../../../shared/services';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\n@Component({\r\n selector: 'app-header-view',\r\n templateUrl: './header-view.component.html',\r\n styleUrls: ['./header-view.component.scss']\r\n})\r\nexport class HeaderViewComponent implements OnInit {\r\n @ViewChild('navtoggler', { static: true }) public navtoggler?: HTMLButtonElement;\r\n isFluidheader: any = false;\r\n isHomeheader: any = false;\r\n eventUrl: string;\r\n IsUserLoginOrNot: boolean = false;\r\n notifications: any=[];\r\n unreadCount: number;\r\n hideInJobdetailsPage: boolean = false;\r\n constructor(\r\n private modalService: NgbModal,\r\n private router: Router,\r\n private authenticationService: AuthenticationService,\r\n private notificationSevice: NotificationsService,\r\n private commonApiService: CommonApiService\r\n ) { }\r\n\r\n ngOnChanges() {\r\n if (this.authenticationService.currentUserValue == null) {\r\n this.IsUserLoginOrNot = false;\r\n\r\n } else {\r\n this.IsUserLoginOrNot = true;\r\n }\r\n }\r\n\r\n //headerEnableDisable() {\r\n // if (this.eventUrl.match('pre-employment-form')) {\r\n // this.isFluidheader = true;\r\n // }\r\n // if (this.eventUrl.match('job-conversation')) {\r\n // this.isFluidheader = true;\r\n // }\r\n // if (this.eventUrl.match('job-application')) {\r\n // this.isFluidheader = true;\r\n // }\r\n // if (this.eventUrl.match('home')) {\r\n // this.isFluidheader = true;\r\n // this.isHomeheader = true;\r\n // }\r\n // if (this.eventUrl.match('jobdetails')) {\r\n // this.hideInJobdetailsPage = true;\r\n // }\r\n //}\r\n\r\n websiteUrl: any;\r\n ngOnInit(): void {\r\n this.websiteUrl = environment.websiteUrl;\r\n if (this.authenticationService.currentUserValue == null)\r\n this.IsUserLoginOrNot = false;\r\n else\r\n this.IsUserLoginOrNot = true;\r\n\r\n this.eventUrl = this.router.url;\r\n //this.headerEnableDisable();\r\n //this.router.events.subscribe((event) => {\r\n // if (event instanceof NavigationEnd) {\r\n // this.eventUrl = event.url;\r\n // this.isFluidheader = false;\r\n // this.headerEnableDisable();\r\n // }\r\n //});\r\n if (this.IsUserLoginOrNot) {\r\n this.notificationSevice.getNotifications();\r\n this.notificationSevice.castNotifications.subscribe((x) => {\r\n this.notifications = x;\r\n if (this.notifications != null) {\r\n this.unreadCount = this.notifications.filter(f => f.notiStatus == 0).length;\r\n }\r\n });\r\n }\r\n if (this.authenticationService.currentUserValue != null) {\r\n if (this.authenticationService.currentUserValue.userDetails[\"profilePhoto\"] == null) {\r\n this.getCandidatePrimaryInfo(this.authenticationService.currentUserValue.userDetails.email);\r\n }\r\n }\r\n }\r\n\r\n logout() {\r\n this.authenticationService.logout();\r\n //this.router.navigate(['/pihire/home']);\r\n //window.location.href =environment.websiteUrl;\r\n }\r\n candidateProfileDetails: any = {};\r\n getCandidatePrimaryInfo(email) {\r\n this.commonApiService.getCandidatePrimaryInfo(email).subscribe((data: any) => {\r\n if (data.result != null || data.result.length != 0 || data.result.length != undefined) {\r\n this.candidateProfileDetails = data.result;\r\n this.authenticationService.currentUserValue.userDetails[\"profilePhoto\"] = data.result.profilePhoto\r\n }\r\n }, error => {\r\n\r\n })\r\n }\r\n updateReadStatus() {\r\n this.notificationSevice.updateReadStatus();\r\n }\r\n}\r\n","\r\n","import {\r\n animate,\r\n AnimationBuilder,\r\n AnimationFactory,\r\n AnimationPlayer,\r\n style,\r\n} from '@angular/animations';\r\nimport {\r\n AfterViewInit,\r\n Component,\r\n ContentChildren,\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n Input,\r\n QueryList,\r\n ViewChild,\r\n ViewChildren,\r\n} from '@angular/core';\r\n\r\nimport { CarouselItemDirective } from './carousel-item.directive';\r\nimport { CarouselItemElementDirective } from './carousel-item-element.directive';\r\n// usage\r\n// \r\n// \r\n// \r\n//
{{ item.title }}
\r\n//
\r\n//
\r\n//
\r\n\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'pihirecarousel',\r\n exportAs: 'pihirecarousel',\r\n templateUrl: './carousel.component.html',\r\n styleUrls: ['./carousel.component.scss'],\r\n})\r\n\r\nexport class CarouselComponent implements AfterViewInit {\r\n @ContentChildren(CarouselItemDirective)\r\n items!: QueryList;\r\n\r\n @ViewChildren(CarouselItemElementDirective, { read: ElementRef })\r\n private itemsElements!: QueryList;\r\n\r\n @ViewChild('pihirecarousel') private pihirecarousel!: ElementRef;\r\n @Input() timing = '250ms ease-in';\r\n @Input() showControls = true;\r\n private player!: AnimationPlayer;\r\n private itemWidth!: number;\r\n private currentSlide = 0;\r\n carouselWrapperStyle = {};\r\n\r\n constructor(private builder: AnimationBuilder) {\r\n }\r\n\r\n private buildAnimation(offset: any, time: any) {\r\n return this.builder.build([\r\n animate(time == null ? this.timing : 0, style({ transform: `translateX(-${offset}px)` }))\r\n ]);\r\n }\r\n\r\n /**\r\n * Progresses the pihirecarousel forward by 1 slide.\r\n */\r\n next() {\r\n if (this.currentSlide + 1 == this.items.length) {\r\n let arr = this.items.toArray();\r\n let first = arr.shift();\r\n arr = arr.concat([first!]);\r\n this.items.reset(arr);\r\n this.currentSlide--;\r\n this.transitionCarousel(0);\r\n }\r\n this.currentSlide = (this.currentSlide + 1) % this.items.length;\r\n this.transitionCarousel(null);\r\n }\r\n\r\n /**\r\n * Regresses the pihirecarousel backwards by 1 slide.\r\n */\r\n prev() {\r\n // if (this.currentSlide === 0) return;\r\n if (this.currentSlide == 0) {\r\n let arr = this.items.toArray();\r\n let last = arr.pop();\r\n arr = [last].concat(arr) as any;\r\n this.items.reset(arr);\r\n this.currentSlide++;\r\n this.transitionCarousel(0);\r\n }\r\n\r\n this.currentSlide =\r\n (this.currentSlide - 1 + this.items.length) % this.items.length;\r\n this.transitionCarousel(null);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.reSizeCarousel();\r\n }\r\n\r\n /**\r\n * Listens for changes to the viewport size and triggers a re-sizing of the pihirecarousel.\r\n */\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event: any) {\r\n this.reSizeCarousel();\r\n }\r\n\r\n /**\r\n * Re-sizes the pihirecarousel container and triggers `this.transitionCarousel()` to reset the childrens' positions.\r\n *\r\n * For use on initial load, and when changing viewport size.\r\n */\r\n reSizeCarousel(): void {\r\n // re-size the container\r\n this.itemWidth = this.itemsElements.first?.nativeElement?.getBoundingClientRect().width;\r\n\r\n // this.carouselWrapperStyle = {\r\n // width: `${this.itemWidth}px`,\r\n // };\r\n\r\n // trigger a fresh transition to the current slide to reset the position of the children\r\n this.transitionCarousel(null);\r\n }\r\n\r\n /**\r\n * Animates the pihirecarousel to the currently selected slide.\r\n *\r\n * **You must set `this.currentSlide` before calling this method, or it will have no effect.**\r\n */\r\n transitionCarousel(time: any) {\r\n const offset = this.currentSlide * this.itemWidth;\r\n const myAnimation: AnimationFactory = this.buildAnimation(offset, time);\r\n this.player = myAnimation.create(this.pihirecarousel.nativeElement);\r\n this.player.play();\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
    \r\n
  • \r\n \r\n
  • \r\n
\r\n
\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor, HttpErrorResponse } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { AuthenticationService } from '../services/authentication.service';\r\nimport { Router } from '@angular/router';\r\n\r\n\r\n@Injectable()\r\nexport class ErrorInterceptor {\r\n\r\n constructor(private authenticationService: AuthenticationService, private router: Router) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n return next.handle(request).pipe(catchError(err => {\r\n if (err.status === 401) {\r\n // auto logout if 401 response returned from api\r\n this.authenticationService.logout(true);\r\n this.router.navigate(['/login']);\r\n // location.reload(true);\r\n } else {\r\n if (err instanceof HttpErrorResponse) {\r\n return throwError(err)\r\n } else {\r\n const error = err.error.message || err.statusText;\r\n return throwError(error);\r\n }\r\n }\r\n }))\r\n }\r\n}\r\n","import { Directive, Input, ElementRef, HostListener } from '@angular/core';\n\n@Directive({\n selector: '[appMinMax]'\n})\nexport class MinMaxDirective {\n\n @Input()\n public min: number;\n\n @Input()\n public max: number;\n\n constructor(private ref: ElementRef) { }\n\n @HostListener('input', ['$event'])\n public onInput(a_Event: InputEvent): void {\n let val = parseInt(this.ref.nativeElement.value);\n if (this.max !== null && this.max !== undefined && val >= this.max)\n this.ref.nativeElement.value = this.max.toString();\n else if (this.min !== null && this.min !== undefined && val <= this.min)\n this.ref.nativeElement.value = this.min.toString();\n }\n\n}","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\n\r\n@Component({\r\n selector: 'app-marital-status',\r\n templateUrl: './marital-status.component.html',\r\n styleUrls: ['./marital-status.component.scss'],\r\n})\r\nexport class MaritalStatusComponent implements OnInit {\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n validationFlag: boolean = false;\r\n constructor(public JobApplication: JobApplicationComponent) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n setTimeout(() => {\r\n this.checkOpeningPREF();\r\n }, 500);\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {};\r\n\r\n checkOpeningPREF() {\r\n if (this.requiredOrNotFlag == 1) {\r\n this.validationFlag = true;\r\n if (\r\n this.JobApplication.candidateProfileDetails.maritalStatus == null ||\r\n this.JobApplication.candidateProfileDetails.maritalStatus == ''\r\n ) {\r\n return false;\r\n }\r\n }\r\n var AvailindexIs = this.fildOfCandidateDetails\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF =\r\n this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n }\r\n save() {}\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\r\n }\r\n requiredOrNotFlag: number = 0;\r\n}\r\n","
Personal Information
\r\n
\r\n
\r\n
\r\n

Marital status

\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n Required\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Please provide all information\r\n requested. A partially filled application may not be considered for\r\n review.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { environment } from '../../../environments/environment';\r\nimport { SendMessageModel } from '../model/chat-communication-model';\r\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ChatCommunicationService {\n\n messages: any[] = null;\n allMessages: any[] = null;\n rooms: any[] = null;\n roomId: number;\n unreadCount: any[] = null;\n private chatMessagesSubject = new BehaviorSubject(null);\n castChatMessages = this.chatMessagesSubject.asObservable();\n\n private chatMessagesAllSubject = new BehaviorSubject(null);\n castChatMessagesAll = this.chatMessagesAllSubject.asObservable();\n\n private roomsSubject = new BehaviorSubject(null);\n castRooms = this.roomsSubject.asObservable();\n\n private unreadCountSubject = new BehaviorSubject(null);\n castUnreadCount = this.unreadCountSubject.asObservable();\n\n constructor(\n private http: HttpClient\n ) { }\n\n getChatCommunication(model: any) {\n this.http.post(`${environment.baseUrl}/ChatComunication/GetChatMessages`, model).subscribe((resp: any) => {\n this.messages = null;\n if (resp != null) {\n if (resp.messages != null)\n this.messages = resp.messages;\n this.roomId = resp.roomId;\n this.chatMessagesSubject.next(this.messages);\n }\n }, (error) => {\n\n });\n }\n\n getRoomByJob(model: any) {\n this.http.post(`${environment.baseUrl}/ChatComunication/GetRoomsByJob`, model).subscribe((resp: any) => {\n if (resp != null) {\n this.rooms = resp;\n this.roomsSubject.next(this.rooms);\n }\n }, (error) => {\n\n });\n }\n\n getAllChatCommunication() {\n this.http.get(`${environment.baseUrl}/ChatComunication/GetAllChatMessages`).subscribe((resp: any) => {\n if (resp != null) {\n if (resp.messages != null)\n this.allMessages = resp.messages;\n // this.roomId = resp.roomId;\n this.chatMessagesAllSubject.next(this.allMessages);\n }\n }, (error) => {\n\n });\n }\n\n updateChatMessages(message: any) {\n if (this.messages == null) {\r\n this.messages = [];\r\n }\n this.GetUnreadCount();\n if (message.roomId == this.roomId) {\r\n this.messages.push(message);\n this.chatMessagesSubject.next(this.messages);\r\n }\n\n if (this.allMessages == null) {\r\n this.allMessages = [];\r\n }\n this.allMessages.push(message);\n this.chatMessagesAllSubject.next(this.allMessages);\n }\n\n setRoomId(roomId: number) {\n this.roomId = roomId;\r\n }\n\n sendChatCommunicationMessage(formData: FormData) {\n return this.http.post(`${environment.baseUrl}/ChatComunication/SendChatMessages`, formData);\n }\n\n GetUnreadCount() {\n this.http.get(`${environment.baseUrl}/ChatComunication/GetUnreadCount`).subscribe((resp:any) => {\r\n if (resp != null) {\r\n this.unreadCount = resp;\r\n this.unreadCountSubject.next(this.unreadCount);\r\n }\r\n }, (error) => {\r\n\r\n });\r\n }\n\n UpdateReadStatus(roomId:number) {\n this.http.post(`${environment.baseUrl}/ChatComunication/UpdateReadStatus`, { roomId: roomId}).subscribe((resp: any) => {\r\n if (resp != null) {\r\n for (var i = 0; i < this.unreadCount.length; i++) {\r\n if (roomId == this.unreadCount[i].roomId) {\r\n this.unreadCount[i].count = 0;\r\n }\r\n }\r\n this.unreadCountSubject.next(this.unreadCount);\r\n }\r\n }, (error) => {\r\n\r\n });\r\n }\n\n}\n","import { Component, EventEmitter, Input, OnInit, Output, ViewChild, ElementRef, ChangeDetectorRef } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { environment } from '../../../../../environments/environment';\r\n\r\ndeclare var gapi: any;\r\ndeclare var google: any;\r\n\r\n\r\n@Component({\r\n selector: 'app-upload-resume',\r\n templateUrl: './upload-resume.component.html',\r\n styleUrls: ['./upload-resume.component.scss']\r\n})\r\nexport class UploadResumeComponent implements OnInit {\r\n\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n @ViewChild('resume', { read: ElementRef })\r\n resume: ElementRef;\r\n resume_name: any;\r\n\r\n developerKey;\r\n CLIENT_ID;\r\n appId;\r\n SCOPES;\r\n pickerApiLoaded = false;\r\n oauthToken;\r\n isGoogleDriveEnabled: boolean = true;\r\n constructor(public JobApplication: JobApplicationComponent, private toastr: ToastrService, private changeDetectorRef: ChangeDetectorRef) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {}\r\n validationFlag: boolean = false;\r\n checkOpeningPREF() {\r\n //if (this.requiredOrNotFlag == 1) {\r\n // if (this.JobApplication.googleDriveResumeFiles && this.JobApplication.googleDriveResumeFiles.length > 0) {\r\n\r\n // }\r\n // else {\r\n // // const files = (this.resume.nativeElement as HTMLInputElement).files;\r\n // // const sendable = new FormData();\r\n // // this.JobApplication.candidateProfileDetails.resume = files;\r\n // // if (this.JobApplication.candidateProfileDetails.resume == null) {\r\n // // this.validationFlag = true;\r\n // // return false;\r\n // // }\r\n // if ((this.JobApplication.candidateProfileDetails.resume?.length ?? 0) == 0) {\r\n // this.validationFlag = true;\r\n // return false;\r\n // }\r\n // }\r\n //}\r\n if ((this.JobApplication.candidateProfileDetails.resume?.length ?? 0) == 0) {\r\n this.validationFlag = true;\r\n return false;\r\n }\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n\r\n }\r\n save() {\r\n\r\n }\r\n requiredOrNotFlag: number = 2;\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\r\n this.developerKey = environment.google.picker.DeveloperKey ?? 'AIzaSyCITcpljUY9xOAaUy31-h_L8GR2NjFmoc8';\r\n this.CLIENT_ID = environment.google.picker.ClientId ?? \"433136606656-0t5vbq82i88hjjg7v8orri6dccfgqeec.apps.googleusercontent.com\";\r\n this.appId = environment.google.picker.AppId ?? \"433136606656\";\r\n this.SCOPES = environment.google.picker.Scope ?? 'https://www.googleapis.com/auth/drive.file';\r\n\r\n this.pickerApiLoaded = false;\r\n this.oauthToken = '';\r\n }\r\n checkValidationFlag() {\r\n this.validationFlag =\r\n this.requiredOrNotFlag == 1 ?\r\n (((this.JobApplication.googleDriveResumeFiles?.length ?? 0) + (this.JobApplication.candidateProfileDetails.resume?.length ?? 0)) == 0) : false;\r\n }\r\n\r\n\r\n\r\n // Use the Google API Loader script to load the google.picker script.\r\n loadPicker() {\r\n console.log(\"Loading auth2 & picker\");\r\n this.isPickerLoaded = false;\r\n gapi.load('auth2', {\r\n 'callback': () => {\r\n var auth = gapi.auth2.getAuthInstance();\r\n if (auth) {\r\n //auth.disconnect();\r\n var authResult = auth.currentUser.get().getAuthResponse();\r\n if (authResult) {\r\n this.authorizeResult(authResult);\r\n console.log(\"auth2 exist\");\r\n return;\r\n }\r\n }\r\n gapi.auth2.authorize(\r\n {\r\n 'client_id': this.CLIENT_ID,\r\n 'scope': this.SCOPES,\r\n 'immediate': false\r\n }, (authResult) => {\r\n this.authorizeResult(authResult);\r\n console.log(\"auth2 success\");\r\n });\r\n }\r\n });\r\n gapi.load('picker', {\r\n 'callback': () => {\r\n this.pickerApiLoaded = true;\r\n this.createPicker();\r\n }\r\n });\r\n }\r\n authorizeResult(authResult: any) {\r\n if (authResult && !authResult.error) {\r\n if (authResult.scope.indexOf(this.SCOPES) == -1) {\r\n console.log(\"auth2 success but drive scope missing(\" + authResult.scope + \"). Reintilize the scope.\");\r\n this.loadPicker();\r\n return;\r\n }\r\n console.log(\"auth2 success\");\r\n this.oauthToken = authResult.access_token;\r\n this.createPicker();\r\n gapi.load('client:auth2', () => {\r\n console.log(\"client auth2 loaded\");\r\n var that = this;\r\n gapi.client.init({\r\n //apiKey: API_KEY,\r\n clientId: that.CLIENT_ID,\r\n discoveryDocs: that.DISCOVERY_DOCS,\r\n scope: that.SCOPES\r\n }).then(function () {\r\n // Listen for sign-in state changes.\r\n gapi.auth2.getAuthInstance().isSignedIn.listen(that.updateClientSigninStatus);\r\n\r\n // Handle the initial sign-in state.\r\n that.updateClientSigninStatus(gapi.auth2.getAuthInstance().isSignedIn.get());\r\n\r\n }, function (error) {\r\n console.log(JSON.stringify(error, null, 2));\r\n });\r\n });\r\n } else {\r\n console.log(\"auth2 failed -> \" + JSON.stringify(authResult));\r\n }\r\n }\r\n DISCOVERY_DOCS = [\"https://www.googleapis.com/discovery/v1/apis/drive/v3/rest\"];\r\n\r\n updateClientSigninStatus(isSignedIn) {\r\n console.log(\"client auth2 isSignedIn:\" + isSignedIn);\r\n if (isSignedIn) {\r\n } else {\r\n gapi.auth2.getAuthInstance().signIn();\r\n }\r\n }\r\n\r\n isPickerLoaded = false;\r\n // Create and render a Picker object for searching images.\r\n createPicker() {\r\n if (this.pickerApiLoaded && this.oauthToken) {\r\n console.log(\"picker -> loading.\" + this.isPickerLoaded);\r\n if (this.isPickerLoaded == false) {\r\n this.isPickerLoaded = true;\r\n //var view = new google.picker.View(google.picker.ViewId.DOCS);\r\n var view = new google.picker.View(google.picker.ViewId.PDFS);\r\n view.setMimeTypes(\"application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingm\");\r\n var picker = new google.picker.PickerBuilder()\r\n .enableFeature(google.picker.Feature.NAV_HIDDEN)\r\n //.enableFeature(google.picker.Feature.MULTISELECT_ENABLED)\r\n .setAppId(this.appId)\r\n .setOAuthToken(this.oauthToken)\r\n .addView(view)\r\n .addView(new google.picker.DocsUploadView())\r\n .setDeveloperKey(this.developerKey)\r\n .setCallback((data) => {\r\n this.JobApplication.resumefilesList = [];\r\n var googleDriveResumeFiles = [];\r\n if (data.action == google.picker.Action.PICKED) {\r\n console.log(\"picker -> selected\");\r\n var docs = data[google.picker.Response.DOCUMENTS];\r\n var that = this;\r\n that.JobApplication.resumefilesList = [];\r\n for (let a = 0; a < docs.length; a++) {\r\n let obj = { id: docs[a].id, \"name\": docs[a].name, \"url\": docs[a].url, ResumeURLType: docs[a].mimeType };\r\n\r\n gapi.client.load('drive', 'v3', function () {\r\n\r\n const file = gapi.client.drive.files.get({ 'fileId': obj.id, alt: 'media' }, {\r\n responseType: 'arraybuffer',\r\n });\r\n file.then(function (res) {\r\n // In this case, res.body is the binary data of the downloaded file.\r\n const charArray = new Array(res.body.length);\r\n for (let i = 0; i < res.body.length; i++) {\r\n charArray[i] = res.body.charCodeAt(i);\r\n }\r\n const typedArray = new Uint8Array(charArray);\r\n const blob = new Blob([typedArray], { type: res.headers['Content-Type'] });\r\n\r\n let fl = new File([blob], obj.name, { type: blob.type, lastModified: Date.now() });\r\n that.JobApplication.resumefilesList.push(fl);\r\n that.JobApplication.candidateProfileDetails.resume = that.JobApplication.resumefilesList;\r\n that.checkValidationFlag();\r\n that.changeDetectorRef.detectChanges();\r\n });\r\n that.isGoogleDriveEnabled = true;\r\n });\r\n }\r\n if (!(docs.length > 0)) {\r\n console.log(\"picker -> no file selected\");\r\n }\r\n }\r\n if (googleDriveResumeFiles.length > 0) {\r\n this.JobApplication.resumefilesList = [];\r\n this.JobApplication.googleDriveResumeFiles = googleDriveResumeFiles;\r\n this.JobApplication.candidateProfileDetails.resume = null;\r\n this.checkValidationFlag();\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n this.resume.nativeElement.value = \"\";\r\n })\r\n .build();\r\n picker.setVisible(true);\r\n }\r\n }\r\n else {\r\n console.log(\"picker -> pickerApiLoaded:\" + this.pickerApiLoaded + \", oauthToken:\" + (this.oauthToken ? true : false));\r\n }\r\n }\r\n googleDriveResumeFiles: any = [];\r\n // A simple callback implementation.\r\n\r\n uploadresume() {\r\n this.validationFlag = false\r\n this.JobApplication.resumefilesList = [];\r\n this.JobApplication.googleDriveResumeFiles = [];\r\n let files = (this.resume.nativeElement as HTMLInputElement).files;\r\n if (files.length > 0) {\r\n let isValidFile = false;\r\n for (let i = 0; i < files.length; i++) {\r\n let file = files[i];\r\n if (file.size > 1048576 * 4) {\r\n let text = 'Resume file size should be less then 4MB';\r\n this.toastr.error(text);\r\n isValidFile = true;\r\n }\r\n }\r\n if (isValidFile) {\r\n this.resume.nativeElement.value = \"\";\r\n return;\r\n }\r\n }\r\n for (let f = 0; f < files.length; f++) {\r\n this.JobApplication.resumefilesList.push(files[f])\r\n }\r\n this.JobApplication.candidateProfileDetails.resume = this.JobApplication.resumefilesList;\r\n this.resume.nativeElement.value = \"\";\r\n this.checkValidationFlag();\r\n }\r\n removeResume(index: number) {\r\n this.JobApplication.resumefilesList.splice(index, 1);\r\n this.checkValidationFlag();\r\n }\r\n removeGoogleDriveResume(index: number) {\r\n this.JobApplication.googleDriveResumeFiles.splice(index, 1);\r\n this.checkValidationFlag();\r\n }\r\n\r\n}\r\n\r\n","
Upload Resume
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Resume

\r\n We’d like to get to know you better\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"document\"\r\n

{{fil.name}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"google\"\r\n

{{fil.name}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","\nimport { Directive, HostListener, ElementRef } from '@angular/core';\n\n@Directive({\n selector: '[appAlphabetOnly]'\n})\n\nexport class AllowedRegExpDirective {\n key;\n @HostListener('keydown', ['$event']) onKeydown(event: KeyboardEvent) {\n this.key = event.keyCode;\n if (this.key != 32 && this.key != 190 && this.key != 46) {\n if ((this.key >= 15 && this.key <= 64) || (this.key >= 123) || (this.key >= 96 && this.key <= 105)) {\n event.preventDefault();\n }\n }\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output, ElementRef } from '@angular/core';\nimport { JobApplicationComponent } from '../../job-application.component';\nimport { CommonApiService } from '../../../../shared/services';\n@Component({\n selector: 'app-certification',\n templateUrl: './certification.component.html',\n styleUrls: ['./certification.component.scss']\n})\nexport class CertificationComponent implements OnInit {\n @Input() application: any;\n @Input() currentOpeningPREF: any = {};\n @Input() fildOfCandidateDetails: any;\n @Output() valueChange = new EventEmitter();\n validationFlag: boolean = false;\n constructor(public JobApplication: JobApplicationComponent, private commonApiService: CommonApiService, private el: ElementRef) {\n // this.changeWizard = new EventEmitter();\n }\n next() {\n this.checkOpeningPREF();\n }\n previous() {\n this.previousCheckValue();\n }\n previousCheckValue() {\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\n this.valueChange.emit(this.currentOpeningPREF);\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\n if (ExistindexIs != -1) {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.valueChange.emit(this.currentOpeningPREF);\n } else {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.previousCheckValue();\n }\n }\n }\n CheckVaribale: any = {}\n \n checkOpeningPREF() {\n if (this.CertificationID != null) {\n this.addcertificates();\n }\n if (this.requiredOrNotFlag == 1) {\n if (this.JobApplication.candidateCirtificates?.length == 0) {\n this.validationFlag = true;\n return false;\n }\n }\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\n this.valueChange.emit(this.currentOpeningPREF);\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\n if (ExistindexIs != -1) {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\n this.valueChange.emit(this.currentOpeningPREF);\n } else {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\n this.checkOpeningPREF();\n }\n }\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\n\n }\n save() {\n\n }\n\n ngOnInit(): void {\n this.CheckVaribale = this.currentOpeningPREF;\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\n }\n requiredOrNotFlag: number = 0;\n CertificationID: number = null;\n addFlag: boolean = false;\n addcertificates() {\n this.addFlag = true;\n if (this.CertificationID == null) {\n return false;\n }\n var cert = this.JobApplication.CertificationList.filter(x => x.id == this.CertificationID);\n if (cert.length != 0) {\n var certDtls = this.JobApplication.candidateCirtificates.filter(x => x.CertificationID == this.CertificationID);\n if (certDtls.length == 0) {\n this.JobApplication.candidateCirtificates.push({ id: 0, CertificationID: this.CertificationID, certificationName: cert[0].rmvalue })\n } \n }\n this.CertificationID = null;\n this.addFlag = false;\n }\n\n removequalification(index) {\n this.JobApplication.candidateCirtificates.splice(index, 1);\n }\n}\n","
Certification
\n
\n
\n
\n
\n
\n
\n
\n \n \n {{ c.rmvalue }}\n \n \n \n
\n
\n
\n \n
\n
\n \n Required\n \n
\n
\n \n Certifications Required\n \n
\n
\n
\n
\n
\n
\n
Certification
\n
Action
\n
\n
\n
\n {{ql.certificationName}}\n
\n
\n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n\n
\n
\n
\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\n@Component({\r\n selector: 'app-gender',\r\n templateUrl: './gender.component.html',\r\n styleUrls: ['./gender.component.scss'],\r\n})\r\nexport class GenderComponent implements OnInit {\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n constructor(\r\n public JobApplication: JobApplicationComponent,\r\n private toastr: ToastrService\r\n ) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n setTimeout(() => {\r\n this.checkOpeningPREF();\r\n }, 500);\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {};\r\n validationFlag: boolean = false;\r\n checkOpeningPREF() {\r\n if (this.requiredOrNotFlag == 1) {\r\n this.validationFlag = true;\r\n if (\r\n this.JobApplication.candidateProfileDetails.gender == null ||\r\n this.JobApplication.candidateProfileDetails.gender == ''\r\n ) {\r\n // this.toastr.warning('Please select ge');\r\n return false;\r\n }\r\n }\r\n var AvailindexIs = this.fildOfCandidateDetails\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF =\r\n this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n }\r\n save() {}\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\r\n }\r\n requiredOrNotFlag: number = 0;\r\n ngOnChanges() {}\r\n}\r\n","
Personal Information
\r\n
\r\n
\r\n
\r\n

Gender

\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n Required\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Please provide all information\r\n requested. A partially filled application may not be considered for\r\n review.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn-bd\": \"loYQ\",\n\t\"./bn-bd.js\": \"loYQ\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-mx\": \"tbfe\",\n\t\"./es-mx.js\": \"tbfe\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\ndeclare var moment: any;\r\n@Component({\r\n selector: 'app-employment-details',\r\n templateUrl: './employment-details.component.html',\r\n styleUrls: ['./employment-details.component.scss']\r\n})\r\nexport class EmploymentDetailsComponent implements OnInit {\r\n\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n validationFlag: boolean = false;\r\n constructor(public JobApplication: JobApplicationComponent) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {}\r\n checkOpeningPREF() {\r\n if (this.JobApplication.candidateProfileDetails.currOrganization != null && this.JobApplication.candidateProfileDetails.currOrganization != \"\") {\r\n this.JobApplication.candidateProfileDetails.currOrganization = this.JobApplication.candidateProfileDetails.currOrganization.trim();\r\n }\r\n if (this.requiredOrNotFlag == 1) {\r\n this.validationFlag = true;\r\n if (this.JobApplication.candidateProfileDetails.currOrganization == null || this.JobApplication.candidateProfileDetails.currOrganization == \"\") {\r\n // this.toastr.warning('Please enter name as pasport ');\r\n return false;\r\n }\r\n var nameis = this.JobApplication.candidateProfileDetails.currDesignation;\r\n if (nameis == null || nameis == \"\") {\r\n // this.toastr.warning('Please enter full name');\r\n return false;\r\n }\r\n }\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n\r\n }\r\n save() {\r\n\r\n }\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\r\n }\r\n requiredOrNotFlag: number = 0;\r\n\r\n\r\n}\r\n\r\n","
Employment Details
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Are you currently associated (working) with any organization?\r\n

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Required\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

Previous Employer Name\r\n

\r\n

Current Employer Name

\r\n
\r\n \r\n \r\n
\r\n Required\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

Designation

\r\n
\r\n \r\n {{ c.rmvalue }}\r\n \r\n \r\n\r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n Please provide all information\r\n requested. A partially filled application may not be considered for\r\n review.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { AuthenticationService } from './core/services/authentication.service';\nimport { CustomRouteService } from './core/services/custom-route.service';\nimport { environment } from './../../src/environments/environment';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss'],\n})\nexport class AppComponent {\n title = 'pihire';\n client_env_name : string = environment.env_name;\n serve_env_name : null;\n //keep refs to subscriptions to be able to unsubscribe later\n \n constructor(\n private authenticationService: AuthenticationService,\n private customRouteService: CustomRouteService // loading the service\n ) {\n }\n\n ngOnInit() { \n }\n\n ngOnDestroy() {\n }\n}\n","\r\n","// import {\n// Component,\n// OnInit,\n// OnDestroy,\n// ElementRef,\n// Input,\n// EventEmitter,\n// Output,\n// ViewChild,\n// } from '@angular/core';\n// declare var MediaRecorder;\n\n// @Component({\n// selector: 'app-videojs-record',\n// templateUrl: './videojs-record.component.html',\n// styleUrls: ['./videojs-record.component.scss'],\n// })\n// export class VideojsRecordComponent implements OnInit {\n// @ViewChild('player', { read: ElementRef })\n// player: ElementRef;\n// @ViewChild('previewRecorder', { read: ElementRef })\n// previewRecorder: ElementRef;\n// @Output() playerRec = new EventEmitter();\n// mediaRecorder;\n// recordedChunks = [];\n// options = { mimeType: 'video/webm' };\n// userMedias;\n// isRecorderStatred = false;\n// videoRecorderAction = false;\n// videoRecorderActionStop: boolean =false;\n// videoRecorderActionStarted: boolean =false;\n// videoRecorderActionPause: boolean =false;\n// constructor() {}\n\n// startVideoRecord() {\n// this.isRecorderStatred = true;\n// this.player.nativeElement.controls = false;\n// navigator.mediaDevices\n// .getUserMedia({ audio: true, video: true })\n// .then((stream) => {\n// this.userMedias = stream;\n// this.player.nativeElement.srcObject = stream;\n// this.mediaRecorder = new MediaRecorder(stream, this.options);\n// this.mediaRecorder.addEventListener('dataavailable', (e) => {\n// if (e.data.size > 0) {\n// this.recordedChunks.push(e.data);\n// }\n// });\n// this.mediaRecorder.addEventListener('stop', () => {\n// this.videoRecorderActionStarted = false;\n// this.videoRecorderActionPause = false;\n// this.previewRecorder.nativeElement.src = URL.createObjectURL(\n// new Blob(this.recordedChunks)\n// );\n// this.stopBothVideoAndAudio();\n// var fileOfBlob = new File(this.recordedChunks, 'test.webm', {\n// type: 'video/webm',\n// });\n\n// this.playerRec.emit({ rec: fileOfBlob });\n// });\n// this.videoRecorderActionStarted = true;\n// this.videoRecorderActionPause = true;\n\n// this.mediaRecorder.start();\n// this.player.nativeElement.play();\n// });\n// }\n// stopBothVideoAndAudio() {\n// this.userMedias.getTracks().forEach((track) => {\n// if (\n// track.readyState == 'live' &&\n// (track.kind === 'audio' || track.kind === 'video')\n// ) {\n// track.stop();\n// }\n// });\n// }\n// pauseVideoRecord() {\n// this.videoRecorderActionPause = false;\n// this.mediaRecorder.pause();\n// this.player.nativeElement.pause();\n// }\n// resumeVideoRecord() {\n// this.videoRecorderActionPause = true;\n// this.mediaRecorder.resume();\n// this.player.nativeElement.play();\n// }\n// resetVideoRecord() { \n// this.previewRecorder.nativeElement.src = '';\n// this.previewRecorder.nativeElement.pause();\n// this.recordedChunks = [];\n// this.isRecorderStatred = false;\n// this.videoRecorderActionStarted = false;\n// }\n// stopVideoRecord() {\n// this.mediaRecorder.stop();\n// this.player.nativeElement.pause();\n// }\n\n// ngOnInit() {}\n// }\n\nimport {\n Component,\n OnInit,\n OnDestroy,\n ElementRef,\n Output,\n EventEmitter\n} from '@angular/core';\n\nimport videojs from 'video.js';\n\nimport * as RecordRTC from 'recordrtc';\n\n\nimport * as Record from 'videojs-record/dist/videojs.record.js';\nimport { ToastrService } from 'ngx-toastr';\n\n/*\n// Required imports when recording audio-only using the videojs-wavesurfer plugin\nimport * as WaveSurfer from 'wavesurfer.js';\nimport * as MicrophonePlugin from 'wavesurfer.js/dist/plugin/wavesurfer.microphone.js';\nWaveSurfer.microphone = MicrophonePlugin;\n\n// Register videojs-wavesurfer plugin\nimport * as Wavesurfer from 'videojs-wavesurfer/dist/videojs.wavesurfer.js';\n*/\n\n// register videojs-record plugin with this import\n\n\n\n@Component({\n selector: 'app-videojs-record',\n templateUrl: './videojs-record.component.html',\n styleUrls: ['./videojs-record.component.scss'],\n})\nexport class VideojsRecordComponent implements OnInit {\n\n // reference to the element itself: used to access events and methods\n private _elementRef: ElementRef\n\n // index to create unique ID for component\n idx = 'clip1';\n\n private config: any;\n private player: any;\n private plugin: any;\n\n @Output() playerRec = new EventEmitter();\n isRecording: boolean = false;\n // constructor initializes our declared vars\n constructor(elementRef: ElementRef,\n private toastr: ToastrService\n ) {\n this.player = false; \n this.plugin = Record; \n this.config = {\n controls: true,\n autoplay: false,\n fluid: false,\n loop: false,\n // width: 320,\n // height: 240,\n bigPlayButton: false,\n \n controlBar: {\n volumePanel: false\n },\n plugins: {\n /*\n // wavesurfer section is only needed when recording audio-only\n wavesurfer: {\n backend: 'WebAudio',\n waveColor: '#36393b',\n progressColor: 'black',\n debug: true,\n cursorWidth: 1,\n displayMilliseconds: true,\n hideScrollbar: true,\n plugins: [\n // enable microphone plugin\n WaveSurfer.microphone.create({\n bufferSize: 4096,\n numberOfInputChannels: 1,\n numberOfOutputChannels: 1,\n constraints: {\n video: false,\n audio: true\n }\n })\n ]\n },\n */\n // configure videojs-record plugin\n record: {\n image: false,\n audio: true,\n video: true,\n debug: true,\n maxLength: 60,\n }\n }\n };\n }\n\n ngOnInit() { }\n\n // use ngAfterViewInit to make sure we initialize the videojs element\n // after the component template itself has been rendered\n ngAfterViewInit() {\n // ID with which to access the template's video element\n let el = 'video_' + this.idx;\n\n // setup the player via the unique element ID\n this.player = videojs(document.getElementById(el), this.config, () => {\n\n // print version information at startup\n var msg = 'Using video.js ' + videojs.VERSION +\n ' with videojs-record ' + videojs.getPluginVersion('record') +\n ' and recordrtc ' + RecordRTC.version;\n videojs.log(msg); \n });\n // this.player.aspectRatio('16:9');\n // this.player.fill(true);\n // this.player.fluid(true);\n // device is ready\n this.player.on('deviceReady', () => {\n console.log('ready')\n });\n\n // user clicked the record button and started recording\n this.player.on('startRecord', () => {\n console.log('start');\n \n this.playerRec.emit({ rec: \"\" ,recDataBlob: \"\" , isEndedRecord : false });\nthis.isRecording = true;\n });\n\n // user completed recording and stream is available\n this.player.on('finishRecord', () => {\n // recordedData is a blob object containing the recorded data that\n // can be downloaded by the user, stored on server etc.\n // this.player.recorder.getDevice();\n var fileOfBlob = new File([this.player.recordedData], 'test.mp4', {\n type: 'video/mp4',\n });\n \n this.playerRec.emit({ rec: fileOfBlob ,recDataBlob: this.player.recordedData , isEndedRecord : true});\n this.isRecording = false;\n this.player.record().stopDevice(); \n });\n\n // error handling\n this.player.on('error', (element, error) => {\n console.warn(error);\n });\n\n this.player.on('deviceError', () => {\n this.toastr.error('Camera is Not Found');\n });\n }\n\n // use ngOnDestroy to detach event handlers and remove the player\n ngOnDestroy() {\n if (this.player) {\n this.player.dispose();\n this.player = false;\n }\n }\n\n}\n","\n\n\n","import { Options } from '@angular-slider/ngx-slider';\nimport { Component, ElementRef, EventEmitter, Input, OnInit, Output, SimpleChanges } from '@angular/core';\nimport { JobApplyComponent } from '../job-apply.component';\nimport { JobOpeningPreferenceTypes } from '../../../core/models/enums';\nimport { CommonApiService } from '../../../shared/services/common-api.service';\nimport { forkJoin } from 'rxjs';\nimport { ToastrService } from 'ngx-toastr';\n\n@Component({\n selector: 'app-job-apply-personal-details',\n templateUrl: './job-apply-personal-details.component.html',\n styleUrls: ['./job-apply-personal-details.component.scss']\n})\nexport class JobApplyPersonalDetailsComponent implements OnInit {\n\n @Input() CountriesList: any = [];\n @Input() CitiesList: any = [];\n validationFlag: boolean = false;\n @Input('application') application: any;\n @Output() valueChange = new EventEmitter();\n\n @Input() currentPage: number;\n @Input() currentWizard: number;\n\n\n maxValue: number = 0\n options: Options = {\n floor: 0,\n ceil: 30,\n step: 0.1,\n showTicks: true,\n showTicksValues: false,\n getLegend: (value: number): string => {\n this.maxValue = value;\n return \"\" + value;\n },\n translate: (value: number): string => {\n return ' ' + value + ' Years';\n },\n };\n //countryCodePhoneNumber:any;\n //altCountryCodePhoneNumber:any;\n options_relevent: Options = {\n floor: 0,\n ceil: 30,\n step: 0.1,\n maxRange: this.maxValue,\n showTicks: true,\n showTicksValues: false,\n getLegend: (value: number): string => {\n return \"\" + value;\n },\n translate: (value: number): string => {\n return ' ' + value + ' Years';\n },\n };\n maxDate: Date;\n minDate:Date = new Date();\n datePickerConfig = {\n dateInputFormat: 'DD MMM YYYY',\n containerClass: 'theme-green',\n showWeekNumbers: false,\n isAnimated: true,\n adaptivePosition: true,\n width: 400,\n height: 300\n };\n constructor(\n public JobApplication: JobApplyComponent,\n private commonApiService: CommonApiService,\n private elementRef: ElementRef,\n private toastr: ToastrService\n ) { }\n CheckDOBFlag: boolean = true;\n preferenceType: any = JobOpeningPreferenceTypes;\n genderList: any = [];\n languages: any = []\n visaPreferences: any = [];\n regions: any = [];\n maritalStatusList: any = [];\n drivingLicesnses: any = [];\n domains: any = [];\n categories: any = [];\n regionName: string;\n domainName: string;\n\n ngOnInit(): void {\n console.log(this.application);\n this.getAllMasterData();\n this.setCurrentLocationName();\n }\n prevoius() {\n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: false\n });\n }\n ngOnChanges(changes: SimpleChanges) { \n if(changes.currentPage.currentValue == 3) {\n this.maxValue = parseInt(this.JobApplication.candidateProfileDetails.totalExperiance);\n if(this.maxValue) {\n this.options_relevent = {\n floor: 0,\n ceil: 30,\n maxRange: this.maxValue,\n step: 0.1,\n showTicks: true,\n showTicksValues: false,\n getLegend: (value: number): string => {\n return \"\" + value;\n },\n translate: (value: number): string => {\n return ' ' + value + ' Years';\n },\n };\n }\n \n }\n }\n\n isSubmitted:boolean = false;\n\n\n focusFirstInvalidControl(form:any): void {\n for (const control in form.controls) {\n if (form.controls[control].invalid) {\n const invalidControl = this.elementRef.nativeElement.querySelector('[name=' + control + ']');\n if (invalidControl) {\n invalidControl.focus();\n invalidControl.scrollIntoView({ behavior: 'smooth', block: 'center' });\n this.highlightParentGroup(invalidControl);\n\n break;\n }\n }\n }\n }\n\n highlightParentGroup(control: HTMLElement) {\n const parentGroup = control.closest('.form-group');\n if (parentGroup) {\n parentGroup.classList.add('highlight');\n setTimeout(() => {\n parentGroup.scrollIntoView({ behavior: 'smooth', block: 'center' });\n\n parentGroup.classList.remove('highlight');\n }, 500); // Remove the highlight after 3 seconds or customize as needed\n }\n }\n\n next(form) {\n this.isSubmitted = true;\n \n if(form.invalid || (this.JobApplication.candidateProfileDetails.contactNo == this.JobApplication.candidateProfileDetails.alteContactNo)) {\n this.focusFirstInvalidControl(form)\n return;\n }\n\n if(this.application.candidatePrefNationality == this.preferenceType.ESSENTIAL && (!this.JobApplication.candidateProfileDetails.nationality || !this.JobApplication.candidateProfileDetails.countryID || !this.JobApplication.candidateProfileDetails.currLocationID)) {\n this.focusFirstInvalidControl(form)\n return;\n }\n\n if((this.JobApplication.candidateProfileDetails.contactNo && !this.JobApplication.candidateProfileDetails.countryCodePhoneNumber) \n || (this.JobApplication.candidateProfileDetails.alteContactNo && !this.JobApplication.candidateProfileDetails.altCountryCodePhoneNumber)) {\n this.focusFirstInvalidControl(form)\n return;\n }\n\n \n if(this.currentPage == 3 && this.application.expeInMonthsPrefTyp && this.application.releventExpInMonthsPrefTyp) {\n\n if((this.JobApplication.candidateProfileDetails.totalExperiance == 0)) {\n // this.toastr.warning('Please select total experience.')\n return;\n\n }\n if( parseFloat(this.JobApplication.candidateProfileDetails.relevantExperiance) > parseFloat(this.JobApplication.candidateProfileDetails.totalExperiance)) {\n // this.toastr.warning('Relevant experiance should be less than total experience.')\n return;\n }\n } \n\n this.isSubmitted = false;\n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: true\n });\n }\n\n getNameFromList(list, value) {\n let foundName = list.find(\n (obj) => obj.id == value\n );\n\n return (foundName ? foundName.rmvalue : '').replace('', this.application.country);\n }\n getDescFromList(list, value) {\n let foundName = list.find(\n (obj) => obj.id == value\n );\n\n return (foundName ? foundName.rmdesc : '').replace('', this.application.country);\n }\n\n terms: any = [\n\n ];\n\n workPattern: any = [];\n roles:any = [];\n workPatternName: string;\n tenureName: string;\n candidatePrefLanguageName: string;\n candidatePrefDrivingLicenceName: string;\n candidatePrefVisaPreferenceName: string;\n teamRoleName:string;\n getAllMasterData() {\n\n const genderService = this.commonApiService.getgenderList()\n let maritalService = this.commonApiService.getMaritalStatusList();\n let languageService = this.commonApiService.getLanguagePreferences();\n let visaService = this.commonApiService.getVisaPreferences();\n let regionService = this.commonApiService.getRegions();\n let drivingService = this.commonApiService.getDrivingLicenses();\n let domainService = this.commonApiService.getDomains();\n let categoryService = this.commonApiService.getCommonJobListById(59);\n let workPatternService = this.commonApiService.getWorkPatterns();\n let termsService = this.commonApiService.getJobTenures();\n\n let teamRolesService = this.commonApiService.getTeamRoles()\n\n forkJoin([genderService, maritalService, languageService, visaService, regionService, drivingService,\n domainService, categoryService, workPatternService, termsService, teamRolesService])\n .subscribe(\n ([gender, maritalStatus, languagePreference, visaPreference, region, drivingLicesnse,\n domainData, categoryServiceData, workPatternData, termData, teamRoleData]: any) => {\n\n this.genderList = gender?.result;\n this.maritalStatusList = maritalStatus.result;\n this.languages = languagePreference.result;\n this.visaPreferences = visaPreference.result;\n this.regions = region.result;\n this.drivingLicesnses = drivingLicesnse.result;\n this.domains = domainData.result;\n this.categories = categoryServiceData.result;\n this.workPattern = workPatternData.result;\n this.terms = termData.result;\n this.roles = teamRoleData.result;\n\n if (this.application.candidatePrefRegion) {\n this.regionName = this.getNameFromList(this.regions, this.application.candidatePrefRegion.value)\n }\n\n if (this.application.jobDesirableDomain) {\n this.domainName = this.getNameFromList(this.domains, this.application.jobDesirableDomain?.value)\n }\n\n if (this.application.jobWorkPattern) {\n this.workPatternName = this.getNameFromList(this.workPattern, this.application.jobWorkPattern?.value)\n }\n\n if (this.application.jobTenure) {\n this.tenureName = this.getNameFromList(this.terms, this.application.jobTenure)\n }\n\n if (this.application.candidatePrefLanguage) {\n this.candidatePrefLanguageName = this.getNameFromList(this.languages, this.application.candidatePrefLanguage?.value);\n }\n if (this.application.candidatePrefDrivingLicence) {\n this.candidatePrefDrivingLicenceName = this.getDescFromList(this.drivingLicesnses, this.application.candidatePrefDrivingLicence?.value);\n }\n if (this.application.candidatePrefVisaPreference) {\n this.candidatePrefVisaPreferenceName = this.getNameFromList(this.visaPreferences, this.application.candidatePrefVisaPreference?.value);\n } \n if (this.application.jobDesirableTeamRole) {\n this.teamRoleName = this.getNameFromList(this.roles, this.application.jobDesirableTeamRole?.value);\n } \n\n this.getCities();\n\n },\n error => {\n this.toastr.error(error.error.meta.error.errorMessage);\n }\n );\n }\n getCities() {\n if (this.JobApplication.candidateProfileDetails.countryID != null && this.JobApplication.candidateProfileDetails.countryID != \"\" && this.JobApplication.candidateProfileDetails.countryID != 0) {\n this.commonApiService.getCities(this.JobApplication.candidateProfileDetails.countryID).subscribe((data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.CitiesList = data.result;\n this.CitiesList = this.CitiesList.sort((a, b) => a.name > b.name ? 1 : -1);\n }\n }\n }, error => {\n })\n } else {\n this.CitiesList = [];\n this.JobApplication.candidateProfileDetails.currLocationID = \"\";\n }\n }\n\n\n onDateChange(newDate: Date) {\n this.JobApplication.candidateProfileDetails.candidateDOB = new Date(newDate);\n }\n\n onPassportDateChange(newDate: Date) {\n this.JobApplication.candidateProfileDetails.passportExpiryDate = new Date(newDate);\n }\n\n setCurrentLocationName() {\n if (this.CitiesList?.length > 0) {\n if (this.JobApplication.candidateProfileDetails.currLocationID > 0) {\n let locationName = this.CitiesList.find((ele) => {\n return ele.id == this.JobApplication.candidateProfileDetails.currLocationID;\n });\n this.JobApplication.candidateProfileDetails.currLocation = locationName?.name || '';\n }\n }\n else {\n setTimeout(() => { this.setCurrentLocationName(); }, 100);\n }\n }\n\n showNameImage: boolean = false;\n showDOBImage: boolean = false;\n mouseEnter(type: string) {\n if (type == 'name') {\n this.showNameImage = true;\n } else {\n this.showDOBImage = true;\n }\n\n }\n\n mouseLeave(type: string) {\n if (type == 'name') {\n this.showNameImage = false;\n } else {\n this.showDOBImage = false;\n }\n }\n}\n","
\n\n
\n
\n \n
\n \n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n
\n
\n
\n \n Required\n \n
\n\n \n
\n \n
\n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n
\n
\n
\n \n
\n \n \n
\n \n Required\n \n
\n
\n
\n
\n
\n \n
\n
\n \n \n \"{{\n {{ c.phonecode }}\n \n \n\n
\n \n Required\n \n
\n\n
\n \n \n
\n \n \n \n \n\n
\n \n Required\n \n
\n
\n
\n \n \n \n \n
\n
\n \n
\n
\n \n \n \"{{\n {{ c.phonecode }}\n \n \n \n
\n \n Required\n \n
\n\n
\n \n
\n \n \n \n
\n \n Duplicate Number\n \n
\n
\n \n Enter valid number\n \n
\n\n
\n \n Required\n \n
\n\n
\n
\n\n \n \n \n \n
\n
\n \n \n \n \n \n
\n \n
\n
\n \n \n
\n \n \n \n \n
\n \n
\n \n Required\n \n
\n\n
\n \n \n
\n \n
\n \n \n
\n \n \n
\n \n \n \n \n
\n \n
\n \n Required\n \n
\n
\n \n
\n \n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n \n
\n \n \n \n {{ c.rmvalue }}\n \n \n \n \n
\n
\n \n
\n \n \n
\n \n Required\n \n
\n \n
\n \n
\n \n \n
\n
\n \n
\n \n \n \"{{\n {{ c.name }}\n \n \n \n \n\n
\n \n Required\n \n
\n\n
\n
\n
\n \n
\n \n \n \"{{\n {{ c.name }}\n \n \n \n \n\n
\n \n Required\n \n
\n\n
\n
\n
\n \n
\n \n {{ c.name }}\n \n \n \n
\n \n Required\n \n
\n\n
\n
\n
\n \n \n \n\n \n
\n \n
\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n \n Required\n \n
\n
\n \n
\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n \n Required\n \n
\n
\n \n
\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n \n Required\n \n
\n
\n \n \n \n
\n \n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n
\n \n \n \n {{ c.rmvalue }}\n \n \n \n \n
\n
\n \n
\n \n
\n \n Required\n \n
\n \n \n
\n \n \n \n \n \n
\n \n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n
\n \n \n
\n \n Required\n \n
\n\n \n
\n
\n \n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n
\n \n \n
\n \n Required\n \n
\n \n
\n \n \n \n
\n \n \n
\n
\n
\n

Total experience

\n
\n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n
\n
\n \n
\n
\n Years \n
\n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n

Relevant experience

\n
\n
\n
\n
\n \n \n
\n JobApplication.candidateProfileDetails.totalExperiance\">\n Relevant experiance should be less than total experience\n \n
\n
\n
\n
\n
\n \n
\n
\n Years\n
\n
\n
\n
\n
\n\n
\n \n Required\n \n
\n\n
\n \n
\n \n \n
\n \n
\n \n
\n \n \n
\n
\n\n \n\n","import { Directive, ElementRef, forwardRef, HostListener, Renderer2, StaticProvider } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nexport const CUSTOM_INPUT_DATE_PICKER_CONTROL_VALUE_ACCESSOR: StaticProvider = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => OnlyNumberDirective),\r\n multi: true\r\n};\r\n\r\n@Directive({\r\n selector: '[onlyNumber]',\r\n providers: [CUSTOM_INPUT_DATE_PICKER_CONTROL_VALUE_ACCESSOR]\r\n})\r\nexport class OnlyNumberDirective implements ControlValueAccessor {\r\n private onChange: (val: string) => void;\r\n private onTouched: () => void;\r\n private value: string;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2\r\n ) {\r\n }\r\n\r\n @HostListener('input', ['$event.target.value'])\r\n onInputChange(value: string) {\r\n const filteredValue: string = filterValue(value);\r\n this.updateTextInput(filteredValue, this.value !== filteredValue);\r\n }\r\n\r\n @HostListener('blur')\r\n onBlur() {\r\n this.onTouched();\r\n }\r\n\r\n private updateTextInput(value: string, propagateChange: boolean) {\r\n this.renderer.setProperty(this.elementRef.nativeElement, 'value', value);\r\n if (propagateChange) {\r\n this.onChange(value);\r\n }\r\n this.value = value;\r\n }\r\n\r\n // ControlValueAccessor Interface\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.renderer.setProperty(this.elementRef.nativeElement, 'disabled', isDisabled);\r\n }\r\n\r\n writeValue(value: any): void {\r\n value = value ? String(value) : '';\r\n this.updateTextInput(value, false);\r\n }\r\n}\r\n\r\nfunction filterValue(value): string {\r\n return value.replace(/[^0-9]*/g, '');\r\n}\r\n\r\n\r\n//import { Directive, ElementRef, forwardRef, HostListener, Renderer2, StaticProvider, Input } from '@angular/core';\r\n//import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n//export const CUSTOM_INPUT_DATE_PICKER_CONTROL_VALUE_ACCESSOR: StaticProvider = {\r\n// provide: NG_VALUE_ACCESSOR,\r\n// useExisting: forwardRef(() => OnlyNumberDirective),\r\n// multi: true\r\n//};\r\n\r\n//@Directive({\r\n// selector: '[onlyNumber]',\r\n// providers: [CUSTOM_INPUT_DATE_PICKER_CONTROL_VALUE_ACCESSOR]\r\n//})\r\n//export class OnlyNumberDirective implements ControlValueAccessor {\r\n\r\n// @Input() allowDecimals: boolean = true;\r\n// @Input() allowSign: boolean = false;\r\n// @Input() decimalSeparator: string = '.';\r\n\r\n// previousValue: string = '';\r\n\r\n// --------------------------------------\r\n// Regular expressions\r\n// integerUnsigned: string = '^[0-9]*$';\r\n// integerSigned: string = '^-?[0-9]+$';\r\n// decimalUnsigned: string = '^[0-9]+(.[0-9]+)?$';\r\n// decimalSigned: string = '^-?[0-9]+(.[0-9]+)?$';\r\n\r\n// /**\r\n// * Class constructor\r\n// * @param hostElement\r\n// */\r\n// constructor(private hostElement: ElementRef) { }\r\n// writeValue(obj: any): void {\r\n// throw new Error(\"Method not implemented.\");\r\n// }\r\n// registerOnChange(fn: any): void {\r\n// throw new Error(\"Method not implemented.\");\r\n// }\r\n// registerOnTouched(fn: any): void {\r\n// throw new Error(\"Method not implemented.\");\r\n// }\r\n// setDisabledState?(isDisabled: boolean): void {\r\n// throw new Error(\"Method not implemented.\");\r\n// }\r\n\r\n// /**\r\n// * Event handler for host's change event\r\n// * @param e\r\n// */\r\n// @HostListener('change', ['$event'])\r\n// onChange(e) {\r\n// this.validateValue(this.hostElement.nativeElement.value);\r\n// }\r\n\r\n// /**\r\n// * Event handler for host's paste event\r\n// * @param e\r\n// */\r\n// @HostListener('paste', ['$event'])\r\n// onPaste(e) {\r\n\r\n// get and validate data from clipboard\r\n// let value = e.clipboardData.getData('text/plain');\r\n// this.validateValue(value);\r\n// e.preventDefault();\r\n// }\r\n\r\n// /**\r\n// * Event handler for host's keydown event\r\n// * @param event\r\n// */\r\n// @HostListener('keydown', ['$event']) onKeyDown(e: KeyboardEvent) {\r\n\r\n// let cursorPosition: number = e.target['selectionStart'];\r\n// let originalValue: string = e.target['value'];\r\n// let key: string = this.getName(e);\r\n// let controlOrCommand = (e.ctrlKey === true || e.metaKey === true);\r\n// let signExists = originalValue.includes('-');\r\n// let separatorExists = originalValue.includes(this.decimalSeparator);\r\n\r\n// allowed keys apart from numeric characters\r\n// let allowedKeys = [\r\n// 'Backspace', 'ArrowLeft', 'ArrowRight', 'Escape', 'Tab'\r\n// ];\r\n\r\n// when decimals are allowed, add\r\n// decimal separator to allowed codes when\r\n// its position is not close to the the sign (-. and .-)\r\n// let separatorIsCloseToSign = (signExists && cursorPosition <= 1);\r\n// if (this.allowDecimals && !separatorIsCloseToSign && !separatorExists) {\r\n\r\n// if (this.decimalSeparator == '.')\r\n// allowedKeys.push('.');\r\n// else\r\n// allowedKeys.push(',');\r\n// }\r\n\r\n// when minus sign is allowed, add its\r\n// key to allowed key only when the\r\n// cursor is in the first position, and\r\n// first character is different from\r\n// decimal separator\r\n// let firstCharacterIsSeparator = (originalValue.charAt(0) != this.decimalSeparator);\r\n// if (this.allowSign && !signExists &&\r\n// firstCharacterIsSeparator && cursorPosition == 0) {\r\n\r\n// allowedKeys.push('-');\r\n// }\r\n\r\n// allow some non-numeric characters\r\n// if (allowedKeys.indexOf(key) != -1 ||\r\n// Allow: Ctrl+A and Command+A\r\n// (key == 'a' && controlOrCommand) ||\r\n// Allow: Ctrl+C and Command+C\r\n// (key == 'c' && controlOrCommand) ||\r\n// Allow: Ctrl+V and Command+V\r\n// (key == 'v' && controlOrCommand) ||\r\n// Allow: Ctrl+X and Command+X\r\n// (key == 'x' && controlOrCommand)) {\r\n// let it happen, don't do anything\r\n// return;\r\n// }\r\n\r\n// save value before keydown event\r\n// this.previousValue = originalValue;\r\n\r\n// allow number characters only\r\n// let isNumber = (new RegExp(this.integerUnsigned)).test(key);\r\n// if (isNumber) return; else e.preventDefault();\r\n// }\r\n\r\n// /**\r\n// * Test whether value is a valid number or not\r\n// * @param value\r\n// */\r\n// validateValue(value: string): void {\r\n\r\n// choose the appropiate regular expression\r\n// let regex: string;\r\n// if (!this.allowDecimals && !this.allowSign) regex = this.integerUnsigned;\r\n// if (!this.allowDecimals && this.allowSign) regex = this.integerSigned;\r\n// if (this.allowDecimals && !this.allowSign) regex = this.decimalUnsigned;\r\n// if (this.allowDecimals && this.allowSign) regex = this.decimalSigned;\r\n\r\n// when a numbers begins with a decimal separator,\r\n// fix it adding a zero in the beginning\r\n// let firstCharacter = value.charAt(0);\r\n// if (firstCharacter == this.decimalSeparator)\r\n// value = 0 + value;\r\n\r\n// when a numbers ends with a decimal separator,\r\n// fix it adding a zero in the end\r\n// let lastCharacter = value.charAt(value.length - 1);\r\n// if (lastCharacter == this.decimalSeparator)\r\n// value = value + 0;\r\n\r\n// test number with regular expression, when\r\n// number is invalid, replace it with a zero\r\n// let valid: boolean = (new RegExp(regex)).test(value);\r\n// this.hostElement.nativeElement['value'] = valid ? value : 0;\r\n// }\r\n\r\n// /**\r\n// * Get key's name\r\n// * @param e\r\n// */\r\n// getName(e): string {\r\n\r\n// if (e.key) {\r\n\r\n// return e.key;\r\n\r\n// } else {\r\n\r\n// for old browsers\r\n// if (e.keyCode && String.fromCharCode) {\r\n\r\n// switch (e.keyCode) {\r\n// case 8: return 'Backspace';\r\n// case 9: return 'Tab';\r\n// case 27: return 'Escape';\r\n// case 37: return 'ArrowLeft';\r\n// case 39: return 'ArrowRight';\r\n// case 188: return ',';\r\n// case 190: return '.';\r\n// case 109: return '-'; // minus in numbpad\r\n// case 173: return '-'; // minus in alphabet keyboard in firefox\r\n// case 189: return '-'; // minus in alphabet keyboard in chrome\r\n// default: return String.fromCharCode(e.keyCode);\r\n// }\r\n// }\r\n// }\r\n// }\r\n//}\r\n","\r\n\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { CommonApiService } from '../../../../shared/services';\r\nimport { FormBuilder } from '@angular/forms';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-reason-for-job-change',\r\n templateUrl: './reason-for-job-change.component.html',\r\n styleUrls: ['./reason-for-job-change.component.scss']\r\n})\r\nexport class ReasonForJobChangeComponent implements OnInit {\r\n\r\n // reason for job change global values \r\n selectedCheckboxval: any = [];\r\n reasonsForReloc: string = \"\";\r\n checkVideoFlag: boolean = false;\r\n isThankyouScreen: boolean = false;\r\n\r\n\r\n constructor(\r\n private datePipe: DatePipe,\r\n public jobApplication: JobApplicationComponent,\r\n private toastr: ToastrService,\r\n private modalServices: BsModalService,\r\n private apiService: CommonApiService,\r\n private formBuilder: FormBuilder,\r\n private modalService: NgbModal,\r\n private router: Router\r\n ) { }\r\n\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n if (this.selectedCheckboxval.length > 0) {\r\n if (this.selectedCheckboxval.indexOf(\"Other\") != -1) {\r\n this.jobApplication.candidateProfileDetails.reasonsForReloc = this.selectedCheckboxval.join(\",\");\r\n this.jobApplication.candidateProfileDetails.reasonsForReloc = this.jobApplication.candidateProfileDetails.reasonsForReloc + \",\" + this.reasonsForReloc\r\n } else {\r\n this.jobApplication.candidateProfileDetails.reasonsForReloc = this.selectedCheckboxval.join(\",\");\r\n }\r\n } else { this.jobApplication.candidateProfileDetails.reasonsForReloc = \"\" }\r\n\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {};\r\n validationFlag: boolean = false;\r\n checkOpeningPREF() {\r\n this.validationFlag = true\r\n if (this.selectedCheckboxval.length > 0) {\r\n if (this.selectedCheckboxval.indexOf(\"Other\") != -1) {\r\n this.jobApplication.candidateProfileDetails.reasonsForReloc = this.selectedCheckboxval.join(\",\");\r\n this.jobApplication.candidateProfileDetails.reasonsForReloc = this.jobApplication.candidateProfileDetails.reasonsForReloc + \",\" + this.reasonsForReloc\r\n } else {\r\n this.jobApplication.candidateProfileDetails.reasonsForReloc = this.selectedCheckboxval.join(\",\");\r\n }\r\n } else {\r\n return false;\r\n }\r\n\r\n if (this.getisOtherSelected()) {\r\n this.reasonsForReloc = this.reasonsForReloc.trim();\r\n if ((this.reasonsForReloc == null || this.reasonsForReloc == \"\")) {\r\n return false;\r\n }\r\n }\r\n\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n\r\n }\r\n isSubmit: boolean = false;\r\n isLoader: boolean = false;\r\n save() {\r\n this.validationFlag = true\r\n if (this.selectedCheckboxval.length > 0) {\r\n if (this.selectedCheckboxval.indexOf(\"Other\") != -1) {\r\n this.jobApplication.candidateProfileDetails.reasonsForReloc = this.selectedCheckboxval.join(\",\");\r\n this.jobApplication.candidateProfileDetails.reasonsForReloc = this.jobApplication.candidateProfileDetails.reasonsForReloc + \",\" + this.reasonsForReloc\r\n } else {\r\n this.jobApplication.candidateProfileDetails.reasonsForReloc = this.selectedCheckboxval.join(\",\");\r\n }\r\n } else {\r\n return false;\r\n }\r\n\r\n if (this.getisOtherSelected()) {\r\n this.reasonsForReloc = this.reasonsForReloc.trim();\r\n if ((this.reasonsForReloc == null || this.reasonsForReloc == \"\")) {\r\n return false;\r\n }\r\n }\r\n\r\n this.isSubmit = true;\r\n this.isLoader = true;\r\n\r\n var formdt = new FormData();\r\n formdt.append('sourceId', this.jobApplication.sourceId);\r\n formdt.append('jobId', this.jobApplication.candidateProfileDetails.jobId);\r\n if (this.jobApplication.candidateProfileDetails.validPpflag) {\r\n formdt.append('fullNameInPp', this.jobApplication.candidateProfileDetails.fullNameInPp);\r\n formdt.append('fullName', this.jobApplication.candidateProfileDetails.fullNameInPp);\r\n } else {\r\n formdt.append('fullNameInPp', this.jobApplication.candidateProfileDetails.fullName);\r\n formdt.append('fullName', this.jobApplication.candidateProfileDetails.fullName\r\n );\r\n }\r\n formdt.append('emailAddress', this.jobApplication.userPrimaryDetails.email);\r\n if (this.jobApplication.candidateProfileDetails.resume != null) {\r\n for (let i = 0; i < this.jobApplication.candidateProfileDetails.resume.length; i++\r\n ) {\r\n formdt.append('resume', this.jobApplication.candidateProfileDetails.resume[i], this.jobApplication.candidateProfileDetails.resume[i].name.replace(/\\s+/g, '').trim());\r\n }\r\n }\r\n if (this.jobApplication.googleDriveResumeFiles.length > 0) {\r\n formdt.append('resumeURL', this.jobApplication.googleDriveResumeFiles[0].url);\r\n formdt.append('resumeURLType', this.jobApplication.googleDriveResumeFiles[0].ResumeURLType);\r\n formdt.append('resume', '');\r\n }\r\n\r\n for (let i = 0; i < this.jobApplication?.candidateProfileDetails.paySlips?.length; i++\r\n ) {\r\n formdt.append('payslips', this.jobApplication?.candidateProfileDetails?.paySlips[i], this.jobApplication?.candidateProfileDetails?.paySlips[i]?.name?.replace(/\\s+/g, '')\r\n .trim()\r\n );\r\n }\r\n\r\n if (this.jobApplication.googleDrivePaySlipsFiles.length > 0) {\r\n formdt.append(\r\n 'paySlipsModel',\r\n JSON.stringify(this.jobApplication.candidateProfileDetails.PaySlipsURL)\r\n );\r\n }\r\n\r\n formdt.append(\r\n 'remarks',\r\n this.jobApplication.candidateProfileDetails.remarks\r\n );\r\n\r\n\r\n formdt.append('validPpflag', this.jobApplication.candidateProfileDetails.validPpflag);\r\n formdt.append(\r\n 'currEmplFlag',\r\n this.jobApplication.candidateProfileDetails.currEmplFlag\r\n );\r\n formdt.append('gender', this.jobApplication.candidateProfileDetails.gender);\r\n formdt.append(\r\n 'maritalStatus',\r\n this.jobApplication.candidateProfileDetails.maritalStatus\r\n );\r\n formdt.append(\r\n 'noticePeriod',\r\n this.jobApplication.candidateProfileDetails.noticePeriod\r\n );\r\n formdt.append(\r\n 'reasonType',\r\n this.jobApplication.candidateProfileDetails.reasonType\r\n );\r\n formdt.append(\r\n 'reasonsForReloc',\r\n this.jobApplication.candidateProfileDetails.reasonsForReloc == null\r\n ? ''\r\n : this.jobApplication.candidateProfileDetails.reasonsForReloc\r\n );\r\n formdt.append(\r\n 'address',\r\n this.jobApplication.candidateProfileDetails.address == undefined\r\n ? ''\r\n : this.jobApplication.candidateProfileDetails.address\r\n );\r\n formdt.append(\r\n 'currLocation',\r\n this.jobApplication.candidateProfileDetails.currLocation == null\r\n ? ''\r\n : this.jobApplication.candidateProfileDetails.currLocation\r\n ); //this.jobApplication.candidateProfileDetails.currLocation);\r\n if (this.jobApplication.candidateProfileDetails.currLocationID != null && this.jobApplication.candidateProfileDetails.currLocationID!=\"\") {\r\n formdt.append(\r\n 'currLocationID',\r\n this.jobApplication.candidateProfileDetails.currLocationID\r\n );\r\n }\r\n if (this.jobApplication.candidateProfileDetails.countryID != null && this.jobApplication.candidateProfileDetails.countryID!=\"\") {\r\n formdt.append(\r\n 'countryID',\r\n this.jobApplication.candidateProfileDetails.countryID\r\n );\r\n }\r\n formdt.append(\r\n 'currOrganization',\r\n this.jobApplication.candidateProfileDetails.currOrganization\r\n );\r\n formdt.append(\r\n 'totalExperiance',\r\n this.jobApplication.candidateProfileDetails.totalExperiance\r\n );\r\n formdt.append(\r\n 'relevantExperiance',\r\n this.jobApplication.candidateProfileDetails.relevantExperiance\r\n );\r\n formdt.append(\r\n 'contactNo',\r\n this.jobApplication.candidateProfileDetails.contactNo\r\n );\r\n formdt.append(\r\n 'alteContactNo',\r\n this.jobApplication.candidateProfileDetails.alteContactNo\r\n );\r\n formdt.append(\r\n 'cpCurrency',\r\n this.jobApplication.candidateProfileDetails.cpCurrency\r\n );\r\n formdt.append(\r\n 'cpGrossPayPerAnnum',\r\n this.jobApplication.candidateProfileDetails.cpGrossPayPerAnnum\r\n );\r\n formdt.append(\r\n 'cpDeductionsPerAnnum',\r\n this.jobApplication.candidateProfileDetails.cpDeductionsPerAnnum\r\n );\r\n formdt.append(\r\n 'cpVariablePayPerAnnum',\r\n this.jobApplication.candidateProfileDetails.cpVariablePayPerAnnum\r\n );\r\n formdt.append(\r\n 'cpTakeHomeSalPerMonth',\r\n this.jobApplication.candidateProfileDetails.cpTakeHomeSalPerMonth\r\n );\r\n formdt.append('epCurrency', this.jobApplication.application.currencyName); //this.jobApplication.candidateProfileDetails.epCurrency\r\n formdt.append(\r\n 'epTakeHomeSalPerMonth',\r\n this.jobApplication.candidateProfileDetails.epTakeHomeSalPerMonth\r\n );\r\n // formdt.append(\"selfRating\", this.jobApplication.candidateProfileDetails.selfRating);\r\n formdt.append(\r\n 'nationality',\r\n this.jobApplication.candidateProfileDetails.nationality == null\r\n ? ''\r\n : this.jobApplication.candidateProfileDetails.nationality + ''\r\n );\r\n formdt.append(\r\n 'expectedPackage',\r\n this.jobApplication.candidateProfileDetails.expectedPackage == null\r\n ? 0\r\n : this.jobApplication.candidateProfileDetails.expectedPackage\r\n );\r\n formdt.append('id', this.jobApplication.candidatePrimaryDetails.canPrfId);\r\n formdt.append(\r\n 'currEmplFlag',\r\n this.jobApplication.candidateProfileDetails.currEmplFlag\r\n );\r\n formdt.append(\r\n 'currDesignation',\r\n this.jobApplication.candidateProfileDetails.currDesignation == undefined\r\n ? null\r\n : this.jobApplication.candidateProfileDetails.currDesignation\r\n );\r\n\r\n if (this.jobApplication.candidateProfileDetails.candidateDOB != null) {\r\n var dob = this.datePipe.transform(\r\n this.jobApplication.candidateProfileDetails.candidateDOB,\r\n 'yyyy-MM-dd'\r\n );\r\n formdt.append('candidateDOB', dob);\r\n } else {\r\n formdt.append('candidateDOB', '');\r\n }\r\n\r\n if (\r\n this.jobApplication.candidateProfileDetails\r\n .createCandidateSkillViewModel != null ||\r\n this.jobApplication.candidateProfileDetails\r\n .createCandidateSkillViewModel != undefined\r\n ) {\r\n if (\r\n this.jobApplication.candidateProfileDetails\r\n .createCandidateSkillViewModel.length > 0\r\n ) {\r\n this.jobApplication.candidateProfileDetails.createCandidateSkillViewModel.forEach(\r\n (element) => {\r\n if (element.skillLevelId == null || element.skillLevelId == '') {\r\n element.skillLevelId = 0;\r\n }\r\n if (element.expInMonths == null || element.expInMonths == '') {\r\n element.expInMonths = 0;\r\n }\r\n if (element.expInYears == null || element.expInYears == '') {\r\n element.expInYears = 0;\r\n }\r\n if (element.selfRating == null || element.selfRating == '') {\r\n element.selfRating = 0;\r\n }\r\n }\r\n );\r\n }\r\n }\r\n formdt.append(\r\n 'candidateQuestionResponseModel',\r\n JSON.stringify(this.jobApplication.application.openingQtns)\r\n );\r\n formdt.append(\r\n 'candidateQualificationModel',\r\n JSON.stringify(this.jobApplication.CandidateOpeningList)\r\n );\r\n formdt.append(\r\n 'candidateCertificationModel',\r\n JSON.stringify(this.jobApplication.candidateCirtificates)\r\n );\r\n if (this.jobApplication.userApplyJob == true) {\r\n formdt.append(\r\n 'updateCandidateSkillViewModel',\r\n JSON.stringify(\r\n this.jobApplication.candidateProfileDetails\r\n .createCandidateSkillViewModel\r\n )\r\n );\r\n\r\n this.isLoader = true;\r\n this.apiService.UpdateCandiate(formdt).subscribe(\r\n (data: any) => {\r\n this.isSubmit = false;\r\n if (data.status == true) {\r\n // this.router.navigate(['/app/profile']);\r\n this.isThankyouScreen = true;\r\n setTimeout(() => {\r\n this.router.navigate(['/app/profile-active-applications']);\r\n this.isThankyouScreen = false;\r\n }, 3000);\r\n // const modalRef = this.modalService.open(ThankYouComponent, { backdrop: 'static', centered: true, size: 'md' });\r\n // modalRef.result.then((result) => {\r\n // }, (reason) => {\r\n // });\r\n } else {\r\n this.toastr.error(data.meta.error.errorMessage);\r\n }\r\n this.isLoader = false;\r\n },\r\n (error) => {\r\n this.toastr.error(error.error.meta.error.errorMessage);\r\n this.isLoader = false;\r\n this.isSubmit = false;\r\n }\r\n );\r\n } else {\r\n formdt.append(\r\n 'createCandidateSkillViewModel',\r\n JSON.stringify(\r\n this.jobApplication.candidateProfileDetails\r\n .createCandidateSkillViewModel\r\n )\r\n );\r\n this.apiService.createCandidate(formdt).subscribe(\r\n (data: any) => {\r\n this.isSubmit = false;\r\n this.isLoader = true;\r\n if (data.status == true) {\r\n this.isThankyouScreen = true;\r\n setTimeout(() => {\r\n this.router.navigate(['/app/profile-active-applications']);\r\n this.isThankyouScreen = false;\r\n }, 3000);\r\n // this.router.navigate(['/app/profile']);\r\n this.isLoader = false;\r\n } else {\r\n this.toastr.error(data.meta.error.errorMessage);\r\n this.isLoader = false;\r\n }\r\n },\r\n (error) => {\r\n this.toastr.error(error.error.meta.error.errorMessage);\r\n this.isLoader = false;\r\n this.isSubmit = false;\r\n }\r\n );\r\n }\r\n }\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n console.log(this.jobApplication.application.openingPREFViewModel)\r\n var fieldCodeVP = this.jobApplication.application.openingPREFViewModel.filter(x => x.fieldCode == \"VP\");\r\n if (fieldCodeVP.length == 0) {\r\n this.checkVideoFlag = true;\r\n }\r\n if (this.jobApplication.candidateProfileDetails.reasonsForReloc != \"\") {\r\n this.selectedCheckboxval = this.jobApplication.candidateProfileDetails.reasonsForReloc.split(\",\");\r\n console.log(this.selectedCheckboxval)\r\n this.jobApplication.reasonForJobChangeMasterData.forEach((reason) => {\r\n reason[\"IsSelected\"] = false;\r\n if (this.selectedCheckboxval.indexOf(reason.rmvalue) != -1) {\r\n reason[\"IsSelected\"] = true;\r\n }\r\n\r\n })\r\n console.log(this.selectedCheckboxval.indexOf(\"Other\"))\r\n if (this.selectedCheckboxval.indexOf(\"Other\") != -1) {\r\n this.reasonsForReloc = this.selectedCheckboxval[this.selectedCheckboxval.length - 1]\r\n this.selectedCheckboxval.pop();\r\n\r\n }\r\n }\r\n\r\n }\r\n getreasonForJobChangeListsChecked() {\r\n return this.application.reasonForJobChangeLists.filter((item: { checked: any; }) => item.checked);\r\n }\r\n getisOtherSelected() {\r\n //var reasonType = this.jobApplication.reasonForJobChangeMasterData.filter(r => r.id == this.jobApplication.candidateProfileDetails.reasonType);\r\n if (this.selectedCheckboxval.length != 0) {\r\n if (this.selectedCheckboxval.indexOf(\"Other\") != -1) {\r\n return true;\r\n } else { return false; }\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n selectedCheckbox(evt: any, value: string) {\r\n if (evt.target.checked) {\r\n this.selectedCheckboxval.push(value);\r\n } else {\r\n var ind = this.selectedCheckboxval.indexOf(value);\r\n if (ind != -1) {\r\n this.selectedCheckboxval.splice(ind, 1);\r\n }\r\n // this.selectedCheckboxval.pop(value);\r\n }\r\n }\r\n\r\n}\r\n\r\n\r\n","
Personal Information
\r\n
\r\n
\r\n

Thank you for your job application.

\r\n
\r\n \r\n

\r\n We look forward to helping you find your next position.\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Reason for job change

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Please provide all information\r\n requested. A partially filled application may not be considered for\r\n review.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","\nimport { Injectable } from '@angular/core';\nimport Swal from 'sweetalert2/dist/sweetalert2.js';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConfirmationPopupService {\n\n constructor() { }\n\n public confirmQuestion(\n\n message: string,\n title?: string,\n btnOkText: string = 'OK',\n btnCancelText: string = 'Cancel',\n dialogSize: 'sm' | 'lg' = 'sm'): Promise {\n\n var confirmation = Swal.fire({\n // title: title,\n text: message,\n icon: 'question',\n buttonsStyling: false,\n\n showCancelButton: true,\n confirmButtonText: 'Yes',\n cancelButtonText: 'Cancel',\n customClass: {\n confirmButton: \"btn btn-info mt-0\",\n cancelButton: \"btn btn-light mt-0\"\n }\n })\n return confirmation;\n }\n public confirmInfo(\n\n message: string,\n title?: string,\n btnOkText: string = 'Yes',\n btnCancelText: string = 'Cancel',\n dialogSize: 'sm' | 'lg' = 'sm'): Promise {\n\n var confirmation = Swal.fire({\n // title: title,\n text: message,\n icon: 'warning',\n buttonsStyling: false,\n\n showCancelButton: true,\n confirmButtonText: 'Yes',\n cancelButtonText: 'Cancel',\n customClass: {\n confirmButton: \"btn btn-info mt-0\",\n cancelButton: \"btn btn-light mt-0\"\n }\n })\n return confirmation;\n }\n public confirmSuccess(\n\n message: string,\n title?: string,\n btnOkText: string = 'OK',\n btnCancelText: string = 'Cancel',\n dialogSize: 'sm' | 'lg' = 'sm'): any {\n\n var success = Swal.fire({\n // title: title,\n text: message,\n icon: 'success',\n timer: 1200,\n showCancelButton: false,\n showConfirmButton: false,\n confirmButtonText: 'ok',\n buttonsStyling: false,\n customClass: {\n confirmButton: \"btn btn-info\",\n }\n })\n // const modalRef = this.modalService.open(ConfirmationDialogComponent,{ centered: true , windowClass : \"modal-parent custom-modal-small\"});\n // modalRef.componentInstance.title = title;\n // modalRef.componentInstance.message = message;\n // modalRef.componentInstance.btnOkText = btnOkText;\n // modalRef.componentInstance.btnCancelText = btnCancelText;\n\n return success;\n }\n}\n","import { Component, OnInit } from '@angular/core';\r\nimport { CommonApiService, SliderConfigService } from 'src/app/shared/services';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n selector: 'app-testimonials',\r\n templateUrl: './testimonials.component.html',\r\n styleUrls: ['./testimonials.component.scss']\r\n})\r\nexport class TestimonialsComponent implements OnInit {\r\n testimonialLists: any = [];\r\n slideConfig: any;\r\n isLoader: boolean;\r\n\r\n constructor(\r\n private commonApiService: CommonApiService,\r\n private sliderConfigService: SliderConfigService,\r\n private toastr: ToastrService,\r\n ) {\r\n this.slideConfig = this.sliderConfigService.sliderConfig({ slidesToShow: 1, slidesToScroll: 1, infinite: true, autoplay: false });\r\n }\r\n\r\n getTestimonials() {\r\n this.isLoader = true;\r\n this.commonApiService.getTestimonials().subscribe(\r\n (resp: any) => {\r\n this.isLoader = false;\r\n if (resp.status) {\r\n this.testimonialLists = resp.result;\r\n } else {\r\n this.toastr.error(resp.meta.error.errorMessage);\r\n }\r\n },\r\n (error) => {\r\n this.testimonialLists = [];\r\n this.isLoader = false;\r\n this.toastr.error('Error');\r\n }\r\n );\r\n // this.testimonialLists = [{ title: 'Slide 1' }, { title: 'Slide 2' }, { title: 'Slide 3' }, { title: 'Slide 4' }]\r\n }\r\n\r\n ngOnInit() {\r\n this.getTestimonials();\r\n }\r\n}\r\n","
0\">\r\n
\r\n
\r\n
\r\n

Testimonials from our Clients and Consultants

\r\n

\r\n Explain your skill, role & talent with us by this recommended jobs.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"left\r\n \r\n \r\n \"left\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n {{ testimonialList.tdesc}}\r\n

\r\n
\r\n \"Testimonials\"\r\n
\r\n

{{ testimonialList.title}}

\r\n
{{ testimonialList.designation}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { BgVerificationComponent } from '../bg-verification/bg-verification.component';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgbDate } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CommonApiService } from '../../../shared/services';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-personal-details',\r\n templateUrl: './personal-details.component.html',\r\n styleUrls: ['./personal-details.component.scss']\r\n})\r\nexport class PersonalDetailsComponent implements OnInit {\r\n selectedCity: any;\r\n pincode: any;\r\n phonecode: any = \"\";\r\n validationFlag: boolean = false;\r\n maxDate: Date;\r\n minDate: Date;\r\n datePickerConfig = {\r\n dateInputFormat: 'DD MMM YYYY',\r\n containerClass: 'theme-green',\r\n showWeeks: false,\r\n showWeekNumbers: false,\r\n isAnimated: true,\r\n adaptivePosition: true,\r\n width: 400,\r\n height: 300\r\n };\r\n bloodGroupMasterData: any = [];\r\n constructor(public BgVerificationComponent: BgVerificationComponent, private commonApiService: CommonApiService, private ToastrService: ToastrService, private router: Router, private route: ActivatedRoute,) { }\r\n\r\n ngOnInit() {\r\n this.maxDate = new Date();\r\n this.minDate = new Date();\r\n this.maxDate.setFullYear(this.maxDate.getFullYear() - 10);\r\n this.getBloodGroup();\r\n if (this.BgVerificationComponent.candidateBGVerificationData.dateOfBirth != null || this.BgVerificationComponent.candidateBGVerificationData.dateOfBirth != undefined) {\r\n var dateis = new Date(this.BgVerificationComponent.candidateBGVerificationData.dateOfBirth);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.BgVerificationComponent.candidateBGVerificationData.dateOfBirth = new Date(x);\r\n } else {\r\n // this.BgVerificationComponent.candidateBGVerificationData.dateOfBirth = \"\";\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.ppExpiryDate != null || this.BgVerificationComponent.candidateBGVerificationData.ppExpiryDate != undefined) {\r\n var dateis = new Date(this.BgVerificationComponent.candidateBGVerificationData.ppExpiryDate);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.BgVerificationComponent.candidateBGVerificationData.ppExpiryDate = new Date(x);\r\n } else {\r\n //this.BgVerificationComponent.candidateBGVerificationData.ppExpiryDate = null;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.mobileNo != null && this.BgVerificationComponent.candidateBGVerificationData.mobileNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.mobileNo.split(\" \");\r\n if (cont.length > 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo = \"\";\r\n } else if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo = cont[1];\r\n cont[0] = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code = cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code = \"\";\r\n }\r\n }\r\n this.BgVerificationComponent.candidateBGVerificationData.nationality = this.BgVerificationComponent.candidateBGVerificationData.nationality === 0 ? \"\" : this.BgVerificationComponent.candidateBGVerificationData.nationality\r\n }\r\n\r\n onDateChange(newDate: Date) {\r\n if (newDate != null)\r\n this.BgVerificationComponent.candidateBGVerificationData.dateOfBirth = new Date(newDate);\r\n }\r\n onppExpiryDateChange(newDate: Date) {\r\n if (newDate != null)\r\n this.BgVerificationComponent.candidateBGVerificationData.ppExpiryDate = new Date(newDate);\r\n }\r\n alternatePincode() {\r\n if (this.pincode != null && this.pincode != \"\") {\r\n this.pincode = this.pincode.toString();\r\n } else {\r\n this.pincode = \"\";\r\n }\r\n }\r\n\r\n saveBGVDetails() {\r\n this.validationFlag = true;\r\n if (this.BgVerificationComponent.candidateBGVerificationData.firstName == null || this.BgVerificationComponent.candidateBGVerificationData.firstName == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.lastName == null || this.BgVerificationComponent.candidateBGVerificationData.lastName == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.placeOfBirth == null || this.BgVerificationComponent.candidateBGVerificationData.placeOfBirth == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.gender == null || this.BgVerificationComponent.candidateBGVerificationData.gender == \"\") {\r\n return false;\r\n }\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.bloodGroup == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.maritalStatus == null || this.BgVerificationComponent.candidateBGVerificationData.maritalStatus == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.nationality == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.expeInYears == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.expeInMonths == null) {\r\n return false;\r\n }\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.ppnumber == null || this.BgVerificationComponent.candidateBGVerificationData.ppnumber == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.ppExpiryDate == null) {\r\n return false;\r\n }\r\n\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.dateOfBirth == null) {\r\n return false;\r\n }\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code == null || this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.mobileNo == null || this.BgVerificationComponent.candidateBGVerificationData.mobileNo == \"\") {\r\n return false;\r\n } else {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.mobileNo.length < 8) {\r\n return false;\r\n }\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.ugMedicalTreaFlag == true) {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.ugMedicalTreaDetails == null || this.BgVerificationComponent.candidateBGVerificationData.ugMedicalTreaDetails == \"\") {\r\n return false;\r\n }\r\n }\r\n\r\n\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo = this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.mobileNo;\r\n this.BgVerificationComponent.candidateBGVerificationData.bloodGroup = parseInt(this.BgVerificationComponent.candidateBGVerificationData.bloodGroup + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInMonths = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInMonths + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInYears = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInYears + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = parseInt(this.BgVerificationComponent.candidateBGVerificationData.noOfKids + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType + \"\");\r\n //new Date(this.datePipe.transform(result.startDate, 'yyyy-MM-dd').toString() + 'T00:00:00.000Z')\r\n\r\n this.commonApiService.updateBGVericationData(this.BgVerificationComponent.candidateBGVerificationData).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code = \"\";\r\n // this.ToastrService.success(\"Updated successfully\");\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid + '/' + this.BgVerificationComponent.profileid + '/family-details']);\r\n }\r\n } else {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.mobileNo != null && this.BgVerificationComponent.candidateBGVerificationData.mobileNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.mobileNo.split(\" \");\r\n if (cont.length > 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo = \"\";\r\n } else if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo = cont[1];\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code = cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code = \"\";\r\n }\r\n }\r\n this.ToastrService.error(data.meta.error.errorMessage);\r\n }\r\n }, (error) => {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.mobileNo != null && this.BgVerificationComponent.candidateBGVerificationData.mobileNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.mobileNo.split(\" \");\r\n if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo = cont[1];\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code = cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code = \"\";\r\n }\r\n }\r\n this.ToastrService.error(error.error.meta.error.errorMessage);\r\n });\r\n }\r\n\r\n getBloodGroup() {\r\n //5 five means blood group \r\n this.commonApiService.getRefDate(5).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.bloodGroupMasterData = data.result;\r\n }\r\n } else {\r\n this.ToastrService.error(data.meta.error.errorMessage);\r\n }\r\n }, error => {\r\n })\r\n\r\n }\r\n\r\n nextPage() {\r\n this.validationFlag = true;\r\n if (this.BgVerificationComponent.candidateBGVerificationData.firstName == null || this.BgVerificationComponent.candidateBGVerificationData.firstName == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.lastName == null || this.BgVerificationComponent.candidateBGVerificationData.lastName == \"\") {\r\n return false;\r\n }\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.placeOfBirth == null || this.BgVerificationComponent.candidateBGVerificationData.placeOfBirth == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.gender == null || this.BgVerificationComponent.candidateBGVerificationData.gender == \"\") {\r\n return false;\r\n }\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.bloodGroup == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.maritalStatus == null || this.BgVerificationComponent.candidateBGVerificationData.maritalStatus == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.nationality == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.expeInYears == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.expeInMonths == null) {\r\n return false;\r\n }\r\n\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.ppnumber == null || this.BgVerificationComponent.candidateBGVerificationData.ppnumber == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.ppExpiryDate == null) {\r\n return false;\r\n }\r\n\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.dateOfBirth == null) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code == null || this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.mobileNo == null || this.BgVerificationComponent.candidateBGVerificationData.mobileNo == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.ugMedicalTreaFlag == true) {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.ugMedicalTreaDetails == null || this.BgVerificationComponent.candidateBGVerificationData.ugMedicalTreaDetails == \"\") {\r\n return false;\r\n }\r\n }\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo = this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.mobileNo;\r\n\r\n this.BgVerificationComponent.candidateBGVerificationData.bloodGroup = parseInt(this.BgVerificationComponent.candidateBGVerificationData.bloodGroup + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInMonths = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInMonths + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInYears = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInYears + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = parseInt(this.BgVerificationComponent.candidateBGVerificationData.noOfKids + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.mobileNo_code = \"\";\r\n\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid + '/' + this.BgVerificationComponent.profileid + '/family-details']);\r\n\r\n }\r\n\r\n keyPressAlphaNumericWithCharacters(event) {\r\n\r\n var inp = String.fromCharCode(event.keyCode);\r\n // Allow numbers, alpahbets, space, underscore\r\n if (/[a-zA-Z0-9-. ]/.test(inp)) {\r\n return true;\r\n } else {\r\n event.preventDefault();\r\n return false;\r\n }\r\n }\r\n keyPressAlphaNumeric(event) {\r\n\r\n var inp = String.fromCharCode(event.keyCode);\r\n // Allow numbers, alpahbets, space, underscore\r\n if (/[a-zA-Z0-9]/.test(inp)) {\r\n return true;\r\n } else {\r\n event.preventDefault();\r\n return false;\r\n }\r\n }\r\n\r\n monthsValidtion(event) {\r\n if (event.target.value != null) {\r\n if (event.target.value > 11) {\r\n event.target.value = 11;\r\n }\r\n }\r\n }\r\n}\r\n","
\n \n
\n\n
\n
\n
\n \n \n
\n Required\n
\n
\n
\n \n \n \n
\n\n
\n \n \n
\n Required\n
\n
\n
\n \n \n \n
\n\n
\n \n \n
\n Required\n
\n
\n
\n \n \n
\n Required\n
\n
\n\n
\n \n
\n
\n \n \n
\n \n
\n
\n Required\n
\n
\n\n\n
\n \n
\n
\n \n \n
\n \n
\n
\n Required\n
\n
\n
\n \n
\n \n
\n
\n Required\n
\n
\n
\n \n \n \n {{ c.name }}\n \n
\n Required\n
\n
\n\n
\n \n
\n \n
\n Required\n
\n
\n
\n \n
\n Required\n
\n
\n
\n\n
\n \n
\n
\n \n \n \"{{ {{ c.phonecode }}\n \n \n
\n
\n \n
\n
\n
\n Required\n
\n
\n Enter valid number\n
\n
\n\n \n\n
\n \n \n
\n Required\n
\n
\n\n
\n \n\n \n
\n Required\n
\n
\n\n
\n \n
\n
\n \n \n
\n
\n \n \n
\n\n
\n
\n\n
\n \n \n
\n Required\n
\n
\n\n
\n
\n
\n
\n \n
\n\n
\n
\n \n \n \n
\n
\n
\n\n
\n
\n","import { Component, OnInit } from '@angular/core';\r\nimport { BgVerificationComponent } from '../bg-verification/bg-verification.component';\r\nimport { CommonApiService } from '../../../shared/services';\r\nimport { BVGVerificationObject } from '../bgverification';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-present-address',\r\n templateUrl: './present-address.component.html',\r\n styleUrls: ['./present-address.component.scss']\r\n})\r\nexport class PresentAddressComponent implements OnInit {\r\n selectedCity: any;\r\n\r\n cityId: number = null;\r\n datePickerConfig = {\r\n dateInputFormat: 'DD MMM YYYY',\r\n containerClass: 'theme-green',\r\n showWeeks: false,\r\n isAnimated: true,\r\n showWeekNumbers: false,\r\n adaptivePosition: true,\r\n width: 400,\r\n height: 300\r\n };\r\n validationFlag: boolean = false;\r\n maxDate: Date;\r\n hoursPlaceholder = 'hh';\r\n minutesPlaceholder = 'mm';\r\n sameAsParementAddress: boolean = true;\r\n constructor(public BgVerificationComponent: BgVerificationComponent, private commonApiService: CommonApiService, public bvgVerificationObject: BVGVerificationObject, private ToastrService: ToastrService, private router: Router, private route: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.maxDate = new Date();\r\n this.cityId = this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId;\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId = 0;\r\n this.getCities();\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo != this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo) {\r\n this.sameAsParementAddress = false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddress != this.BgVerificationComponent.candidateBGVerificationData.presAddress) {\r\n this.sameAsParementAddress = false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType != this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType) {\r\n this.sameAsParementAddress = false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrCountryID != this.BgVerificationComponent.candidateBGVerificationData.presAddrCountryId) {\r\n this.sameAsParementAddress = false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrCityID != this.BgVerificationComponent.candidateBGVerificationData.permAddrCityID) {\r\n this.sameAsParementAddress = false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrContactPerson != this.BgVerificationComponent.candidateBGVerificationData.presAddrContactPerson) {\r\n this.sameAsParementAddress = false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.permAddrLandMark != this.BgVerificationComponent.candidateBGVerificationData.presAddrLandMark) {\r\n this.sameAsParementAddress = false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince != null || this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince != undefined) {\r\n var dateis = new Date(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince = new Date(x);\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrPrefTimeForVerification != null || this.BgVerificationComponent.candidateBGVerificationData.presAddrPrefTimeForVerification != undefined) {\r\n var dateis = new Date(this.BgVerificationComponent.candidateBGVerificationData.presAddrPrefTimeForVerification);\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrPrefTimeForVerification = new Date(dateis);\r\n }\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo.split(\" \");\r\n if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[1];\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"\";\r\n }\r\n }\r\n \r\n\r\n }\r\n\r\n onDateChangepresAddrResiSince(newDate: Date) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince = new Date(newDate);\r\n }\r\n onDateChangepresAddrPrefTimeForVerification(newDate: Date) {\r\n //var dateis = new Date(this.BgVerificationComponent.candidateBGVerificationData.presAddrPrefTimeForVerification);\r\n //var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrPrefTimeForVerification = new Date(newDate);\r\n }\r\n CitiesList: any = [];\r\n getCities() {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrCountryId != null) {\r\n this.commonApiService.getCities(this.BgVerificationComponent.candidateBGVerificationData.presAddrCountryId).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CitiesList = data.result;\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId = this.cityId;\r\n }\r\n } else {\r\n this.ToastrService.error(data.meta.error.errorMessage);\r\n }\r\n }, error => {\r\n\r\n })\r\n } else {\r\n this.CitiesList = [];\r\n }\r\n }\r\n\r\n saveBGVDetails() {\r\n this.validationFlag = true;\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddress == null || this.BgVerificationComponent.candidateBGVerificationData.presAddress == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrLandMark == null || this.BgVerificationComponent.candidateBGVerificationData.presAddrLandMark == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType == null || Number.isNaN(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType)) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrCountryId == null || Number.isNaN(this.BgVerificationComponent.candidateBGVerificationData.presAddrCountryId)) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId == null || Number.isNaN(this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId)) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactPerson == null || this.BgVerificationComponent.candidateBGVerificationData.presAddrContactPerson == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code == null || this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo == null || this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo == \"\") {\r\n return false;\r\n } else {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo.length < 8) {\r\n return false;\r\n }\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince == null) {\r\n return false;\r\n }\r\n\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo;\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInMonths = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInMonths + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInYears = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInYears + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = parseInt(this.BgVerificationComponent.candidateBGVerificationData.noOfKids + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType + \"\");\r\n\r\n this.commonApiService.updateBGVericationData(this.BgVerificationComponent.candidateBGVerificationData).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"\";\r\n //this.ToastrService.success(\"Updated successfully\");\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid + '/' + this.BgVerificationComponent.profileid + '/employer-details']);\r\n\r\n }\r\n } else {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo.split(\" \");\r\n if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[1];\r\n cont[0] = cont[0].replace(\"+\", \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"+\" + cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"\";\r\n }\r\n }\r\n this.ToastrService.error(data.meta.error.errorMessage);\r\n }\r\n }, (error) => {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo.split(\" \");\r\n if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[1];\r\n cont[0] = cont[0].replace(\"+\", \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"+\" + cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"\";\r\n }\r\n }\r\n this.ToastrService.error(error.error.meta.error.errorMessage);\r\n })\r\n }\r\n\r\n eventCheck(event) {\r\n if (event.target.checked) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddress = this.BgVerificationComponent.candidateBGVerificationData.permAddress;\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrLandMark = this.BgVerificationComponent.candidateBGVerificationData.permAddrLandMark;\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType;\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrCountryId = this.BgVerificationComponent.candidateBGVerificationData.permAddrCountryID;\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId = this.BgVerificationComponent.candidateBGVerificationData.permAddrCityID;\r\n this.cityId = this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId;\r\n this.getCities();\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactPerson = this.BgVerificationComponent.candidateBGVerificationData.permAddrContactPerson;\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = this.BgVerificationComponent.candidateBGVerificationData.permAddrContactNo;\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince = this.BgVerificationComponent.candidateBGVerificationData.permAddrResiSince;\r\n\r\n this.BgVerificationComponent.candidateBGVerificationData.presPinCode = this.BgVerificationComponent.candidateBGVerificationData.permPinCode;\r\n\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo.split(\" \");\r\n if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[1];\r\n cont[0] = cont[0].replace(\"+\", \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"+\" + cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"\";\r\n }\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince != null || this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince != undefined) {\r\n var dateis = new Date(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince = new Date(x);\r\n }\r\n }\r\n }\r\n\r\n nextPage() {\r\n this.validationFlag = true;\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddress == null || this.BgVerificationComponent.candidateBGVerificationData.presAddress == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrLandMark == null || this.BgVerificationComponent.candidateBGVerificationData.presAddrLandMark == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType == null||Number.isNaN(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType)) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrCountryId == null || Number.isNaN(this.BgVerificationComponent.candidateBGVerificationData.presAddrCountryId)) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId == null || this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId ==0|| Number.isNaN(this.BgVerificationComponent.candidateBGVerificationData.presAddrCityId)) {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactPerson == null || this.BgVerificationComponent.candidateBGVerificationData.presAddrContactPerson == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code == null || this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code == \"\") {\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo == null || this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo == \"\") {\r\n return false;\r\n } else {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo.length < 8) {\r\n return false;\r\n }\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrResiSince == null) {\r\n return false;\r\n }\r\n //if (this.BgVerificationComponent.candidateBGVerificationData.presAddrPrefTimeForVerification == null) {\r\n // return false;\r\n //}\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo;\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInMonths = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInMonths + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInYears = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInYears + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = parseInt(this.BgVerificationComponent.candidateBGVerificationData.noOfKids + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType + \"\");\r\n this.commonApiService.updateBGVericationData(this.BgVerificationComponent.candidateBGVerificationData).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"\";\r\n // this.ToastrService.success(\"Updated successfully\");\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid +'/'+ this.BgVerificationComponent.profileid + '/employer-details']);\r\n\r\n }\r\n } else {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo.split(\" \");\r\n if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[1];\r\n cont[0] = cont[0].replace(\"+\", \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"+\" + cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"\";\r\n }\r\n }\r\n //this.ToastrService.error(data.meta.error.errorMessage);\r\n }\r\n }, (error) => {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo != undefined) {\r\n var cont = this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo.split(\" \");\r\n if (cont.length == 2) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[1];\r\n cont[0] = cont[0].replace(\"+\", \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"+\" + cont[0];\r\n } else if (cont.length == 1) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = cont[0];\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"\";\r\n }\r\n }\r\n //this.ToastrService.error(error.error.meta.error.errorMessage);\r\n })\r\n\r\n }\r\n\r\n previousPage() {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo = this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo;\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid +'/'+ this.BgVerificationComponent.profileid + '/permanent-address']);\r\n \r\n }\r\n isNumber(value) {\r\n return Number.isNaN(value);\r\n }\r\n}\r\n","
\n \n
\n\n
\n
\n\n
\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n\n
\n
\n \n \n \n
\n \n Required\n \n
\n
\n
\n \n \n \n
\n \n Required\n \n
\n
\n\n
\n \n \n {{ c.name }}\n \n
\n \n Required\n \n
\n
\n
\n \n \n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n
\n
\n \n \n \"{{{{ c.phonecode }}\n \n \n
\n
\n \n
\n
\n
\n \n Required\n \n
\n
\n \n Enter valid number\n \n
\n
\n\n
\n \n \n
\n \n Required\n \n
\n
\n\n
\n
\n\n
\n \n
\n \n \n
\n\n
\n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'app-thank-you',\r\n templateUrl: './thank-you.component.html',\r\n styleUrls: ['./thank-you.component.scss']\r\n})\r\nexport class ThankYouComponent implements OnInit {\r\n\r\n constructor(public activeModal: NgbActiveModal) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n"," \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"ts\"\r\n

Thank You

\r\n
\r\n You have successfully submitted your profile.\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n ","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { ThankYouComponent } from '../../shared/component/thank-you/thank-you.component';\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\n\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { User, userDetails } from '../../core/models/user';\nimport { AuthenticationService } from '../../core/services/authentication.service';\nimport { CommonApiService } from '../../shared/services';\nimport { ToastrService } from 'ngx-toastr';\nimport {\n animate,\n state,\n style,\n transition,\n trigger,\n} from '@angular/animations';\nimport { SortByPipe } from '../../shared/pipes';\nimport { CandidateEmploymentStatus } from '../../core/models/enums';\n@Component({\n selector: 'app-job-apply',\n templateUrl: './job-apply.component.html',\n styleUrls: ['./job-apply.component.scss'],\n animations: [\n trigger('slide_in_out', [\n state(\n 'slide_in',\n style({\n // width: '45%',\n right: '0',\n // css styles when the element is in slide_in\n })\n ),\n state(\n 'slide_out',\n style({\n width: '45%',\n right: '-45%',\n // css styles when the element is in slide_out\n })\n ),\n // animation effect when transitioning from one state to another\n transition('slide_in <=> slide_out', animate(500)),\n ]),\n ],\n})\nexport class JobApplyComponent implements OnInit {\n\n jobId: number = 0;\n sourceId: any = 5; // 5 means careerportals\n currentUser: User;\n userPrimaryDetails: userDetails;\n candidatePrimaryDetails: any = {};\n currentPage: number = 1;\n userApplyJob: boolean = false;\n // { \"fieldCode\": \"CL\", \"fieldDesc\": \"Current Location\", \"dynamic\": true, displayFlag: 2 },fildOfCandidateDetails: any = [{ \"fieldCode\": \"PP\", \"fieldDesc\": \"Passport\", \"dynamic\": true }, { \"fieldCode\": \"CN\", \"fieldDesc\": \"CandidateName\", \"dynamic\": true }, { \"fieldCode\": \"GEN\", \"fieldDesc\": \"Gender\", \"dynamic\": true }, { \"fieldCode\": \"MS\", \"fieldDesc\": \"MaritalStatus\", \"dynamic\": true }, { \"fieldCode\": \"ES\", \"fieldDesc\": \"EmploymentStatus\", \"dynamic\": true }, { \"fieldCode\": \"NA\", \"fieldDesc\": \"Nationality\", \"dynamic\": false }, { \"fieldCode\": \"NP\", \"fieldDesc\": \"NoticePeriod\", \"dynamic\": true }, { \"fieldCode\": \"RJC\", \"fieldDesc\": \"ReasonforJobChange\", \"dynamic\": false }, { \"fieldCode\": \"TEXP\", \"fieldDesc\": \"TotalExperience\", \"dynamic\": false }, { \"fieldCode\": \"CD\", \"fieldDesc\": \"ContactDetails\", \"dynamic\": false }, { \"fieldCode\": \"CP\", \"fieldDesc\": \"CurrentPackage\", \"dynamic\": true }, { \"fieldCode\": \"PPP\", \"fieldDesc\": \"Educations\", \"dynamic\": true }, { \"fieldCode\": \"EP\", \"fieldDesc\": \"ExpectedPackage\", \"dynamic\": true }, { \"fieldCode\": \"SK\", \"fieldDesc\": \"Skils\", \"dynamic\": false }, { \"fieldCode\": \"UR\", \"fieldDesc\": \"UploadResume\", \"dynamic\": true }, { \"fieldCode\": \"VP\", \"fieldDesc\": \"VideoProfile\", \"dynamic\": true }]\n\n CountriesList: any = []\n CityesList: any = []\n formWizard: any;\n mainWizard: number = 0; \n candidateProfileDetails: any = {\n candidatePrefRegion: {\n value: null,\n preferenceType: null,\n },\n candidatePrefLanguage: {\n value: null,\n preferenceType: null,\n },\n candidatePrefVisaPreference: {\n value: null,\n preferenceType: null, \n },\n jobDesirableDomain: {\n value: null,\n preferenceType: null,\n },\n jobDesirableCategory: {\n value: null,\n preferenceType: null,\n },\n jobDesirableTenure: {\n value: null,\n preferenceType: null,\n },\n jobDesirableTeamRole: {\n value: null,\n preferenceType: null,\n },\n jobDesirableWorkPattern: {\n value: null,\n preferenceType: null,\n },\n candidateSkills: [],\n jobDesirableSpecializations: [],\n \"jobDesirableImplementations\": [],\n \"jobDesirableDesigns\": [],\n \"jobDesirableDevelopments\": [],\n \"jobDesirableSupports\": [],\n \"jobDesirableQualities\": [],\n \"jobDesirableDocumentations\": [],\n reasonsForReloc: '',\n\n interviewFaceToFace: null,\n interviewFaceToFaceReason: ''\n };\n todaysDate = new Date();\n application: any = {};\n CurrencyMasterData: any = [];\n currentOpeningPREF: any = {};\n //185 // Question refdataId\n reasonForJobChangeGroupId: number = 187; //187 -- reason for jpb change id\n reasonForJobChangeMasterData: any = [];\n\n DesignationGroupId: number = 14; //\n DesignationMsterData: any = []; //\n isLoader: boolean;\n convertionRate: any;\n currentcConvertionRate: any = 1;\n currentcConvertionRateTwoDecimal: any;\n skillSetLists: any;\n paySlipfilesList: any = [];\n resumefilesList: any = [];\n videofilesList: any = [];\n recordedData: any;\n recDataBlob: any;\n\n googleDriveResumeFiles: any = [];\n googleDrivePaySlipsFiles: any = [];\n isShow: any = false;\n currentCountryId = 0;\n previousCountryId = 0;\n candidateCirtificates: any = [];\n slider_state: string = 'slide_out';\n\n qualificationLists: any = [];\n openingQualification: any = [];\n CourseLists: any = [];\n openingCourseLists: any = [];\n CandidateOpeningList: any = [];\n CertificationList: any = [];\n\n constructor(\n private modalService: NgbModal,\n private toastr: ToastrService,\n private router: Router,\n private route: ActivatedRoute,\n private apiService: CommonApiService,\n public fb: FormBuilder,\n private authenticationService: AuthenticationService\n ) {\n this.authenticationService.currentUser.subscribe((x) => (this.currentUser = x));\n }\n ngOnInit(): void {\n this.route.queryParams.subscribe((params) => {\n this.jobId = params['jobid'];\n this.sourceId = params['sf'] == null || params['sf'] == undefined ? 5 : params['sf'];\n this.getJobInfo();\n });\n }\n getSkillsList(skillset: any = '', edit: boolean = false) {\n this.apiService.getSkillSet().subscribe((resp: any) => {\n if (resp.status) {\n this.skillSetLists = resp.result;\n } else {\n this.toastr.error(resp.meta.error.errorMessage);\n }\n }, (error) => {\n this.toastr.error('Error');\n });\n }\n\n get candidateLocationRate(): any {\n return ((this.candidateProfileDetails?.cpTakeHomeSalPerMonth / 1).toFixed(0) || 0);\n }\n\n get clientLocationRate() {\n var equRate = this.candidateProfileDetails?.cpTakeHomeSalPerMonth / this.currentcConvertionRate;\n if (equRate > 1) {\n return (this.candidateProfileDetails?.cpTakeHomeSalPerMonth / this.currentcConvertionRate).toFixed(0);\n } else {\n return 0;\n }\n }\n\n get equivalentToInMonth() {\n if (this.candidateProfileDetails?.epTakeHomeSalPerMonth) {\n return (\n parseInt(this.candidateProfileDetails?.epTakeHomeSalPerMonth) /\n this.currentcConvertionRate || 0\n ).toFixed(0);\n }\n return 0;\n }\n\n get equivalentToInYear() {\n if (this.candidateProfileDetails?.epTakeHomeSalPerMonth) {\n return (\n parseInt(this.candidateProfileDetails?.epTakeHomeSalPerMonth) * 12 || 0\n ).toFixed(0);\n }\n return 0;\n }\n\n get persentage() {\n if (\n this.candidateProfileDetails?.cpTakeHomeSalPerMonth &&\n this.candidateProfileDetails?.epTakeHomeSalPerMonth\n ) {\n var currentSalary = (this.candidateProfileDetails?.cpTakeHomeSalPerMonth /\n this.currentcConvertionRate) as any;\n var expectedSalary = (parseInt(\n this.candidateProfileDetails?.epTakeHomeSalPerMonth\n ) || 0) as any;\n var difference =\n ((parseInt(expectedSalary) - parseInt(currentSalary)) /\n parseInt(currentSalary)) *\n 100;\n if (difference == Infinity) {\n difference = 0;\n }\n var roundedPercent = Math.round(100 * difference) / 100;\n }\n\n return (roundedPercent || 0).toFixed(2);\n }\n\n submitForm() {\n const modalRef = this.modalService.open(ThankYouComponent, {\n backdrop: 'static',\n centered: true,\n size: 'md',\n });\n modalRef.result.then(\n (result) => {\n this.router.navigate(['profile']);\n },\n (reason) => { }\n );\n }\n\n getTodaysConvertionRate(fromSymbol, toSymbol) {\n if (fromSymbol != toSymbol) {\n this.isLoader = true;\n let convertionFromTo = fromSymbol + '_' + toSymbol;\n var obj = {\n frmCurn: fromSymbol,\n toCurn: toSymbol,\n };\n this.apiService.getTodaysConvertionRate(obj).subscribe(\n (resp: any) => {\n this.calcConversionRate(resp.result);\n },\n (error) => {\n this.isLoader = false;\n // this.toastr.error('Error');\n }\n );\n }\n else {\n this.calcConversionRate(1);\n }\n }\n private calcConversionRate(convertionRate) {\n this.convertionRate = parseFloat(convertionRate || 1);\n this.currentcConvertionRate = this.convertionRate;\n this.currentcConvertionRateTwoDecimal = (\n this.convertionRate || 0\n ).toFixed(2);\n }\n\n get candidateCountryName() {\n if (this.candidateProfileDetails.countryID > 0) {\n var countryName = this.CountriesList.find((ele) => {\n return ele.id == this.candidateProfileDetails.countryID;\n });\n return countryName?.name || '';\n }\n return '';\n }\n\n get candidateCityName() {\n this.currentCountryId = this.candidateProfileDetails.countryID;\n if (\n this.candidateProfileDetails.countryID > 0 &&\n this.currentCountryId != this.previousCountryId\n ) {\n this.previousCountryId = this.candidateProfileDetails.countryID;\n this.getCityList();\n }\n if (this.candidateProfileDetails.currLocationID > 0) {\n let locationName = this.CityesList.find((ele) => {\n return ele.id == this.candidateProfileDetails.currLocationID;\n });\n return locationName?.name || '';\n }\n return '';\n }\n\n getCityList() {\n this.apiService.getCities(this.candidateProfileDetails.countryID).subscribe(\n (data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.CityesList = data.result;\n }\n }\n },\n (error) => {\n\n }\n );\n }\n\n changeCurrency(eve) {\n if (\n this.candidateProfileDetails.cpCurrency != '' &&\n this.candidateProfileDetails.cpCurrency != undefined\n ) {\n this.getTodaysConvertionRate(\n this.application.currencyName,\n this.candidateProfileDetails.cpCurrency\n );\n } else {\n this.convertionRate = 1;\n this.currentcConvertionRate = 1;\n this.currentcConvertionRateTwoDecimal = 1;\n }\n }\n\n getCandidatePrimaryInfo() {\n this.apiService\n .getCandidatePrimaryInfo(this.userPrimaryDetails.email)\n .subscribe(\n (data: any) => {\n if (data.status == true) {\n if (\n data.result != null ||\n data.result.length != 0 ||\n data.result.length != undefined\n ) {\n this.candidatePrimaryDetails = data.result;\n //if (this.candidatePrimaryDetails.canPrfId != null && this.candidatePrimaryDetails.canPrfId != 0 && this.jobId != null && this.jobId != 0) {\n this.getCandidateProfileDetails(this.candidatePrimaryDetails.canPrfId, this.jobId);\n //} else {\n // window.location.reload();\n //}\n\n }\n }\n },\n (error) => { }\n );\n }\n\n getCountries() {\n this.apiService.getCountries().subscribe(\n (data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.CountriesList = data.result;\n this.CountriesList.forEach((item) => {\n item.phonecode = \"+\" + item.phonecode\n })\n }\n }\n },\n (error) => { }\n );\n }\n\n getJobInfo() {\n this.apiService.getOpeningJobInfo(this.jobId).subscribe(\n (data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.application = data.result;\n\n this.application.openingPREFViewModel =\n this.application.openingPREFViewModel?.filter((d) => d.displayFlag != 3);\n if (!(this.application.openingQtns?.length > 0)) {\n this.application.openingPREFViewModel =\n this.application.openingPREFViewModel?.filter((d) => d.fieldCode != \"QF\");\n }\n if (this.application.openingQtns != null && this.application.openingQtns.length > 0\n ) {\n this.application.openingQtns.forEach((element) => {\n element['QuestionId'] = element.id;\n element['Response'] = '';\n });\n }\n this.getSkillsList();\n this.authenticationService.currentUser.subscribe((x) => {\n this.currentUser = x;\n this.getCountries();\n this.getReasonsForJobChangeMasterData();\n this.getCurrencyMasterData();\n this.userPrimaryDetails = this.currentUser.userDetails;\n this.getCandidatePrimaryInfo();\n });\n this.getReasonsForJobChangeMasterData();\n this.getQualificationList();\n this.getCertificationList();\n this.getDesignationMasterData();\n this.processQuestionaire();\n }\n }\n },\n (error) => {\n }\n );\n }\n\n displaycurrentOpeningPREF(currentValue: any) {\n this.currentOpeningPREF = currentValue;\n }\n\n getReasonsForJobChangeMasterData() {\n this.apiService.getRefMasterData(this.reasonForJobChangeGroupId).subscribe(\n (data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.reasonForJobChangeMasterData = data.result;\n this.reasonForJobChangeMasterData = this.reasonForJobChangeMasterData.sort(function (a, b) {\n return (a.id - b.id);\n })\n }\n }\n },\n (error) => { }\n );\n }\n\n getDesignationMasterData() {\n this.apiService.getRefMasterData(this.DesignationGroupId).subscribe(\n (data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.DesignationMsterData = data.result;\n }\n }\n },\n (error) => { }\n );\n }\n\n getCurrencyMasterData() {\n this.apiService.getRefMasterData(13).subscribe(\n (data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.CurrencyMasterData = data.result;\n }\n }\n },\n (error) => { }\n );\n }\n\n getQualificationList() {\n this.apiService.getRefDate(92).subscribe(\n (resp: any) => {\n if (resp.status) {\n this.qualificationLists = resp.result;\n\n this.application?.openingQualification?.forEach((element) => {\n var rmtype = this.qualificationLists.find(\n (obj) => obj.id == element.qualification\n );\n if (rmtype != null) {\n element['name'] = rmtype.rmvalue;\n //this.openingQualification.push(element)\n }\n });\n //this.openingQualification = this.openingQualification.filter((v, i, a) => a.findIndex(t => (t.qualification === v.qualification)) === i)\n this.getCourcesListList();\n } else {\n }\n },\n (error) => { }\n );\n }\n\n getCourcesListList() {\n // course\n this.apiService.getRefDate(189).subscribe(\n (resp: any) => {\n if (resp.status) {\n this.CourseLists = resp.result;\n this.application?.openingQualification?.forEach((element) => {\n var rmtype = this.CourseLists.find(\n (obj) => obj.id == element.course\n );\n if (rmtype != null) {\n element['coursename'] = rmtype.rmvalue;\n //this.openingCourseLists.push(element)\n }\n });\n } else {\n }\n },\n (error) => { }\n );\n }\n getCertificationList() {\n // course\n this.apiService.getRefDate(190).subscribe(\n (resp: any) => {\n if (resp.status) {\n this.CertificationList = resp.result;\n } else {\n }\n },\n (error) => { }\n );\n }\n\n viewJobDescription() {\n this.slider_state =\n this.slider_state === 'slide_out' ? 'slide_in' : 'slide_out';\n }\n\n mobileJobDesc() {\n this.isShow = !this.isShow;\n }\n\n setSkillObject(candidateSkills, applicationSkills, name) {\n for (var i = 0; i < applicationSkills?.length; i++) {\n let specializationViewModel = candidateSkills?.filter((sk) => sk.technologyId == applicationSkills[i].technologyId)[0];\n var expInMonths = null;\n var expInYears = null;\n var selfRating = 0;\n if (specializationViewModel != undefined && specializationViewModel != null) {\n expInMonths = (specializationViewModel.expInMonths == null || specializationViewModel.expInMonths == 0) ? null : parseInt(specializationViewModel.expInMonths);\n expInYears = (specializationViewModel.expInYears == null || specializationViewModel.expInYears == 0) ? null : parseInt(specializationViewModel.expInYears);\n selfRating = specializationViewModel.selfRating == null ? 0 : specializationViewModel.selfRating;\n }\n \n\n let specializationObj = {\n expInMonths: expInMonths,\n expInYears: expInYears,\n technologyId: applicationSkills[i].technologyId,\n technology: applicationSkills[i].technology,\n selfRating: selfRating,\n };\n this.candidateProfileDetails[\n name\n ].push(specializationObj);\n }\n }\n\n getCandidateProfileDetails(canPrfId: number, jobId) {\n this.apiService.getJobCandidateApply(canPrfId, jobId).subscribe(\n (data: any) => {\n if (this.application?.openingPREFViewModel?.length > 0) {\n var passPortFlag = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(\"PP\");\n if (passPortFlag != -1) {\n this.currentOpeningPREF = this.application?.openingPREFViewModel[0];\n }\n }\n\n if (data.status == true) {\n if (data.result != null) {\n this.userApplyJob = true;\n this.candidateProfileDetails = data.result;\n this.candidateProfileDetails.epCurrency = this.application.currencyName;\n console.log(this.candidateProfileDetails.epCurrency)\n this.candidateProfileDetails['id'] = this.currentUser.id; //this.currentUser.id;\n this.candidateProfileDetails['resume'] = \"\";//resume bydefault we are doing empty\n\n this.candidateProfileDetails[\"fullName\"] = this.candidateProfileDetails[\"fullName\"] == null ? this.userPrimaryDetails.firstName : this.candidateProfileDetails[\"fullName\"];\n this.candidateProfileDetails[\"fullNameInPp\"] = this.candidateProfileDetails[\"fullNameInPp\"] == null ? this.userPrimaryDetails.firstName : this.candidateProfileDetails[\"fullNameInPp\"];\n this.candidateProfileDetails[\"maritalStatus\"] = this.candidateProfileDetails[\"maritalStatus\"] == null ? \"\" : this.candidateProfileDetails[\"maritalStatus\"];\n this.candidateProfileDetails[\"gender\"] = this.candidateProfileDetails[\"gender\"] == null ? \"\" : this.candidateProfileDetails[\"gender\"];\n this.candidateProfileDetails[\"currOrganization\"] = this.candidateProfileDetails[\"currOrganization\"] == null ? \"\" : this.candidateProfileDetails[\"currOrganization\"];\n this.candidateProfileDetails[\"remarks\"] = this.candidateProfileDetails[\"remarks\"] == null ? \"\" : this.candidateProfileDetails[\"remarks\"];\n\n this.CandidateOpeningList = this.candidateProfileDetails[\"qualifications\"] == null ? [] : this.candidateProfileDetails[\"qualifications\"];\n this.candidateCirtificates = this.candidateProfileDetails[\"certififcates\"] == null ? [] : this.candidateProfileDetails[\"certififcates\"];\n this.candidateProfileDetails[\"jobId\"] = (this.candidateProfileDetails[\"jobId\"] == null || this.candidateProfileDetails[\"jobId\"] == 0) ? this.jobId : this.candidateProfileDetails[\"jobId\"];\n this.candidateProfileDetails[\"alteContactNo\"] = (this.candidateProfileDetails[\"alteContactNo\"] == null || this.candidateProfileDetails[\"alteContactNo\"] == \"\" || this.candidateProfileDetails[\"alteContactNo\"] == undefined || this.candidateProfileDetails[\"alteContactNo\"] == \"undefined \" || this.candidateProfileDetails[\"alteContactNo\"] == \"undefined\") ? \"\" : this.candidateProfileDetails[\"alteContactNo\"];\n this.candidateProfileDetails[\"passportExpiryDate\"] = this.candidatePrimaryDetails['passportExpiryDate'] ? new Date(this.candidatePrimaryDetails['passportExpiryDate']) : null;\n\n \n\n if (this.candidateProfileDetails[\"alteContactNo\"] != \"\") {\n let phData = this.candidateProfileDetails[\"alteContactNo\"]?.split(\" \");\n if (phData?.length == 3) {\n this.candidateProfileDetails[\"alteContactNo\"] = \"\";\n }\n else if (phData?.length == 2) {\n this.candidateProfileDetails[\"altCountryCodePhoneNumber\"] = phData[0];\n this.candidateProfileDetails[\"alteContactNo\"] = phData[1];\n }\n }\n if (this.candidateProfileDetails[\"contactNo\"] != \"\") {\n var phData = this.candidateProfileDetails[\"contactNo\"]?.split(\" \");\n if (phData?.length == 3) {\n this.candidateProfileDetails[\"contactNo\"] = \"\";\n }\n else if (phData?.length == 2) {\n this.candidateProfileDetails[\"countryCodePhoneNumber\"] = phData[0];\n this.candidateProfileDetails[\"contactNo\"] = phData[1];\n }\n }\n this.candidateProfileDetails[\"cpCurrency\"] = this.candidateProfileDetails[\"cpCurrency\"] == null ? null : this.candidateProfileDetails[\"cpCurrency\"];\n this.candidateProfileDetails[\"noticePeriod\"] = this.candidateProfileDetails[\"noticePeriod\"] || this.candidatePrimaryDetails[\"noticePeriod\"] || 0;\n this.candidateProfileDetails[\"epTakeHomeSalPerMonth\"] = \"\";\n this.candidateProfileDetails[\"paySlips\"] = [];\n this.candidateProfileDetails[\"reasonsForReloc\"] = '';\n\n this.candidateProfileDetails[\"candidateCanJoinDate\"] = this.candidateProfileDetails[\"candidateCanJoinDate\"] ? new Date(this.candidateProfileDetails[\"candidateCanJoinDate\"]) : null ;\n this.candidateProfileDetails[\"candidateLastWorkDate\"] = this.candidateProfileDetails[\"candidateLastWorkDate\"] ? new Date(this.candidateProfileDetails[\"candidateLastWorkDate\"]) : null ;\n\n if (this.candidateProfileDetails[\"candidateDOB\"])\n this.candidateProfileDetails[\"candidateDOB\"] = new Date(this.candidateProfileDetails[\"candidateDOB\"]);\n\n //this.candidateProfileDetails[\"jobCountryDrivingLicence\"] = new Date(this.candidateProfileDetails[\"jobCountryDrivingLicence\"]);\n\n if (this.candidateProfileDetails['cpCurrency'] != '') {\n this.changeCurrency(this.candidateProfileDetails['cpCurrency']);\n }\n var candidateSkillViewModel = this.candidateProfileDetails.candidateSkills;\n\n this.candidateProfileDetails['candidateSkills'] = [];\n\n for (var i = 0; i < this.application.openingSkillSet?.length; i++) {\n var SkillViewModel = candidateSkillViewModel?.filter((sk) => sk.technologyId == this.application.openingSkillSet[i].technologyId)[0];\n var expInMonths:number = null;\n var expInYears = null;\n var selfRating = 0;\n if (SkillViewModel != undefined && SkillViewModel != null) {\n expInMonths = (SkillViewModel.expInMonths == null || SkillViewModel.expInMonths == 0) ? null : parseInt(SkillViewModel.expInMonths);\n expInYears = (SkillViewModel.expInYears == null || SkillViewModel.expInYears == 0) ? null : parseInt(SkillViewModel.expInYears);\n selfRating = SkillViewModel.selfRating == null ? 0 : SkillViewModel.selfRating;\n }\n var totalExp = \"\";\n // if (expInYears != \"\")\n // totalExp = expInYears;\n\n // if (expInMonths != \"\")\n // totalExp = totalExp + \".\" + expInMonths;\n\n var objis = {\n Id: 0,\n expInMonths: expInMonths,\n expInYears: expInYears,\n totalExp: totalExp,\n skillLevel: '',\n skillLevelId: this.application.openingSkillSet[i].skillLevelId,\n technologyId: this.application.openingSkillSet[i].technologyId,\n technologyName: this.application.openingSkillSet[i].technology,\n selfRating: selfRating,\n IsCanSkill: false,\n };\n this.candidateProfileDetails[\n 'candidateSkills'\n ].push(objis);\n }\n\n\n let candidateSpecialization = this.candidateProfileDetails.jobDesirableSpecializations;\n this.candidateProfileDetails['jobDesirableSpecializations'] = [];\n this.setSkillObject(candidateSpecialization, this.application.jobDesirableSpecializations, 'jobDesirableSpecializations');\n\n \n let jobDesirableImplementations = this.candidateProfileDetails.jobDesirableImplementations;\n this.candidateProfileDetails['jobDesirableImplementations'] = [];\n this.setSkillObject(jobDesirableImplementations, this.application.jobDesirableImplementations, 'jobDesirableImplementations');\n\n let jobDesirableDesigns = this.candidateProfileDetails.jobDesirableDesigns;\n this.candidateProfileDetails['jobDesirableDesigns'] = [];\n this.setSkillObject(jobDesirableDesigns, this.application.jobDesirableDesigns, 'jobDesirableDesigns');\n\n let jobDesirableDevelopments = this.candidateProfileDetails.jobDesirableDevelopments;\n this.candidateProfileDetails['jobDesirableDevelopments'] = [];\n this.setSkillObject(jobDesirableDevelopments, this.application.jobDesirableDevelopments, 'jobDesirableDevelopments');\n\n let jobDesirableSupports = this.candidateProfileDetails.jobDesirableSupports;\n this.candidateProfileDetails['jobDesirableSupports'] = [];\n this.setSkillObject(jobDesirableSupports, this.application.jobDesirableSupports, 'jobDesirableSupports');\n\n let jobDesirableQualities = this.candidateProfileDetails.jobDesirableQualities;\n this.candidateProfileDetails['jobDesirableQualities'] = [];\n this.setSkillObject(jobDesirableQualities, this.application.jobDesirableQualities, 'jobDesirableQualities');\n\n let jobDesirableDocumentations = this.candidateProfileDetails.jobDesirableDocumentations;\n this.candidateProfileDetails['jobDesirableDocumentations'] = [];\n this.setSkillObject(jobDesirableDocumentations, this.application.jobDesirableDocumentations, 'jobDesirableDocumentations');\n\n\n // if (this.application.jobDesirableSpecializations) {\n // this.candidateProfileDetails.jobDesirableSpecializations = JSON.parse(JSON.stringify(this.application.jobDesirableSpecializations));\n // }\n\n this.candidateProfileDetails['candidatePrefRegion'] = {\n value: null,\n preferenceType: null\n }\n this.candidateProfileDetails['jobDesirableDomain'] = {\n value: null,\n preferenceType: null\n }\n this.candidateProfileDetails['jobDesirableCategory'] = {\n value: null,\n preferenceType: null\n }\n this.candidateProfileDetails['jobDesirableTenure'] = {\n value: null,\n preferenceType: null\n }\n\n this.candidateProfileDetails['jobDesirableTeamRole'] = {\n value: null,\n preferenceType: null\n }\n\n this.candidateProfileDetails['candidatePrefVisaPreference'] = {\n value: null,\n preferenceType: null\n }\n \n this.candidateProfileDetails['jobDesirableWorkPattern'] = {\n value: null,\n preferenceType: null\n }\n\n this.candidateProfileDetails['candidatePrefLanguage'] = {\n value: null,\n preferenceType: this.candidateProfileDetails.candidatePrefLanguage && this.candidateProfileDetails.candidatePrefLanguage?.preferenceType ? this.candidateProfileDetails.candidatePrefLanguage?.preferenceType : null\n }\n \n // this.candidateProfileDetails = {\n // candidatePrefRegion: {\n // value:null,\n // preferenceType: null,\n // },\n // jobDesirableDomain: {\n // value:null,\n // preferenceType: null,\n // },\n // jobDesirableCategory: {\n // value:null,\n // preferenceType: null,\n // },\n // jobDesirableTenure:{\n // value:null,\n // preferenceType: null,\n // },\n // jobDesirableTeamRole: {\n // value:null,\n // preferenceType: null,\n // },\n // jobDesirableWorkPattern: {\n // value:null,\n // preferenceType: null,\n // },\n // }\n console.log(this.candidateProfileDetails.createCandidateSkillViewModel)\n } else {\n this.userApplyJob = false;\n this.candidateProfileDetails = {\n fullName: this.currentUser.name,\n emailAddress: this.userPrimaryDetails.email,\n jobId: this.jobId,\n sourceId: this.sourceId,\n remarks: '',\n photo: '',\n resume: '',\n paySlips: [],\n candVideoProfile: '',\n validPpflag: '',\n currEmplFlag: '',\n fullNameInPp: '',\n candidateDOB: '',\n gender: '',\n maritalStatus: '',\n noticePeriod: 0,\n reasonType: 0,\n reasonsForReloc: '',\n address: '',\n currLocation: '',\n currLocationID: null,\n countryID: null,\n currOrganization: '',\n totalExperiance: 0,\n relevantExperiance: 0,\n contactNo: '',\n alteContactNo: '',\n cpCurrency: null,\n cpGrossPayPerAnnum: '',\n cpDeductionsPerAnnum: '',\n cpVariablePayPerAnnum: '',\n cpTakeHomeSalPerMonth: '',\n epCurrency: '',\n epTakeHomeSalPerMonth: 0,\n selfRating: 0,\n nationality: null,\n candidatePrefRegion: {\n value: null,\n preferenceType: null,\n },\n candidatePrefLanguage: {\n value: null,\n preferenceType: null,\n },\n candidatePrefVisaPreference: {\n value: null,\n preferenceType: null,\n },\n jobDesirableDomain: {\n value: null,\n preferenceType: null,\n },\n jobDesirableCategory: {\n value: null,\n preferenceType: null,\n },\n jobDesirableTenure: {\n value: null,\n preferenceType: null,\n },\n jobDesirableTeamRole: {\n value: null,\n preferenceType: null,\n },\n jobDesirableWorkPattern: {\n value: null,\n preferenceType: null,\n },\n jobDesirableSpecializations: [],\n \"jobDesirableImplementations\": [],\n \"jobDesirableDesigns\": [],\n \"jobDesirableDevelopments\": [],\n \"jobDesirableSupports\": [],\n \"jobDesirableQualities\": [],\n \"jobDesirableDocumentations\": [],\n createCandidateSkillViewModel: [],\n expectedPackage: '',\n PaySlipsURL: [],\n candidateSkills: []\n };\n for (var i = 0; i < this.application.openingSkillSet.length; i++) {\n var objiss = {\n Id: 0,\n expInMonths: null,\n expInYears: null,\n totalExp: \"\",\n skillLevel: 'Knowledge on',\n skillLevelId: this.application.openingSkillSet[i].skillLevelId,\n technologyId: this.application.openingSkillSet[i].technologyId,\n technologyName: this.application.openingSkillSet[i].technology,\n selfRating: 0,\n IsCanSkill: false,\n };\n this.candidateProfileDetails.candidateSkills.push(\n objiss\n );\n }\n }\n } else {\n this.userApplyJob = false;\n this.candidateProfileDetails = {\n fullName: this.currentUser.name,\n emailAddress: this.userPrimaryDetails.email,\n jobId: this.jobId,\n sourceId: this.sourceId,\n remarks: '',\n photo: '',\n resume: '',\n paySlips: [],\n candVideoProfile: '',\n validPpflag: '',\n currEmplFlag: '',\n fullNameInPp: '',\n candidateDOB: '',\n gender: '',\n maritalStatus: '',\n noticePeriod: 0,\n reasonType: 0,\n reasonsForReloc: '',\n address: '',\n currLocation: '',\n currLocationID: null,\n countryID: null,\n candidatePrefRegion: {\n value: null,\n preferenceType: null,\n },\n candidatePrefVisaPreference: {\n value: null,\n preferenceType: null,\n },\n jobDesirableDomain: {\n value: null,\n preferenceType: null,\n },\n jobDesirableCategory: {\n value: null,\n preferenceType: null,\n },\n jobDesirableTenure: {\n value: null,\n preferenceType: null,\n },\n jobDesirableTeamRole: {\n value: null,\n preferenceType: null,\n },\n jobDesirableWorkPattern: {\n value: null,\n preferenceType: null,\n },\n candidatePrefLanguage: {\n value: null,\n preferenceType: null,\n },\n jobDesirableSpecializations: [],\n \"jobDesirableImplementations\": [],\n \"jobDesirableDesigns\": [],\n \"jobDesirableDevelopments\": [],\n \"jobDesirableSupports\": [],\n \"jobDesirableQualities\": [],\n \"jobDesirableDocumentations\": [],\n currOrganization: '',\n totalExperiance: 0,\n relevantExperiance: 0,\n contactNo: '',\n alteContactNo: '',\n cpCurrency: null,\n cpGrossPayPerAnnum: '',\n cpDeductionsPerAnnum: '',\n cpVariablePayPerAnnum: '',\n cpTakeHomeSalPerMonth: '',\n epCurrency: '',\n epTakeHomeSalPerMonth: 0,\n selfRating: 0,\n nationality: null,\n createCandidateSkillViewModel: [],\n expectedPackage: '',\n PaySlipsURL: [],\n candidateSkills: []\n };\n for (\n var i = 0;\n i < this.application?.openingSkillSet?.length;\n i++\n ) {\n var skillObj = {\n Id: 0,\n expInMonths: null,\n expInYears: null,\n skillLevel: '',\n totalExp: '',\n skillLevelId: this.application.openingSkillSet[i].skillLevelId,\n technologyId: this.application.openingSkillSet[i].technologyId,\n technologyName: this.application.openingSkillSet[i].technology,\n selfRating: 0,\n IsCanSkill: false,\n };\n this.candidateProfileDetails.candidateSkills.push(skillObj);\n }\n\n\n }\n\n\n if (!this.userApplyJob && this.application.jobDesirableSpecializations) {\n this.candidateProfileDetails.jobDesirableSpecializations = JSON.parse(JSON.stringify(this.application.jobDesirableSpecializations));\n }\n\n if (!this.userApplyJob &&this.application.jobDesirableImplementations) {\n this.candidateProfileDetails.jobDesirableImplementations = JSON.parse(JSON.stringify(this.application.jobDesirableImplementations));\n }\n\n if (!this.userApplyJob &&this.application.jobDesirableDesigns) {\n this.candidateProfileDetails.jobDesirableDesigns = JSON.parse(JSON.stringify(this.application.jobDesirableDesigns));\n }\n\n if (!this.userApplyJob &&this.application.jobDesirableDevelopments) {\n this.candidateProfileDetails.jobDesirableDevelopments = JSON.parse(JSON.stringify(this.application.jobDesirableDevelopments));\n }\n\n if (!this.userApplyJob &&this.application.jobDesirableSupports) {\n this.candidateProfileDetails.jobDesirableSupports = JSON.parse(JSON.stringify(this.application.jobDesirableSupports));\n }\n\n if (!this.userApplyJob &&this.application.jobDesirableQualities) {\n this.candidateProfileDetails.jobDesirableQualities = JSON.parse(JSON.stringify(this.application.jobDesirableQualities));\n }\n\n if (!this.userApplyJob &&this.application.jobDesirableDocumentations) {\n this.candidateProfileDetails.jobDesirableDocumentations = JSON.parse(JSON.stringify(this.application.jobDesirableDocumentations));\n }\n\n if (this.application.candidateEducationQualifications) {\n\n let data = [];\n this.application.candidateEducationQualifications.forEach(element => {\n data.push({\n \"qualificationId\": element.qualification,\n \"qualificationName\": element.qualificationName,\n \"qualification\": {\n \"value\": null,\n \"preferenceType\": true\n },\n \"courseId\": element.course,\n courseName: element.courseName,\n \"course\": {\n \"value\": null,\n \"preferenceType\": null\n }\n }\n )\n });\n\n this.candidateProfileDetails.candidateQualificationModel = JSON.parse(JSON.stringify(data));\n }\n\n if (this.application.candidateEducationCertifications) {\n\n let data = [];\n this.application.candidateEducationCertifications.forEach(element => {\n data.push({\n \"certificationId\": element.value,\n name: element.valueName,\n \"certification\": {\n \"value\": null,\n \"preferenceType\": null\n }\n })\n });\n\n this.candidateProfileDetails.candidateCertificationModel = JSON.parse(JSON.stringify(data));\n }\n\n if (this.application.openingQualifications) {\n\n let data = [];\n this.application.openingQualifications.forEach(element => {\n data.push({\n \"qualificationId\": element.value,\n name: element.valueName,\n \"qualification\": {\n \"value\": null,\n \"preferenceType\": null\n }\n })\n });\n\n this.candidateProfileDetails.openingQualifications = JSON.parse(JSON.stringify(data));\n }\n\n if (this.application.openingCertifications) {\n\n let data = [];\n this.application.openingCertifications.forEach(element => {\n data.push({\n \"certificationId\": element.value,\n name: element.valueName,\n \"certification\": {\n \"value\": null,\n \"preferenceType\": null\n }\n })\n });\n\n this.candidateProfileDetails.openingCertifications = JSON.parse(JSON.stringify(data));\n }\n\n\n if (this.candidateProfileDetails.countryID) {\n this.getCityList();\n }\n\n this.processQuestionaire();\n\n },\n (error) => {\n if (this.application.openingPREFViewModel.length > 0) {\n this.currentOpeningPREF = this.application.openingPREFViewModel[0];\n }\n }\n );\n }\n\n setCurrentPage(event: any) {\n this.processQuestionaire();\n this.currentPage = event.currentPage;\n this.mainWizard = event.mainWizardPage;\n\n if (event.mainWizardPage == 6 && event.isSave) {\n\n\n\n }\n\n }\n\n changePage(event: any) {\n this.processQuestionaire();\n let isForward = event.isForward;\n\n let currentWizard = event.currentWizard;\n let currentPage = event.currentPage;\n if (isForward)\n this.changePage_forward(currentWizard, currentPage);\n else\n this.changePage_backward(currentWizard, currentPage);\n\n\n \n setTimeout(() => {\n this.gotoTop();\n }, 500);\n \n }\n\n gotoTop() {\n window.scroll({ \n top: 0, \n left: 0, \n behavior: 'smooth' \n });\n }\n\n private changePage_forward(currentWizard: number, currentPage: number) {\n switch (currentWizard) {\n case 0:\n if (currentPage > 1) {\n if (this.screensettings.personalDtls.pg1.isVisible == true) {\n this.mainWizard = 1;\n this.currentPage = 1;\n }\n else\n this.changePage_forward(1, 1);\n }\n else {\n this.mainWizard = 0;\n this.currentPage = 2;\n }\n break;\n case 1:\n switch (currentPage) {\n case 1:\n {\n if (this.screensettings.personalDtls.pg2.isVisible == true) {\n this.mainWizard = 1;\n this.currentPage = 2;\n }\n else\n this.changePage_forward(1, 2);\n }\n break;\n case 2:\n {\n if (this.screensettings.personalDtls.pg3.isVisible == true) {\n this.mainWizard = 1;\n this.currentPage = 3;\n }\n else\n this.changePage_forward(1, 3);\n }\n break;\n case 3:\n {\n if (this.screensettings.salaryExp.pg1.isVisible == true) {\n this.mainWizard = 2;\n this.currentPage = 1;\n }\n else\n this.changePage_forward(2, 1);\n }\n break;\n }\n break;\n case 2:\n switch (currentPage) {\n case 1:\n {\n if (this.screensettings.noticePeriod.pg1.isVisible == true) {\n this.mainWizard = 3;\n this.currentPage = 1;\n }\n else\n this.changePage_forward(3, 1);\n }\n break;\n }\n break;\n case 3:\n switch (currentPage) {\n case 1:\n {\n if (this.screensettings.noticePeriod.pg2.isVisible == true) {\n this.mainWizard = 3;\n this.currentPage = 2;\n }\n else\n this.changePage_forward(3, 2);\n }\n break;\n case 2:\n {\n if (this.screensettings.knowledge.jobDesirableSpecializations.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 1;\n }\n else\n this.changePage_forward(4, 1);\n }\n break;\n }\n break;\n case 4:\n switch (currentPage) {\n case 1:\n {\n if (this.screensettings.knowledge.jobDesirableImplementations.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 2;\n }\n else\n this.changePage_forward(4, 2);\n }\n break;\n case 2:\n {\n if (this.screensettings.knowledge.jobDesirableDesigns.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 3;\n }\n else\n this.changePage_forward(4, 3);\n }\n break;\n case 3:\n {\n if (this.screensettings.knowledge.jobDesirableDevelopments.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 4;\n }\n else\n this.changePage_forward(4, 4);\n }\n break;\n\n case 4:\n {\n if (this.screensettings.knowledge.jobDesirableSupports.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 5;\n }\n else\n this.changePage_forward(4, 5);\n }\n break;\n case 5:\n {\n if (this.screensettings.knowledge.jobDesirableQualities.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 6;\n }\n else\n this.changePage_forward(4, 6);\n }\n break;\n case 6:\n {\n if (this.screensettings.knowledge.jobDesirableDocumentations.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 7;\n }\n else\n this.changePage_forward(4, 7);\n }\n break;\n case 7:\n {\n if (this.screensettings.knowledge.openingSkillSet.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 8;\n }\n else\n this.changePage_forward(4, 8);\n }\n break;\n case 8:\n {\n if (this.screensettings.knowledge.pg1.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 9;\n }\n else\n this.changePage_forward(4, 9);\n }\n break;\n case 9:\n {\n if (this.screensettings.knowledge.pg2.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 10;\n }\n else\n this.changePage_forward(4, 10);\n }\n break;\n case 10:\n {\n if (this.screensettings.resume.isVisible == true) {\n this.mainWizard = 5;\n this.currentPage = 1;\n }\n else\n this.changePage_forward(5, 1);\n }\n break;\n }\n break;\n case 5:\n {\n if (this.screensettings.interviewAvail.isVisible == true) {\n this.mainWizard = 6;\n this.currentPage = 1;\n }\n else\n this.changePage_forward(6, 1);\n }\n break;\n case 6:\n {\n //submit\n }\n break;\n default:\n this.toastr.error(\"Invalid wizard:\" + currentWizard);\n break;\n }\n }\n private changePage_backward(currentWizard: number, currentPage: number) {\n switch (currentWizard) {\n case 0:\n {\n this.mainWizard = 0;\n this.currentPage = 1;\n }\n break;\n case 1:\n switch (currentPage) {\n case 1:\n {\n this.mainWizard = 0;\n this.currentPage = 2;\n }\n break;\n case 2:\n {\n if (this.screensettings.personalDtls.pg1.isVisible == true) {\n this.mainWizard = 1;\n this.currentPage = 1;\n }\n else\n this.changePage_backward(1, 1);\n }\n break;\n case 3:\n {\n if (this.screensettings.personalDtls.pg2.isVisible == true) {\n this.mainWizard = 1;\n this.currentPage = 2;\n }\n else\n this.changePage_backward(1, 2);\n }\n break;\n }\n break;\n case 2:\n switch (currentPage) {\n case 1:\n {\n if (this.screensettings.personalDtls.pg3.isVisible == true) {\n this.mainWizard = 1;\n this.currentPage = 3;\n }\n else\n this.changePage_backward(1, 3);\n }\n break;\n }\n break;\n case 3:\n switch (currentPage) {\n case 1:\n {\n if (this.screensettings.salaryExp.pg1.isVisible == true) {\n this.mainWizard = 2;\n this.currentPage = 1;\n }\n else\n this.changePage_backward(2, 1);\n }\n break;\n case 2:\n {\n if (this.screensettings.noticePeriod.pg1.isVisible == true) {\n this.mainWizard = 3;\n this.currentPage = 1;\n }\n else\n this.changePage_backward(3, 1);\n }\n break;\n }\n break;\n case 4:\n switch (currentPage) {\n case 1:\n {\n if (this.screensettings.noticePeriod.pg2.isVisible == true) {\n this.mainWizard = 3;\n this.currentPage = 2;\n }\n else\n this.changePage_backward(3, 2);\n }\n break;\n case 2:\n {\n if (this.screensettings.knowledge.jobDesirableSpecializations.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 1;\n }\n else\n this.changePage_backward(4, 1);\n }\n break;\n case 3:\n {\n if (this.screensettings.knowledge.jobDesirableImplementations.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 2;\n }\n else\n this.changePage_backward(4, 2);\n }\n break;\n\n case 4:\n {\n if (this.screensettings.knowledge.jobDesirableDesigns.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 3;\n }\n else\n this.changePage_backward(4, 3);\n }\n break;\n case 5:\n {\n if (this.screensettings.knowledge.jobDesirableDevelopments.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 4;\n }\n else\n this.changePage_backward(4, 4);\n }\n break;\n case 6:\n {\n if (this.screensettings.knowledge.jobDesirableSupports.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 5;\n }\n else\n this.changePage_backward(4, 5);\n }\n break;\n case 7:\n {\n if (this.screensettings.knowledge.jobDesirableQualities.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 6;\n }\n else\n this.changePage_backward(4, 6);\n }\n break;\n case 8:\n {\n if (this.screensettings.knowledge.jobDesirableDocumentations.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 7;\n }\n else\n this.changePage_backward(4, 7);\n }\n break;\n case 9:\n {\n if (this.screensettings.knowledge.openingSkillSet.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 8;\n }\n else\n this.changePage_backward(4, 8);\n }\n break;\n case 10:\n {\n if (this.screensettings.knowledge.pg1.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 9;\n }\n else\n this.changePage_backward(4, 9);\n }\n break;\n }\n break;\n case 5:\n {\n if (this.screensettings.knowledge.pg2.isVisible == true) {\n this.mainWizard = 4;\n this.currentPage = 10;\n }\n else\n this.changePage_backward(4, 10);\n }\n break;\n case 6:\n {\n if (this.screensettings.resume.isVisible == true) {\n this.mainWizard = 5;\n this.currentPage = 1;\n }\n else\n this.changePage_backward(5, 1);\n }\n break;\n default:\n this.toastr.error(\"Invalid wizard:\" + currentWizard);\n break;\n }\n }\n\n //job questionaire and progress bar\n get progressbarValue() {\n let visibleCount = 0, completedCount = 0;\n for (let key in this.screensettings) {\n visibleCount += this.screensettings[key]?.visibleCount || 0;\n completedCount += this.screensettings[key]?.completedCount || 0;\n }\n return visibleCount > 0 ? ((completedCount / visibleCount) * 100) : 100;\n }\n screensettings: {\n personalDtls: JobApplyComponent_screensettings_personalDtls;\n salaryExp: JobApplyComponent_screensettings_salaryExp;\n noticePeriod: JobApplyComponent_screensettings_noticePeriod;\n knowledge: JobApplyComponent_screensettings_knowledge;\n resume: JobApplyComponent_screensettings_resume;\n interviewAvail: JobApplyComponent_screensettings_interviewAvail;\n }\n processQuestionaire() {\n this.screensettings = {\n personalDtls: new JobApplyComponent_screensettings_personalDtls(this.application, this.candidateProfileDetails),\n salaryExp: new JobApplyComponent_screensettings_salaryExp(this.application, this.candidateProfileDetails),\n noticePeriod: new JobApplyComponent_screensettings_noticePeriod(this.application, this.candidateProfileDetails),\n knowledge: new JobApplyComponent_screensettings_knowledge(this.application, this.candidateProfileDetails),\n resume: new JobApplyComponent_screensettings_resume(this.application, this.candidateProfileDetails, this.recordedData),\n interviewAvail: new JobApplyComponent_screensettings_interviewAvail(this.application, this.candidateProfileDetails)\n };\n }\n}\n\nclass ApplyComponent_screensettings_element {\n isVisible: boolean\n isCompleted: boolean\n}\n\nclass JobApplyComponent_screensettings_personalDtls {\n constructor(application: any, candidateProfileDetails: any) {\n this.pg1 = new JobApplyComponent_screensettings_personalDtls_pg1();\n this.pg2 = new JobApplyComponent_screensettings_personalDtls_pg2();\n this.pg3 = new JobApplyComponent_screensettings_personalDtls_pg3();\n this.setValues(application, candidateProfileDetails);\n }\n setValues(application: any, candidateProfileDetails: any) {\n this.pg1.setValues(application, candidateProfileDetails);\n this.pg2.setValues(application, candidateProfileDetails);\n this.pg3.setValues(application, candidateProfileDetails);\n }\n\n pg1: JobApplyComponent_screensettings_personalDtls_pg1;\n pg2: JobApplyComponent_screensettings_personalDtls_pg2;\n pg3: JobApplyComponent_screensettings_personalDtls_pg3;\n get visibleCount() { return this.pg1.visibleCount + this.pg2.visibleCount + this.pg3.visibleCount; }\n get isVisible() { return this.pg1.isVisible && this.pg2.isVisible && this.pg3.isVisible; }\n get completedCount() { return this.pg1.completedCount + this.pg2.completedCount + this.pg3.completedCount; }\n get isCompleted() { return this.pg1.isCompleted && this.pg2.isCompleted && this.pg3.isCompleted; }\n}\nclass JobApplyComponent_screensettings_personalDtls_pg1 {\n setValues(application: any, candidateProfileDetails: any) {\n //personal details 1\n this.elements = {\n candidatePrefValidPassport: {\n isVisible: application.candidatePrefValidPassport ? true : false,\n isCompleted: (candidateProfileDetails.validPpflag != null && candidateProfileDetails.validPpflag != '')\n }, candidateFullName: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.fullName != null && candidateProfileDetails.fullName != '')\n }, candidatePrefDOB: {\n isVisible: application.candidatePrefDOB ? true : false,\n isCompleted: (candidateProfileDetails.candidateDOB != null && candidateProfileDetails.candidateDOB != '')\n }, contactNumber: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.contactNo != null && candidateProfileDetails.contactNo != '')\n && (candidateProfileDetails.countryCodePhoneNumber != null && candidateProfileDetails.countryCodePhoneNumber != '')\n }, altContactNumber: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.alteContactNo != null && candidateProfileDetails.alteContactNo != '')\n && (candidateProfileDetails.altCountryCodePhoneNumber != null && candidateProfileDetails.altCountryCodePhoneNumber != '')\n }, candidatePrefGender: {\n // application.candidatePrefGender\n isVisible: true,\n isCompleted: (candidateProfileDetails.gender != null && candidateProfileDetails.gender != '')\n }, candidatePrefMaritalStatus: {\n // application.candidatePrefMaritalStatus\n isVisible: true,\n isCompleted: (candidateProfileDetails.maritalStatus != null && candidateProfileDetails.maritalStatus != '')\n }\n , candidatePrefRegion: {\n isVisible: application.candidatePrefRegion ? true : false,\n isCompleted: (candidateProfileDetails.candidatePrefRegion != null && candidateProfileDetails.candidatePrefRegion != '')\n }\n , candidatePrefNationality: {\n isVisible: application.candidatePrefNationality ? true : false,\n isCompleted: (candidateProfileDetails.nationality != null && candidateProfileDetails.nationality != '')\n }\n , candidatePrefResidingCountry: {\n isVisible: application.candidatePrefResidingCountry ? true : false,\n isCompleted: (candidateProfileDetails.countryID != null && candidateProfileDetails.countryID != '')\n }\n , candidatePrefResidingCity: {\n isVisible: application.candidatePrefResidingCity ? true : false,\n isCompleted: (candidateProfileDetails.currLocationID != null && candidateProfileDetails.currLocationID != '')\n }\n , candidatePrefDrivingLicence: {\n isVisible: application.candidatePrefDrivingLicence ? true : false,\n isCompleted: (candidateProfileDetails.jobCountryDrivingLicence != null && candidateProfileDetails.jobCountryDrivingLicence != '')\n }\n , candidatePrefLanguage: {\n isVisible: application.candidatePrefLanguage ? true : false,\n isCompleted: (candidateProfileDetails.candidatePrefLanguage != null && candidateProfileDetails.candidatePrefLanguage != '')\n }\n , candidatePrefVisaPreference: {\n isVisible: application.candidatePrefVisaPreference ? true : false,\n isCompleted: (candidateProfileDetails.candidatePrefVisaPreference != null && candidateProfileDetails.candidatePrefVisaPreference != '')\n }\n };\n }\n get visibleCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += this.elements[key].isVisible == true ? 1 : 0;\n }\n return visibleCount;\n }\n get isVisible() {\n return this.visibleCount > 0;\n }\n get completedCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += (this.elements[key].isVisible == true && this.elements[key].isCompleted == true) ? 1 : 0;\n }\n return visibleCount;\n }\n get isCompleted() {\n return this.completedCount > this.visibleCount;\n }\n elements: {\n candidatePrefValidPassport: ApplyComponent_screensettings_element,\n candidateFullName: ApplyComponent_screensettings_element,\n candidatePrefDOB: ApplyComponent_screensettings_element,\n contactNumber: ApplyComponent_screensettings_element,\n altContactNumber: ApplyComponent_screensettings_element,\n candidatePrefGender: ApplyComponent_screensettings_element,\n candidatePrefMaritalStatus: ApplyComponent_screensettings_element,\n candidatePrefRegion: ApplyComponent_screensettings_element,\n candidatePrefNationality: ApplyComponent_screensettings_element,\n candidatePrefResidingCountry: ApplyComponent_screensettings_element,\n candidatePrefResidingCity: ApplyComponent_screensettings_element,\n candidatePrefDrivingLicence: ApplyComponent_screensettings_element,\n\n candidatePrefLanguage: ApplyComponent_screensettings_element,//pending\n candidatePrefVisaPreference: ApplyComponent_screensettings_element//pending\n }\n}\nclass JobApplyComponent_screensettings_personalDtls_pg2 {\n setValues(application: any, candidateProfileDetails: any) {\n //personal details 2\n this.elements = {\n jobDesirableDomain: {\n isVisible: application.jobDesirableDomain ? true : false,\n isCompleted: (candidateProfileDetails.jobDesirableDomain != null && candidateProfileDetails.jobDesirableDomain != '')\n }\n , jobCategory: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.jobDesirableCategory != null && candidateProfileDetails.jobDesirableCategory != '')\n }\n , jobTenure: {\n isVisible: application.jobTenure ? true : false,\n isCompleted: (candidateProfileDetails.jobDesirableTenure != null && candidateProfileDetails.jobDesirableTenure != '')\n }\n , jobWorkPattern: {\n isVisible: application.jobWorkPattern ? true : false,\n isCompleted: (candidateProfileDetails.jobDesirableWorkPattern != null && candidateProfileDetails.jobDesirableWorkPattern != '')\n }\n , jobRole: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.jobDesirableTeamRole != null && candidateProfileDetails.jobDesirableTeamRole != '')\n }\n };\n }\n get visibleCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += this.elements[key].isVisible == true ? 1 : 0;\n }\n return visibleCount;\n }\n get isVisible() {\n return this.visibleCount > 0;\n }\n get completedCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += (this.elements[key].isVisible == true && this.elements[key].isCompleted == true) ? 1 : 0;\n }\n return visibleCount;\n }\n get isCompleted() {\n return this.completedCount > this.visibleCount;\n }\n elements: {\n jobDesirableDomain: ApplyComponent_screensettings_element,\n jobCategory: ApplyComponent_screensettings_element,\n jobTenure: ApplyComponent_screensettings_element,\n jobWorkPattern: ApplyComponent_screensettings_element,\n jobRole: ApplyComponent_screensettings_element,\n }\n}\nclass JobApplyComponent_screensettings_personalDtls_pg3 {\n setValues(application: any, candidateProfileDetails: any) {\n this.elements = {\n expeInMonthsPrefTyp: {\n isVisible: application.expeInMonthsPrefTyp ? true : false,\n isCompleted: (candidateProfileDetails.totalExperiance != null && candidateProfileDetails.totalExperiance != '')\n }, releventExpInMonthsPrefTyp: {\n isVisible: application.releventExpInMonthsPrefTyp ? true : false,\n isCompleted: (candidateProfileDetails.relevantExperiance != null && candidateProfileDetails.relevantExperiance != '')\n }\n };\n }\n get visibleCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += this.elements[key].isVisible == true ? 1 : 0;\n }\n return visibleCount;\n }\n get isVisible() {\n return this.visibleCount > 0;\n }\n get completedCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += (this.elements[key].isVisible == true && this.elements[key].isCompleted == true) ? 1 : 0;\n }\n return visibleCount;\n }\n get isCompleted() {\n return this.completedCount > this.visibleCount;\n }\n elements: {\n expeInMonthsPrefTyp: ApplyComponent_screensettings_element,\n releventExpInMonthsPrefTyp: ApplyComponent_screensettings_element,\n }\n}\n\nclass JobApplyComponent_screensettings_salaryExp {\n constructor(application: any, candidateProfileDetails: any) {\n this.pg1 = new JobApplyComponent_screensettings_salaryExp_pg1();\n this.setValues(application, candidateProfileDetails);\n }\n setValues(application: any, candidateProfileDetails: any) {\n this.pg1.setValues(application, candidateProfileDetails);\n }\n\n pg1: JobApplyComponent_screensettings_salaryExp_pg1;\n get visibleCount() { return this.pg1.visibleCount; }\n get isVisible() { return this.pg1.isVisible; }\n get completedCount() { return this.pg1.completedCount; }\n get isCompleted() { return this.pg1.isCompleted; }\n}\nclass JobApplyComponent_screensettings_salaryExp_pg1 {\n setValues(application: any, candidateProfileDetails: any) {\n this.elements = {\n currency: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.cpCurrency != null && candidateProfileDetails.cpCurrency != '')\n }\n , annualSalary: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.cpGrossPayPerAnnum != null && candidateProfileDetails.cpGrossPayPerAnnum != '')\n }\n , variablePay: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.cpVariablePayPerAnnum != null && candidateProfileDetails.cpVariablePayPerAnnum != '')\n }\n , deducation: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.cpDeductionsPerAnnum != null && candidateProfileDetails.cpDeductionsPerAnnum != '')\n }\n , netMonthlyTakeHome: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.cpTakeHomeSalPerMonth != null && candidateProfileDetails.cpTakeHomeSalPerMonth != '')\n }\n , expectedTakeHome: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.epTakeHomeSalPerMonth != null && candidateProfileDetails.epTakeHomeSalPerMonth != '')\n }\n , candidatePrefPaySlp: {\n isVisible: application.candidatePrefPaySlp ? true : false,\n isCompleted: (candidateProfileDetails.paySlips?.length > 0)\n }\n };\n }\n get visibleCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += this.elements[key].isVisible == true ? 1 : 0;\n }\n return visibleCount;\n }\n get isVisible() {\n return this.visibleCount > 0;\n }\n get completedCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += (this.elements[key].isVisible == true && this.elements[key].isCompleted == true) ? 1 : 0;\n }\n return visibleCount;\n }\n get isCompleted() {\n return this.completedCount > this.visibleCount;\n }\n elements: {\n currency: ApplyComponent_screensettings_element,\n annualSalary: ApplyComponent_screensettings_element,\n variablePay: ApplyComponent_screensettings_element,\n deducation: ApplyComponent_screensettings_element,\n netMonthlyTakeHome: ApplyComponent_screensettings_element,\n expectedTakeHome: ApplyComponent_screensettings_element,\n candidatePrefPaySlp: ApplyComponent_screensettings_element,\n }\n}\n\nclass JobApplyComponent_screensettings_noticePeriod {\n constructor(application: any, candidateProfileDetails: any) {\n this.pg1 = new JobApplyComponent_screensettings_noticePeriod_pg1();\n this.pg2 = new JobApplyComponent_screensettings_noticePeriod_pg2();\n this.setValues(application, candidateProfileDetails);\n }\n setValues(application: any, candidateProfileDetails: any) {\n this.pg1.setValues(application, candidateProfileDetails);\n this.pg2.setValues(application, candidateProfileDetails);\n }\n\n pg1: JobApplyComponent_screensettings_noticePeriod_pg1;\n pg2: JobApplyComponent_screensettings_noticePeriod_pg2;\n get visibleCount() { return this.pg1.visibleCount + this.pg2.visibleCount; }\n get isVisible() { return this.pg1.isVisible && this.pg2.isVisible; }\n get completedCount() { return this.pg1.completedCount + this.pg2.completedCount; }\n get isCompleted() { return this.pg1.isCompleted && this.pg2.isCompleted; }\n}\nclass JobApplyComponent_screensettings_noticePeriod_pg1 {\n setValues(application: any, candidateProfileDetails: any) {\n let empStatus: CandidateEmploymentStatus = null;\n if (candidateProfileDetails.candidatePrefEmployeeStatus != null && candidateProfileDetails.candidatePrefEmployeeStatus != '')\n empStatus = candidateProfileDetails.candidatePrefEmployeeStatus;\n\n this.elements = {\n employmentStatus: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.candidatePrefEmployeeStatus != null && candidateProfileDetails.candidatePrefEmployeeStatus != '')\n }\n , resignationAccepted: {\n isVisible: (empStatus == CandidateEmploymentStatus.ServingNoticePeriod),\n isCompleted: (candidateProfileDetails.candidateResignationAccepted != null && candidateProfileDetails.candidateResignationAccepted != '')\n }\n , currOrganization: {\n isVisible: (empStatus == CandidateEmploymentStatus.CurrenltyWorking || empStatus == CandidateEmploymentStatus.FreeLancerOrImmediateJoiner),\n isCompleted: (candidateProfileDetails.currOrganization != null && candidateProfileDetails.currOrganization != '')\n }\n , currDesignation: {\n isVisible: (empStatus == CandidateEmploymentStatus.CurrenltyWorking || empStatus == CandidateEmploymentStatus.FreeLancerOrImmediateJoiner),\n isCompleted: (candidateProfileDetails.currDesignation != null && candidateProfileDetails.currDesignation != '')\n }\n , noticePeriod: {\n isVisible: (empStatus == CandidateEmploymentStatus.ServingNoticePeriod),\n isCompleted: (candidateProfileDetails.noticePeriod != null && candidateProfileDetails.noticePeriod != '')\n }\n , candidateLastWorkDate: {\n isVisible: (empStatus == CandidateEmploymentStatus.CurrenltyWorking || empStatus == CandidateEmploymentStatus.FreeLancerOrImmediateJoiner),\n isCompleted: (candidateProfileDetails.candidateLastWorkDate != null && candidateProfileDetails.candidateLastWorkDate != '')\n }\n , anyOfferInHand: {\n isVisible: (empStatus == CandidateEmploymentStatus.ServingNoticePeriod || empStatus == CandidateEmploymentStatus.FreeLancerOrImmediateJoiner),\n isCompleted: (candidateProfileDetails.anyOfferInHand != null && candidateProfileDetails.anyOfferInHand != '')\n }\n , candidateCanJoinDate: {\n isVisible: (empStatus == CandidateEmploymentStatus.ServingNoticePeriod || empStatus == CandidateEmploymentStatus.FreeLancerOrImmediateJoiner),\n isCompleted: (candidateProfileDetails.candidateCanJoinDate != null && candidateProfileDetails.candidateCanJoinDate != '')\n }\n };\n }\n get visibleCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += this.elements[key].isVisible == true ? 1 : 0;\n }\n return visibleCount;\n }\n get isVisible() {\n return this.visibleCount > 0;\n }\n get completedCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += (this.elements[key].isVisible == true && this.elements[key].isCompleted == true) ? 1 : 0;\n }\n return visibleCount;\n }\n get isCompleted() {\n return this.completedCount > this.visibleCount;\n }\n elements: {\n employmentStatus: ApplyComponent_screensettings_element,\n resignationAccepted: ApplyComponent_screensettings_element,\n currOrganization: ApplyComponent_screensettings_element,\n currDesignation: ApplyComponent_screensettings_element,\n noticePeriod: ApplyComponent_screensettings_element,\n candidateLastWorkDate: ApplyComponent_screensettings_element,\n anyOfferInHand: ApplyComponent_screensettings_element,\n candidateCanJoinDate: ApplyComponent_screensettings_element,\n }\n}\nclass JobApplyComponent_screensettings_noticePeriod_pg2 {\n setValues(application: any, candidateProfileDetails: any) {\n this.elements = {\n reasonsForReloc: {\n isVisible: true,\n isCompleted: (candidateProfileDetails.reasonsForReloc != null && candidateProfileDetails.reasonsForReloc != '')\n }\n // reasonsForRelocOther = {\n // isVisible: true,\n // isCompleted: (candidateProfileDetails.cpGrossPayPerAnnum != null && candidateProfileDetails.cpGrossPayPerAnnum != '')\n // }\n };\n }\n get visibleCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += this.elements[key].isVisible == true ? 1 : 0;\n }\n return visibleCount;\n }\n get isVisible() {\n return this.visibleCount > 0;\n }\n get completedCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += (this.elements[key].isVisible == true && this.elements[key].isCompleted == true) ? 1 : 0;\n }\n return visibleCount;\n }\n get isCompleted() {\n return this.completedCount > this.visibleCount;\n }\n\n elements: {\n reasonsForReloc: ApplyComponent_screensettings_element,\n //reasonsForRelocOther: ApplyComponent_screensettings_element,\n }\n}\n\nclass JobApplyComponent_screensettings_knowledge {\n constructor(application: any, candidateProfileDetails: any) {\n this.pg1 = new JobApplyComponent_screensettings_knowledge_pg1();\n this.pg2 = new JobApplyComponent_screensettings_knowledge_pg2();\n\n this.jobDesirableSpecializations = new JobApplyComponent_screensettings_knowledge_jobSkill();\n this.jobDesirableImplementations = new JobApplyComponent_screensettings_knowledge_jobSkill;\n this.jobDesirableDesigns = new JobApplyComponent_screensettings_knowledge_jobSkill;\n this.jobDesirableDevelopments = new JobApplyComponent_screensettings_knowledge_jobSkill;\n this.jobDesirableSupports = new JobApplyComponent_screensettings_knowledge_jobSkill;\n this.jobDesirableQualities = new JobApplyComponent_screensettings_knowledge_jobSkill;\n this.jobDesirableDocumentations = new JobApplyComponent_screensettings_knowledge_jobSkill;\n this.openingSkillSet = new JobApplyComponent_screensettings_knowledge_candSkill;\n\n this.setValues(application, candidateProfileDetails);\n }\n setValues(application: any, candidateProfileDetails: any) {\n this.pg1.setValues(application, candidateProfileDetails);\n this.pg2.setValues(application, candidateProfileDetails);\n\n this.jobDesirableSpecializations.setValues(application.jobDesirableSpecializations, candidateProfileDetails.jobDesirableSpecializations);\n this.jobDesirableImplementations.setValues(application.jobDesirableImplementations, candidateProfileDetails.jobDesirableImplementations);\n this.jobDesirableDesigns.setValues(application.jobDesirableDesigns, candidateProfileDetails.jobDesirableDesigns);\n this.jobDesirableDevelopments.setValues(application.jobDesirableDevelopments, candidateProfileDetails.jobDesirableDevelopments);\n this.jobDesirableSupports.setValues(application.jobDesirableSupports, candidateProfileDetails.jobDesirableSupports);\n this.jobDesirableQualities.setValues(application.jobDesirableQualities, candidateProfileDetails.jobDesirableQualities);\n this.jobDesirableDocumentations.setValues(application.jobDesirableDocumentations, candidateProfileDetails.jobDesirableDocumentations);\n this.openingSkillSet.setValues(application.openingSkillSet, candidateProfileDetails.candidateSkills);\n }\n\n pg1: JobApplyComponent_screensettings_knowledge_pg1;\n pg2: JobApplyComponent_screensettings_knowledge_pg2;\n\n jobDesirableSpecializations: JobApplyComponent_screensettings_knowledge_jobSkill;\n jobDesirableImplementations: JobApplyComponent_screensettings_knowledge_jobSkill;\n jobDesirableDesigns: JobApplyComponent_screensettings_knowledge_jobSkill;\n jobDesirableDevelopments: JobApplyComponent_screensettings_knowledge_jobSkill;\n jobDesirableSupports: JobApplyComponent_screensettings_knowledge_jobSkill;\n jobDesirableQualities: JobApplyComponent_screensettings_knowledge_jobSkill;\n jobDesirableDocumentations: JobApplyComponent_screensettings_knowledge_jobSkill;\n openingSkillSet: JobApplyComponent_screensettings_knowledge_candSkill;\n\n get visibleCount() {\n return this.pg1.visibleCount + this.pg2.visibleCount\n + this.jobDesirableSpecializations.visibleCount\n + this.jobDesirableImplementations.visibleCount\n + this.jobDesirableDesigns.visibleCount\n + this.jobDesirableDevelopments.visibleCount\n + this.jobDesirableSupports.visibleCount\n + this.jobDesirableQualities.visibleCount\n + this.jobDesirableDocumentations.visibleCount\n + this.openingSkillSet.visibleCount;\n }\n get isVisible() {\n return this.pg1.isVisible && this.pg2.isVisible\n && this.jobDesirableSpecializations.isVisible\n && this.jobDesirableImplementations.isVisible\n && this.jobDesirableDesigns.isVisible\n && this.jobDesirableDevelopments.isVisible\n && this.jobDesirableSupports.isVisible\n && this.jobDesirableQualities.isVisible\n && this.jobDesirableDocumentations.isVisible\n && this.openingSkillSet.isVisible;\n }\n get completedCount() {\n return this.pg1.completedCount + this.pg2.completedCount\n + this.jobDesirableSpecializations.completedCount\n + this.jobDesirableImplementations.completedCount\n + this.jobDesirableDesigns.completedCount\n + this.jobDesirableDevelopments.completedCount\n + this.jobDesirableSupports.completedCount\n + this.jobDesirableQualities.completedCount\n + this.jobDesirableDocumentations.completedCount\n + this.openingSkillSet.completedCount;\n }\n get isCompleted() {\n return this.pg1.isCompleted && this.pg2.isCompleted\n && this.jobDesirableSpecializations.isCompleted\n && this.jobDesirableImplementations.isCompleted\n && this.jobDesirableDesigns.isCompleted\n && this.jobDesirableDevelopments.isCompleted\n && this.jobDesirableSupports.isCompleted\n && this.jobDesirableQualities.isCompleted\n && this.jobDesirableDocumentations.isCompleted\n && this.openingSkillSet.isCompleted;\n }\n}\nclass JobApplyComponent_screensettings_knowledge_jobSkill {\n setValues(application: any[], candidateProfileDetails: any[]) {\n this.elements = [];\n for (let index = 0; index < application.length; index++) {\n let _application = application[index];\n let _candidateProfileDetails = candidateProfileDetails.length > index ? candidateProfileDetails[index] : undefined;\n this.elements.push({\n isVisible: true,\n isCompleted: (_candidateProfileDetails?.expInYears != null && _candidateProfileDetails?.expInYears != '')\n && (_candidateProfileDetails?.expInMonths != null && _candidateProfileDetails?.expInMonths != '')\n });\n }\n }\n get visibleCount() { return this.elements?.filter(da => da.isVisible == true)?.length || 0; }\n get isVisible() { return this.visibleCount > 0; }\n get completedCount() { return this.elements?.filter(da => da.isVisible == true && da.isCompleted == true)?.length || 0; }\n get isCompleted() { return this.completedCount > this.visibleCount; }\n\n elements: ApplyComponent_screensettings_element[]\n}\nclass JobApplyComponent_screensettings_knowledge_candSkill {\n setValues(application: any[], candidateProfileDetails: any[]) {\n this.elements = [];\n for (let index = 0; index < application.length; index++) {\n let _application = application[index];\n let _candidateProfileDetails = candidateProfileDetails.length > index ? candidateProfileDetails[index] : undefined;\n this.elements.push({\n isVisible: true,\n isCompleted: (_candidateProfileDetails?.expInYears != null && _candidateProfileDetails?.expInYears != '')\n && (_candidateProfileDetails?.expInMonths != null && _candidateProfileDetails?.expInMonths != '')\n && (_candidateProfileDetails?.selfRating != null && _candidateProfileDetails?.selfRating != '')\n });\n }\n }\n get visibleCount() {\n return this.elements?.filter(da => da.isVisible == true)?.length || 0;\n }\n get isVisible() {\n return this.visibleCount > 0;\n }\n get completedCount() { return this.elements?.filter(da => da.isVisible == true && da.isCompleted == true)?.length || 0; }\n get isCompleted() {\n return this.completedCount > this.visibleCount;\n }\n elements: ApplyComponent_screensettings_element[]//year , month & rating\n}\nclass JobApplyComponent_screensettings_knowledge_pg1 {\n setValues(application: any, candidateProfileDetails: any) {\n this.elements = { candQualification: [], candCertification: [] };\n for (let index = 0; index < application.candidateEducationQualifications.length; index++) {\n let _application = application.candidateEducationQualifications[index];\n let _candidateProfileDetails = candidateProfileDetails?.candidateQualificationModel?.length > index ? candidateProfileDetails.candidateQualificationModel[index] : undefined;\n this.elements.candQualification.push({\n isVisible: true,\n isCompleted: (_candidateProfileDetails?.course?.preferenceType != null && _candidateProfileDetails?.course?.preferenceType != '')\n });\n }\n for (let index = 0; index < application.candidateEducationCertifications.length; index++) {\n let _application = application.candidateEducationCertifications[index];\n let _candidateProfileDetails = candidateProfileDetails?.candidateCertificationModel?.length > index ? candidateProfileDetails.candidateCertificationModel[index] : undefined;\n this.elements.candCertification.push({\n isVisible: true,\n isCompleted: (_candidateProfileDetails?.certification?.preferenceType != null && _candidateProfileDetails?.certification?.preferenceType != '')\n });\n }\n }\n get visibleCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += this.elements[key].filter(da => da.isVisible == true).length;\n }\n return visibleCount;\n }\n get isVisible() {\n return this.visibleCount > 0;\n }\n get completedCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += this.elements[key].filter(da => da.isVisible == true && da.isCompleted == true).length;\n }\n return visibleCount;\n }\n get isCompleted() {\n return this.completedCount > this.visibleCount;\n }\n elements: {\n candQualification: ApplyComponent_screensettings_element[],\n candCertification: ApplyComponent_screensettings_element[],\n }\n}\nclass JobApplyComponent_screensettings_knowledge_pg2 {\n setValues(application: any, candidateProfileDetails: any) {\n this.elements = { openingQualifications: [], openingCertifications: [] };\n for (let index = 0; index < application.openingQualifications.length; index++) {\n let _application = application.openingQualifications[index];\n let _candidateProfileDetails = candidateProfileDetails?.openingQualifications?.length > index ? candidateProfileDetails.openingQualifications[index] : undefined;\n this.elements.openingQualifications.push({\n isVisible: true,\n isCompleted: (_candidateProfileDetails?.qualification?.preferenceType != null && _candidateProfileDetails?.qualification?.preferenceType != '')\n });\n }\n for (let index = 0; index < application.openingCertifications.length; index++) {\n let _application = application.openingCertifications[index];\n let _candidateProfileDetails = candidateProfileDetails?.openingCertifications?.length > index ? candidateProfileDetails.openingCertifications[index] : undefined;\n this.elements.openingCertifications.push({\n isVisible: true,\n isCompleted: (_candidateProfileDetails?.certification?.preferenceType != null && _candidateProfileDetails?.certification?.preferenceType != '')\n });\n }\n }\n get visibleCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += this.elements[key].filter(da => da.isVisible == true).length;\n }\n return visibleCount;\n }\n get isVisible() {\n return this.visibleCount > 0;\n }\n get completedCount() {\n let visibleCount = 0\n for (let key in this.elements) {\n visibleCount += this.elements[key].filter(da => da.isVisible == true && da.isCompleted == true).length;\n }\n return visibleCount;\n }\n get isCompleted() {\n return this.completedCount > this.visibleCount;\n }\n elements: {\n openingQualifications: ApplyComponent_screensettings_element[],\n openingCertifications: ApplyComponent_screensettings_element[],\n }\n}\n\nclass JobApplyComponent_screensettings_resume {\n constructor(application: any, candidateProfileDetails: any, recordedData: any) {\n this.resume = new ApplyComponent_screensettings_element();\n this.videoProfile = new ApplyComponent_screensettings_element();\n this.setValues(application, candidateProfileDetails, recordedData);\n }\n setValues(application: any, candidateProfileDetails: any, recordedData: any) {\n this.resume = {\n isVisible: application.candidatePrefResume ? true : false,\n isCompleted: (candidateProfileDetails.resume?.length > 0)\n }\n this.videoProfile = {\n isVisible: application.candidatePrefVidPrfl ? true : false,\n isCompleted: (recordedData ? true : false)\n }\n }\n get visibleCount() { return (this.resume?.isVisible == true ? 1 : 0) + (this.videoProfile?.isVisible == true ? 1 : 0); }\n get isVisible() { return this.visibleCount > 0; }\n get completedCount() {\n return ((this.resume?.isVisible == true && this.resume?.isCompleted == true) ? 1 : 0)\n + ((this.videoProfile?.isVisible == true && this.videoProfile?.isCompleted == true) ? 1 : 0);\n }\n get isCompleted() { return this.completedCount > this.visibleCount; }\n\n resume: ApplyComponent_screensettings_element;\n videoProfile: ApplyComponent_screensettings_element;\n}\n\nclass JobApplyComponent_screensettings_interviewAvail {\n constructor(application: any, candidateProfileDetails: any) {\n this.interAval = new ApplyComponent_screensettings_element();\n this.interAvalOther = new ApplyComponent_screensettings_element();\n this.setValues(application, candidateProfileDetails);\n }\n setValues(application: any, candidateProfileDetails: any) {\n this.interAval = {\n isVisible: true,\n isCompleted: (candidateProfileDetails.interviewFaceToFace ? true : false)\n }\n this.interAvalOther = {\n isVisible: candidateProfileDetails.interviewFaceToFace == \"Others\" ? true : false,\n isCompleted: (candidateProfileDetails.interviewFaceToFaceReason ? true : false)\n }\n }\n get visibleCount() { return (this.interAval?.isVisible == true ? 1 : 0) + (this.interAvalOther?.isVisible == true ? 1 : 0); }\n get isVisible() { return this.visibleCount > 0; }\n get completedCount() {\n return (this.interAval?.isVisible == true && this.interAval?.isCompleted == true ? 1 : 0)\n + (this.interAvalOther?.isVisible == true && this.interAvalOther?.isCompleted == true ? 1 : 0);\n }\n get isCompleted() { return this.completedCount > this.visibleCount; }\n\n interAval: ApplyComponent_screensettings_element;\n interAvalOther: ApplyComponent_screensettings_element;\n}\n","
\n
\n
\n
\n
\n You're applying for a {{application.jobRole}} position in {{application.country}} / {{application.city}} Location .\n \n \n \n
\n
\n
\n
Application Progress
\n
{{progressbarValue| number: '1.0-0'}}%
\n
\n \n
\n \n
\n
\n
\n
\n
\n
0\">\n \n
\n 1,'col-md-12 col-lg-12 col-sm-12': mainWizard == 0, 'col-md-9 col-lg-9 col-sm-12':mainWizard==1 || mainWizard==6}\">\n\n
0\">\n \n
Please provide all information requested. A partially filled application may not be considered for\n review.
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n

{{application.jobId}} - {{application.jobTitle}} {{application.jobRole}}

\n
\n \n
\n
\n
\n
\n \n

{{application.minYear}}-{{application.maxYear}} Years

\n
\n
\n
\n \n

{{application.postedDate | date:'dd MMMM YY'}}

\n
\n
\n
\n \n

{{application.city}}/{{application.country}}

\n
\n
\n
\n
\n
\n
\n
Job Description
\n
\n
\n N/A\n
\n
\n
\n
\n
\n
\n
Skills
\n
\n
Experience
\n
\n
\n
{{ skils.technology }}
\n
{{ skils.expYears || '0' }}.{{ skils.expMonth || '0' }} Yrs
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n \n

{{application.jobId}} - {{application.jobTitle}} {{application.jobRole}}

\n
\n \n
\n
\n
\n
\n \n

{{application.minYear}}-{{application.maxYear}} Years

\n
\n
\n
\n \n \n
\n
\n
\n \n

{{application.city}}/{{application.country}}

\n
\n
\n
\n
\n
\n
\n
Job Description
\n
\n
\n N/A\n
\n
\n
\n
\n
\n
\n
Skills
\n
\n
Experience
\n
\n
\n
{{skill.technology}}
\n
{{skill?.expInYears || '0'}}.{{skill?.expInMonths || '0'}} Yrs
\n
\n
\n
\n \n
\n
\n
\n
\n
\n","import { BrowserModule, Title } from '@angular/platform-browser';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ModalModule } from 'ngx-bootstrap/modal';\r\nimport { NgModule } from '@angular/core';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { SlickCarouselModule } from 'ngx-slick-carousel';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { NgbModalModule, NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgxSliderModule } from '@angular-slider/ngx-slider';\r\nimport { AngularFileUploaderModule } from 'angular-file-uploader';\r\nimport { DatePipe } from '@angular/common';\r\nimport { BsDatepickerModule } from 'ngx-bootstrap/datepicker';\r\nimport { TimepickerModule } from 'ngx-bootstrap/timepicker';\r\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\r\nimport { ProgressbarModule } from 'ngx-bootstrap/progressbar';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { ErrorInterceptor } from './core/interceptors/error.interceptor';\r\nimport { JwtInterceptor } from './core/interceptors/jwt.interceptor';\r\n\r\nimport { LayoutComponent } from './layout/layout.component';\r\nimport { HeaderComponent } from './layout/header/header.component';\r\nimport { FooterComponent } from './layout/footer/footer.component';\r\nimport { HomeComponent } from './view/home/home.component';\r\nimport { JobCategoryComponent } from './view/home/job-category/job-category.component';\r\nimport { HiringProcessComponent } from './view/home/hiring-process/hiring-process.component';\r\nimport { JobListingComponent } from './view/job-listing/job-listing.component';\r\nimport { WhyChooseComponent } from './view/home/why-choose/why-choose.component';\r\nimport { TestimonialsComponent } from './view/home/testimonials/testimonials.component';\r\nimport { FeaturedArticleComponent } from './view/home/featured-article/featured-article.component';\r\nimport { JobDetailsComponent } from './view/job-details/job-details.component';\r\nimport { JobApplicationComponent } from './view/job-application/job-application.component';\r\nimport { ConversationComponent } from './view/home/conversation/conversation.component';\r\nimport { ProfileComponent } from './view/profile/profile.component';\r\nimport { SimilarJobsComponent } from './view/profile/similar-jobs/similar-jobs.component';\r\nimport { WorkEligibilityComponent } from './view/job-application/questions/work-eligibility/work-eligibility.component';\r\nimport { PersonalInformationComponent } from './view/job-application/questions/personal-information/personal-information.component';\r\nimport { GenderComponent } from './view/job-application/questions/gender/gender.component';\r\nimport { MaritalStatusComponent } from './view/job-application/questions/marital-status/marital-status.component';\r\nimport { EmploymentDetailsComponent } from './view/job-application/questions/employment-details/employment-details.component';\r\nimport { CurrentLocationComponent } from './view/job-application/questions/current-location/current-location.component';\r\nimport { NoticePeriodComponent } from './view/job-application/questions/notice-period/notice-period.component';\r\nimport { ReasonForJobChangeComponent } from './view/job-application/questions/reason-for-job-change/reason-for-job-change.component';\r\nimport { ExperienceComponent } from './view/job-application/questions/experience/experience.component';\r\nimport { ContactDetaisComponent } from './view/job-application/questions/contact-detais/contact-detais.component';\r\nimport { CompensationBenefitsComponent } from './view/job-application/questions/compensation-benefits/compensation-benefits.component';\r\nimport { UploadPaySlipComponent } from './view/job-application/questions/upload-pay-slip/upload-pay-slip.component';\r\nimport { ExpectationComponent } from './view/job-application/questions/expectation/expectation.component';\r\nimport { RateSkillsComponent } from './view/job-application/questions/rate-skills/rate-skills.component';\r\nimport { UploadResumeComponent } from './view/job-application/questions/upload-resume/upload-resume.component';\r\nimport { ImpressYourFutureEmployerComponent } from './view/job-application/questions/impress-your-future-employer/impress-your-future-employer.component';\r\nimport { BgVerificationComponent } from './view/Background-Verification/bg-verification/bg-verification.component';\r\nimport { AddDocumentComponent } from './view/job-details/add-document/add-document.component';\r\n\r\nimport { CarouselComponent } from './shared/component/carousel/carousel.component';\r\nimport { CustomToastComponent } from './shared/component/custom-toast/custom-toast.component';\r\nimport { CarouselItemElementDirective } from './shared/component/carousel/carousel-item-element.directive';\r\nimport { CarouselItemDirective } from './shared/component/carousel/carousel-item.directive';\r\nimport { SafeHtmlPipe } from './shared/directive/safe-htlm.directive';\r\nimport { OnlyNumberDirective } from './shared/directive/allownumbers';\r\nimport { OnlyNumberWithDecimalsDirective } from './shared/directive/only-number-with-decimals.directive';\r\nimport { AllowedRegExpDirective } from './shared/directive/allowed-reg-exp-directive.directive';\r\nimport { ThankYouComponent } from './shared/component/thank-you/thank-you.component';\r\nimport {\r\n SocialLoginModule,\r\n SocialAuthServiceConfig,\r\n} from 'angularx-social-login';\r\nimport {\r\n GoogleLoginProvider,\r\n FacebookLoginProvider,\r\n} from 'angularx-social-login';\r\nimport { EmailConfirmComponent } from './login/email-confirm/email-confirm.component';\r\nimport { EditProfileDetailsComponent } from './view/profile/edit-profile-details/edit-profile-details.component';\r\nimport { DocumentSubmissionComponent } from './view/profile/document-submission/document-submission.component';\r\nimport { SalaryConfirmationComponent } from './view/profile/salary-confirmation/salary-confirmation.component';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { ForgotPasswordComponent } from './login/forgot-password/forgot-password.component';\r\nimport { ResetPasswordComponent } from './login/reset-password/reset-password.component';\r\nimport { ForbiddenComponent } from './errorpages/forbidden/forbidden.component';\r\nimport { SortByPipe } from './shared/directive/sort-by.pipe';\r\nimport { NotFoundComponent } from './errorpages/not-found/not-found.component';\r\nimport { NgxDocViewerModule } from 'ngx-doc-viewer';\r\nimport { PreviewDocComponent } from './view/job-details/preview-doc/preview-doc.component';\r\nimport { PersonalDetailsComponent } from './view/Background-Verification/personal-details/personal-details.component';\r\nimport { FamilyDetailsComponent } from './view/Background-Verification/family-details/family-details.component';\r\nimport { PresentAddressComponent } from './view/Background-Verification/present-address/present-address.component';\r\nimport { PermenantAddressComponent } from './view/Background-Verification/permenant-address/permenant-address.component';\r\nimport { EmployerDetailsComponent } from './view/Background-Verification/employer-details/employer-details.component';\r\nimport { EducationDetailsComponent } from './view/Background-Verification/education-details/education-details.component';\r\nimport { VideojsRecordComponent } from './view/job-application/questions/impress-your-future-employer/videojs-record/videojs-record.component';\r\nimport { MaxNumberDirective } from './shared/directive/max-number.directive';\r\nimport { LiveChatComponent } from './layout/live-chat/live-chat.component';\r\nimport { MinMaxDirective } from './shared/directive/min-max.directive';\r\nimport { JobListHomeComponent } from './view/home/job-list-home/job-list-home.component';\r\nimport { SearchJobComponent } from './view/home/search-job/search-job.component';\r\nimport { TagInputModule } from 'ngx-chips';\r\nimport { ArticleDetailsComponent } from './view/home/article-details/article-details.component';\r\nimport { BeforeLoginComponent } from './layout/before-login/before-login.component';\r\nimport { AnonymousSectionComponent } from './layout/anonymous-section/anonymous-section.component';\r\nimport { HeaderViewComponent } from './layout/anonymous-section/header-view/header-view.component';\r\nimport { SampleVideoComponent } from './view/job-application/questions/impress-your-future-employer/sample-video/sample-video.component';\r\nimport { EDUEducationDetailsComponent } from './view/job-application/questions/education-details/education-details.component';\r\nimport { CertificationComponent } from './view/job-application/questions/certification/certification.component';\r\nimport { QuestionFormComponent } from './view/job-application/questions/question-form/question-form.component';\r\nimport { CollapseModule } from 'ngx-bootstrap/collapse';\r\nimport { EditUserComponent } from './view/profile/edit-user/edit-user.component';\r\nimport { environment } from '../environments/environment';\r\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\r\n\r\nimport { TermServiceComponent } from './login/term-service/term-service.component';\r\nimport { PrivacyPolicyComponent } from './privacy-policy/privacy-policy.component';\r\nimport { CookiePolicyComponent } from './cookie-policy/cookie-policy.component';\r\nimport { CandidateUnsubscribeComponent } from './view/candidate-unsubscribe/candidate-unsubscribe.component';\r\nimport { TermsAndServicesComponent } from './login/terms-and-services/terms-and-services.component';\r\nimport { JobApplyComponent } from './view/job-apply/job-apply.component';\r\nimport { JobApplyMenuComponent } from './view/job-apply/job-apply-menu/job-apply-menu.component';\r\nimport { JobApplyPersonalDetailsComponent } from './view/job-apply/job-apply-personal-details/job-apply-personal-details.component';\r\nimport { CurrentSalaryExpectationsComponent } from './view/job-apply/current-salary-expectations/current-salary-expectations.component';\r\nimport { JobApplyNoticePeriodComponent } from './view/job-apply/job-apply-notice-period/job-apply-notice-period.component';\r\nimport { JobKnowledgeComponent } from './view/job-apply/job-knowledge/job-knowledge.component';\r\nimport { JobApplyResumeComponent } from './view/job-apply/job-apply-resume/job-apply-resume.component';\r\nimport { JobApplyInterviewAvailabilityComponent } from './view/job-apply/job-apply-interview-availability/job-apply-interview-availability.component';\r\nimport { VideoProfileComponent } from './view/job-apply/video-profile/video-profile.component';\r\nimport { JobApplyAboutCompanyComponent } from './view/job-apply/about-company/about-company.component';\r\n\r\n// const cookieConfig: NgcCookieConsentConfig = {\r\n// cookie: {\r\n// domain: 'http://qapihireapp1o.paraminfo.online/',\r\n// },\r\n// position: 'bottom-right',\r\n// theme: 'edgeless',\r\n// revokable: false,\r\n// palette: {\r\n// popup: {\r\n// background: '#7f7bca',\r\n// text: '#fff',\r\n// link: '#fff',\r\n// },\r\n// button: {\r\n// background: '#5a5879',\r\n// text: '#fff',\r\n// border: 'transparent',\r\n// },\r\n// },\r\n// type: 'opt-in',\r\n// content: {\r\n// message:\r\n// 'This website uses cookies to ensure you get the best experience on our website.',\r\n// dismiss: 'Accept',\r\n// deny: 'Decline',\r\n// link: 'Learn more',\r\n// href: 'https://qapihirecp1o.paraminfo.online',\r\n// policy: 'Cookie Policy',\r\n// header: 'Cookies used on the website!',\r\n// allow: 'Allow cookies',\r\n// },\r\n// };\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n LayoutComponent,\r\n HeaderComponent,\r\n FooterComponent,\r\n HomeComponent,\r\n JobCategoryComponent,\r\n HiringProcessComponent,\r\n JobListingComponent,\r\n WhyChooseComponent,\r\n TestimonialsComponent,\r\n CarouselComponent,\r\n CarouselItemDirective,\r\n CarouselItemElementDirective,\r\n FeaturedArticleComponent,\r\n LoginComponent,\r\n JobApplicationComponent,\r\n JobDetailsComponent,\r\n SafeHtmlPipe,\r\n ConversationComponent,\r\n ProfileComponent,\r\n SimilarJobsComponent,\r\n WorkEligibilityComponent,\r\n PersonalInformationComponent,\r\n GenderComponent,\r\n MaritalStatusComponent,\r\n EmploymentDetailsComponent,\r\n CurrentLocationComponent,\r\n NoticePeriodComponent,\r\n ReasonForJobChangeComponent,\r\n ExperienceComponent,\r\n ContactDetaisComponent,\r\n CompensationBenefitsComponent,\r\n UploadPaySlipComponent,\r\n ExpectationComponent,\r\n RateSkillsComponent,\r\n UploadResumeComponent,\r\n ImpressYourFutureEmployerComponent,\r\n ThankYouComponent,\r\n BgVerificationComponent,\r\n AddDocumentComponent,\r\n EmailConfirmComponent,\r\n EditProfileDetailsComponent,\r\n OnlyNumberDirective,\r\n OnlyNumberWithDecimalsDirective,\r\n AllowedRegExpDirective,\r\n DocumentSubmissionComponent,\r\n SalaryConfirmationComponent,\r\n ForgotPasswordComponent,\r\n ResetPasswordComponent,\r\n ForbiddenComponent,\r\n SortByPipe,\r\n NotFoundComponent,\r\n PreviewDocComponent,\r\n PersonalDetailsComponent,\r\n FamilyDetailsComponent,\r\n PresentAddressComponent,\r\n PermenantAddressComponent,\r\n EmployerDetailsComponent,\r\n EducationDetailsComponent,\r\n VideojsRecordComponent,\r\n MaxNumberDirective,\r\n LiveChatComponent,\r\n MinMaxDirective,\r\n JobListHomeComponent,\r\n SearchJobComponent,\r\n ArticleDetailsComponent,\r\n BeforeLoginComponent,\r\n AnonymousSectionComponent,\r\n HeaderViewComponent,\r\n SampleVideoComponent,\r\n EDUEducationDetailsComponent,\r\n CertificationComponent,\r\n QuestionFormComponent,\r\n EditUserComponent,\r\n TermServiceComponent,\r\n PrivacyPolicyComponent,\r\n CookiePolicyComponent,\r\n CandidateUnsubscribeComponent,\r\n TermsAndServicesComponent,\r\n JobApplyComponent,\r\n JobApplyMenuComponent,\r\n JobApplyPersonalDetailsComponent,\r\n CurrentSalaryExpectationsComponent,\r\n JobApplyNoticePeriodComponent,\r\n JobKnowledgeComponent,\r\n JobApplyResumeComponent,\r\n JobApplyInterviewAvailabilityComponent,\r\n VideoProfileComponent,\r\n JobApplyAboutCompanyComponent\r\n ],\r\n\r\n imports: [\r\n BrowserModule,\r\n TagInputModule,\r\n BsDatepickerModule.forRoot(),\r\n TimepickerModule.forRoot(),\r\n AppRoutingModule,\r\n NgbModule,\r\n CommonModule,\r\n HttpClientModule,\r\n BrowserAnimationsModule,\r\n FormsModule,\r\n SlickCarouselModule,\r\n NgxSliderModule,\r\n AngularFileUploaderModule,\r\n ReactiveFormsModule,\r\n SocialLoginModule,\r\n NgxDocViewerModule,\r\n BsDropdownModule.forRoot(),\r\n CollapseModule.forRoot(),\r\n NgSelectModule,\r\n \r\n ToastrModule\r\n .forRoot\r\n //{\r\n // timeOut: 3000,\r\n // positionClass: 'toast-top-right',\r\n // preventDuplicates: false,\r\n // disableTimeOut: false,\r\n // closeButton: true,\r\n // toastComponent: CustomToastComponent\r\n //}\r\n (),\r\n ModalModule.forRoot(),\r\n ProgressbarModule.forRoot(),\r\n TooltipModule.forRoot(),\r\n AngularFileUploaderModule,\r\n ],\r\n providers: [\r\n DatePipe,\r\n { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true },\r\n {\r\n provide: 'SocialAuthServiceConfig',\r\n useValue: {\r\n autoLogin: false,\r\n providers: [\r\n {\r\n id: GoogleLoginProvider.PROVIDER_ID,\r\n provider: new GoogleLoginProvider(\r\n environment.google.login.ClientId ??\r\n //'842387014941-5chsear2493278mbi053405a2cra5jj1.apps.googleusercontent.com'\r\n '433136606656-0t5vbq82i88hjjg7v8orri6dccfgqeec.apps.googleusercontent.com'\r\n ),\r\n },\r\n {\r\n id: FacebookLoginProvider.PROVIDER_ID,\r\n //provider: new FacebookLoginProvider('308591583913181'),\r\n provider: new FacebookLoginProvider(environment.facebook.login.ClientId ??'659921534971073'),\r\n }\r\n\r\n ],\r\n } as SocialAuthServiceConfig,\r\n },\r\n Title,\r\n ],\r\n\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule { }\r\n\r\n// providers: [{ provide: LocationStrategy, useClass: HashLocationStrategy }],\r\n","export * from './common-api.service'; \r\nexport * from './slider-config.service';\r\nexport * from './home-page.service';\r\n","\r\nvar preUrl = 'https://hireapi.paraminfo.com'\r\nexport const environment = {\r\n production: true,\r\n serverPath: preUrl,\r\n baseUrl: preUrl + '/api/v1',\r\n appUrl: 'https://hirecp.paraminfo.com', \r\n onlineStatusInterval: 10000,\r\n websiteUrl: 'https://paraminfo.com/careers',\r\n env_name: 'production',\r\n google: {\r\n login: {\r\n ClientId: \"433136606656-0t5vbq82i88hjjg7v8orri6dccfgqeec.apps.googleusercontent.com\"\r\n },\r\n picker: {\r\n // The Browser API key obtained from the Google API Console. - API key\r\n DeveloperKey: 'AIzaSyCITcpljUY9xOAaUy31-h_L8GR2NjFmoc8',\r\n ClientId: \"433136606656-0t5vbq82i88hjjg7v8orri6dccfgqeec.apps.googleusercontent.com\",\r\n // See \"Project number\" under \"IAM & Admin\" > \"Settings\"\r\n AppId: \"433136606656\",\r\n // Scope to use to access user's Drive items.\r\n Scope: 'https://www.googleapis.com/auth/drive.file'\r\n }\r\n },\r\n facebook: {\r\n login: {\r\n ClientId: \"541601724901353\"\r\n }\r\n }\r\n};\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-privacy-policy',\n templateUrl: './privacy-policy.component.html',\n styleUrls: ['./privacy-policy.component.scss']\n})\nexport class PrivacyPolicyComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n\n
\n
\n
\n \"Logo\"\n
\n
Recruitment Privacy Notice
\n
\n

21/06/2021

\n

\n\n Customer Name, Address, Registrations Number etc., together with any trading name or names that may be more\n familiar to the data subject.\n

\n

\n Param Info Computer Consultancy and its affiliates and subsidiaries respect the privacy of its clients and\n understand how important it is to them. The subsidiaries and affiliates of Param Info may process your\n personal\n data on our behalf as data controllers. We respect your privacy and protect your personal data, which is any\n information that identifies you as an individual.\n\n

\n This Recruitment Privacy Notice (\"Privacy Notice\") explains how Param Info uses and protects your\n personal\n data. \n

\n This Privacy Notice only applies to the personal data of job applicants, potential candidates for employment\n or\n partnership, and those who participate in our recruiting programs and events.\n\n Param Info receives this information directly from applicants through the online application process and\n subsequent follow-up interactions, as well as through alternate communication channels.\n\n The terms of this Privacy Notice do not apply to our employees, contractors, or clients, nor to other personal\n data that Param Info collects for other purposes. If this Privacy Notice conflicts with the requirements of\n applicable law, your personal data will be processed in accordance with the applicable law.\n

\n As a result of providing us with your data, you acknowledge these commitments: \n\n
    \n
  • By reading and understanding this Privacy Notice, you agree that your personal data will be utilized in\n accordance with this notice.\n
  • \n
  • \n For the purposes and in the manner described in this Privacy Notice, your personal data may be transferred\n and\n processed worldwide, including in countries that may not offer the same level of data protection as your\n home\n country.\n
  • \n
  • \n The information requested by us is not required, but your failure to do so may prevent you from qualifying\n for\n the position for which you have applied.\n
  • \n
  • \n The information you have provided is true and accurate to the best of your knowledge and belief, and you\n have\n not knowingly omitted any information of a negative nature. Any misleading information may cause you to be\n ineligible for employment.\n
  • \n
  • \n Param Info does not incorporate this Privacy Notice into any employment contract offered to candidates. (To\n confirm)\n
  • \n\n
\n
Collecting personal information.
\n

\n Your personal data will be collected and processed in accordance with the requirements of the country where\n you\n will be applying for the job, not your own place of residence.
\n\n In most cases we collect personal data directly from the applicant when they apply for a role with us, such as\n their name, address, contact information, photographs, work and education history, achievements, and identity\n documents.
\n\n When candidate apply for more than one location or if the role that he applied for is available in more than\n one\n country, the types of personal data we collect from you and how we process it are determined by the laws in\n each\n of those countries.
\n\n Upon receiving an offer from us, we may conduct a background check and, if legal, may also gather information\n on\n criminal offenses and proceedings against the applicant.
\n\n Our company also collects similar personal information from third parties e.g., your references, previous\n employers, Param Info employees who have interviewed you, as well as authorized employment background check\n providers.
\n\n Additionally, we may collect information about you online if you have chosen to make this information publicly\n available. To illustrate, we may obtain your information from professional social media sites (such as\n LinkedIn)\n and contact you about suitable positions.
\n\n\n If permitted by applicable laws (e.g., Equal Opportunity Act of 2010), we may collect sensitive personal data\n about a candidate. It assists us in creating an inclusive and diverse work environment. We may also collect\n it,\n if a candidate voluntarily divulges sensitive personal information to us during the recruiting process.
\n

\n
Use of your personal data
\n The following are reasons justifying the use of your personal data: \n
    \n
  • \n Identifying and evaluating candidates for potential employment and future positions\n
  • \n
  • \n Maintaining records regarding recruitment and hiring\n
  • \n
  • \n Compliance with legal requirements\n
  • \n
  • \n Considering the information, we receive from Candidates and the information we receive from third parties.\n
  • \n
  • \n Diversifying our programs and practices for inclusion and diversity.\n
  • \n
  • \n In accordance with law, criminal history background checks are conducted upon offer of employment.\n
  • \n
  • \n The protection of our legal rights within the legal framework\n
  • \n
  • \n In cases, where the safety or health of an individual is at risk.\n
  • \n
\n

Furthermore, the use personal data may also happen for Param Info analytics purposes, including aggregated\n and\n pseudonymized information, to enhance our hiring and recruitment practices and improve our ability to recruit\n qualified candidates.

\n Processing personal data based on legal authority.\n

For the purposes mentioned above, we process your personal data based on the following legal grounds: (to an\n extent)

\n
    \n
  • \n We review your application out of a legitimate business interest in managing our relationship with you,\n recruiting the most qualified employees, and evaluating and maintaining the effectiveness of our recruiting\n process more generally.\n
  • \n
  • \n To our performance of contractual and precontractual measures related to our potential employment\n relationship\n with you.\n
  • \n
  • \n To our compliance with applicable law about personal data necessary to satisfy our legal or regulatory\n obligations depends in part on our compliance.\n
  • \n
  • \n Depending on your consent, depending on the extent to which applicable law permits, in our optional\n recruiting\n programs and if we collect sensitive personal data from you.\n
  • \n
\n
Background screening
\n

We may conduct a background check on you or have a third party conduct one for us if you are offered a\n position\n with us. In accordance with local laws and within the context of the role that you are being offered,\n background\n checks will only be performed when legally permitted.

\n

Generally, a background check involves criminal background data only if it is allowed by the applicable\n legislation.

\n

Background checks are legal precontractual measure we perform in order to establish a working relationship\n with\n an employee.

\n

Your application may require background screening by a third-party background screening provider to obtain\n your\n permission to release your personal information. You will also receive details of the process and what will be\n involved with your personal information.

\n International data transfers and recipients\n\n

Param Info may open your personal data to recruiters and interviewers within the country in which the\n position\n you are applying for is located, in addition to recruiters and interviewers in other countries within the\n organization. Administrative and IT personnel at Param Info may have limited access to your personal data as\n needed to perform their jobs.

\n

There may be fewer rights under local law in some countries than you do in your own country, but we have put\n in\n place legal mechanisms designed to secure the protection of your personal information, which may include\n transfer to countries outside of your own country of residence if that is the case.

\n

We use our proprietary recruiting software system. (to confirm) (do own a recruiting software?

\n

Additionally, we may share your personal data with other third-party service providers who may assist us in\n identifying and recruiting talent, administering and evaluating pre-employment screening and testing, and\n improving our recruiting practices.

\n

In accordance with applicable law, we have protocols in place to help ensure that any processing by third\n party\n service providers is compliant with this Privacy Notice and protects the confidentiality, availability, and\n integrity of your personal data.

\n

We implement additional legal mechanisms where required by law to help ensure adequate protection of your\n personal information in a third country.

\n

If you would like more information about these legal mechanisms, which may include the EU’s Standard\n Contractual Clauses, please contact us at the address provided at the end of this Privacy Notice. (To confirm\n if\n it's required to add – can omit this as its not mandatary) can just provide email address.

\n\n
Sorting candidates automatically
\n

We may use algorithms and data analytics in certain jurisdictions to help us analyze the large amounts of\n data\n we receive from candidates and applicants. In this way, we can prioritize application reviews and sort\n candidates based on characteristics that suggest their strengths and capabilities relevant to the role at\n hand.\n We use these algorithms to analyze the candidate's application data and compare it with our historical data on\n successful and unsuccessful candidates.

\n

The automated results are always considered alongside, and not in place of, human judgement. Every candidate\n is\n evaluated according to his or her own merits.

\n

Some roles may require specific skills or qualifications (e.g., fluency in a certain language, certifications\n or degrees, or years of experience in a similar role). Non-compliant applications may be rejected\n automatically.\n (To confirm, we have this facility)

\n Managing Data (Preserving/ Keeping records/ Data storage/ Data Retention) \n\n

We will include any relevant personal data collected during your pre-employment period in your employee\n records, which will be retained according to specific country requirements and the Param Info privacy notice\n that we issue to employees on day one.

\n

Even if you are not employed by us, we may use and retain your personal information for a time period (which\n may vary depending on the country) for system administration, to assess you for potential roles in the future,\n and to conduct original research. We retain minimal information about you to record your recruitment activity\n with us.

\n

You might be considered for future employment opportunities if we stay in contact with you. In such an event,\n we\n will seek your consent to include you in one of our recruiting programs that provides you ways to further\n learn\n about and stay in touch Param Info, either prior to or after you formally apply for a job opportunity. It is\n entirely optional to participate in these recruiting programs.

\n

You may withdraw your consent at any time for a recruiting retention program by contacting us at info@paraminfo.com.

\n
Security
\n

To protect personal data, we follow generally accepted standards of technical and operational security. We\n restrict access to personal data to authorized employees of Param Info and to our third-party service\n providers,\n and these employees and third-party service providers have a duty to protect this information. However, we\n cannot\n guarantee that unauthorized individuals will not obtain access to your personal data despite these\n precautions.\n

\n
You are entitled to the following rights.
\n
    \n
  • \n

    The following rights may be available to you in accordance with applicable law:

    \n
  • \n
  • \n

    The right to amend, supplement, or correct any incomplete, inaccurate, out-of-date, or misleading\n information\n held about you.

    \n
  • \n
  • \n

    a right to request erasure of your personal data. (Not to add) (limited data can be erased)

    \n
  • \n
  • \n

    You have the right to request that we stop processing your personal data or restrict the processing of\n your\n personal data. (To 3rd parties)

    \n
  • \n
  • \n

    As far as our processing relies on your consent as a legal basis for processing your data, you can\n withdraw\n your\n consent.

    \n
  • \n
  • \n

    This right may not apply if there are other legal justifications to continue processing or we need to\n retain\n certain personal data where required or permitted under applicable law; and/or

    \n
  • \n
  • \n

    However, you may not be able to exercise this right if there are other legal grounds for continuing to\n process\n your data or if we are required or permitted by applicable law to keep certain data.

    \n
  • \n
\n

We encourage you to contact us at info@paraminfo.com if you wish to review, correct, or delete the personal\n information we have collected about you or to assert a right regarding your personal information.

\n
Toolkit social media
\n

During the application process, you can provide us with relevant personal data you have on third-party\n websites\n (such as LinkedIn, Google Drive, and Dropbox).

\n

By incorporating your personal data from third-party websites, you agree to this Privacy Notice. (1st point\n can\n be added 2nd point can be removed)

\n
Tracking technologies and cookies
\n

We may use first party and third-party cookies, web beacons, pixels, clear gifs, and other similar\n technologies\n (collectively “Cookies and Other Tracking Technologies”) to identify you and your interests, to remember your\n preferences, and to track your use of our websites.

\n

(In response to above para –reframed as below)

\n

Cookies, web beacons, pixels, clear gifs, and other similar technologies (collectively, \"Cookies and Other\n Tracking Technologies\") help us identify you and your interests, to remember your preferences, and to track\n your\n use of our websites.

\n

We use Cookies and Other Tracking Technologies to restrict access to certain content on our websites, to\n protect the websites, and to respond to requests you make. (Should add)

\n For candidates from other countries \n

Availability of the Recruitment Privacy Notice in Other Languages:

\n
    \n
  • \n Arabic - Can be made available using google translator and we can add a clause that it may not be 100\n percent\n accurate.\n
  • \n
  • \n English\n
  • \n
\n
CONTACT US
\n

If you have any questions about this Privacy Notice or if you would like to communicate with any of our Data\n Protection Officers or the Data Privacy Team, please contact us at:

\n

Param Info info@ParamInfo.com

\n

Param Info reserves the right to modify this Privacy Notice. For the latest information, please visit this\n page\n regularly. As soon as changes occur to our Privacy policy, we will post them here.

\n
\n \n
\n
\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-hiring-process',\n templateUrl: './hiring-process.component.html',\n styleUrls: ['./hiring-process.component.scss']\n})\nexport class HiringProcessComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","
\n
\n
\n
\n

Recommended jobs from Top Employers now available for you!

\n Submit your profile \n
\n
\n
Hiring Process
\n

\n Learn about our interview process\n

\n

\n We are excited to get to know you and help you get to know us through\n our interview process.\n

\n Learn More \n
\n
\n
\n
\n","\r\n\r\nimport { Component, EventEmitter, Input, OnInit, Output, ElementRef } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\nimport { CommonApiService } from '../../../../shared/services';\r\n\r\n@Component({\r\n selector: 'app-compensation-benefits',\r\n templateUrl: './compensation-benefits.component.html',\r\n styleUrls: ['./compensation-benefits.component.scss']\r\n})\r\nexport class CompensationBenefitsComponent implements OnInit {\r\n\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Input() fildOfCandidateDetails: any;\r\n @Output() valueChange = new EventEmitter();\r\n validationFlag: boolean = false;\r\n constructor(public JobApplication: JobApplicationComponent, private commonApiService: CommonApiService, private el: ElementRef) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {}\r\n checkOpeningPREF() {\r\n if (this.requiredOrNotFlag == 1) {\r\n this.validationFlag = true;\r\n\r\n if (this.JobApplication.candidateProfileDetails.cpCurrency == null || this.JobApplication.candidateProfileDetails.cpCurrency == \"\") {\r\n\r\n return false\r\n }\r\n if (this.JobApplication.candidateProfileDetails.cpGrossPayPerAnnum == null || this.JobApplication.candidateProfileDetails.cpGrossPayPerAnnum == \"\") {\r\n const invalidControl = this.el.nativeElement.querySelector('.custome-invalid2');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false\r\n }\r\n if (this.JobApplication.candidateProfileDetails.cpVariablePayPerAnnum == null || this.JobApplication.candidateProfileDetails.cpVariablePayPerAnnum == \"\") {\r\n this.JobApplication.candidateProfileDetails.cpVariablePayPerAnnum = 0;\r\n }\r\n if (this.JobApplication.candidateProfileDetails.cpDeductionsPerAnnum == null || this.JobApplication.candidateProfileDetails.cpDeductionsPerAnnum == \"\") {\r\n this.JobApplication.candidateProfileDetails.cpDeductionsPerAnnum = 0;\r\n }\r\n this.validationFlag = true;\r\n if (this.JobApplication.candidateProfileDetails.cpTakeHomeSalPerMonth == null || this.JobApplication.candidateProfileDetails.cpTakeHomeSalPerMonth == \"\") {\r\n const invalidControl = this.el.nativeElement.querySelector('.custome-invalid3');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false\r\n }\r\n this.validationFlag = true;\r\n if (this.JobApplication.candidateProfileDetails.epTakeHomeSalPerMonth == null || this.JobApplication.candidateProfileDetails.epTakeHomeSalPerMonth == \"\") {\r\n const invalidControl = this.el.nativeElement.querySelector('.custome-invalid4');\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n }\r\n return false\r\n }\r\n\r\n }\r\n\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n\r\n }\r\n save() {\r\n\r\n }\r\n\r\n requiredOrNotFlag: number = 1;\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\r\n }\r\n\r\n\r\n}\r\n\r\n\r\n\r\n","
Compensation & Benefits
\r\n
\r\n
\r\n
\r\n Salary Information\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Currency
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{ c.rmvalue }}\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Annual Salary
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Variable Pay
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Deductions
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
Net Monthly Take Home Salary
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Expected Take Home Salary in\r\n \r\n {{ application?.currencyName || '-' }}\r\n per month\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Your current monthly salary in\r\n \r\n {{ JobApplication.candidateCountryName }}\r\n is\r\n

\r\n \r\n {{ JobApplication.candidateProfileDetails?.cpCurrency }}\r\n {{ ( JobApplication.candidateLocationRate | number:'.0-0' ) || '-' }}\r\n \r\n
\r\n
\r\n

\r\n Is equivalent in\r\n {{ JobApplication.application?.country }}\r\n monthly is\r\n

\r\n \r\n {{ JobApplication.application?.currencyName }}\r\n {{ (JobApplication.clientLocationRate | number:'.0-0' ) || 0 }}\r\n \r\n
\r\n
\r\n

\r\n Your monthly expected salary in\r\n \r\n {{ JobApplication.application?.country }}\r\n \r\n

\r\n \r\n {{ JobApplication.application?.currencyName }}\r\n {{ (JobApplication.candidateProfileDetails?.epTakeHomeSalPerMonth | number:'.0-0' ) || '0' }}\r\n \r\n
\r\n
\r\n Or\r\n {{ JobApplication.equivalentToInYear | number:'.0-0' }}\r\n {{ JobApplication.application?.currencyName }}\r\n
\r\n
\r\n

\r\n Which is {{ JobApplication.persentage > 0 ? 'more than' : '' }}\r\n \r\n {{ JobApplication.persentage }}%\r\n than your current salary\r\n

\r\n
\r\n
\r\n
\r\n

\r\n 1 {{ JobApplication.application?.currencyName }}={{ JobApplication.currentcConvertionRateTwoDecimal }}\r\n {{ JobApplication.candidateProfileDetails?.cpCurrency || 'N/A'}}\r\n

\r\n
Avg. conversion rate : {{ JobApplication.todaysDate | date:'dd MMM YYYY'}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Directive, Input, ElementRef, HostListener } from '@angular/core';\n\n@Directive({\n selector: '[appOnlyNumberWithDecimals]'\n})\nexport class OnlyNumberWithDecimalsDirective {\n\n @Input() allowDecimals: boolean = true;\n @Input() allowSign: boolean = false;\n @Input() decimalSeparator: string = '.';\n\n previousValue: string = '';\n\n // --------------------------------------\n // Regular expressions\n integerUnsigned: string = '^[0-9]*$';\n integerSigned: string = '^-?[0-9]+$';\n decimalUnsigned: string = '^[0-9]+(.[0-9]+)?$';\n decimalSigned: string = '^-?[0-9]+(.[0-9]+)?$';\n\n /**\n * Class constructor\n * @param hostElement\n */\n constructor(private hostElement: ElementRef) { }\n\n /**\n * Event handler for host's change event\n * @param e\n */\n @HostListener('change', ['$event']) onChange(e) {\n\n this.validateValue(this.hostElement.nativeElement.value);\n }\n\n /**\n * Event handler for host's paste event\n * @param e\n */\n @HostListener('paste', ['$event']) onPaste(e) {\n\n // get and validate data from clipboard\n let value = e.clipboardData.getData('text/plain');\n this.validateValue(value);\n e.preventDefault();\n }\n\n /**\n * Event handler for host's keydown event\n * @param event\n */\n @HostListener('keydown', ['$event']) onKeyDown(e: KeyboardEvent) {\n\n let cursorPosition: number = e.target['selectionStart'];\n let originalValue: string = e.target['value'];\n let key: string = this.getName(e);\n let controlOrCommand = (e.ctrlKey === true || e.metaKey === true);\n let signExists = originalValue.includes('-');\n let separatorExists = originalValue.includes(this.decimalSeparator);\n\n // allowed keys apart from numeric characters\n let allowedKeys = [\n 'Backspace', 'ArrowLeft', 'ArrowRight', 'Escape', 'Tab'\n ];\n\n // when decimals are allowed, add\n // decimal separator to allowed codes when\n // its position is not close to the the sign (-. and .-)\n let separatorIsCloseToSign = (signExists && cursorPosition <= 1);\n if (this.allowDecimals && !separatorIsCloseToSign && !separatorExists) {\n\n if (this.decimalSeparator == '.')\n allowedKeys.push('.');\n else\n allowedKeys.push(',');\n }\n\n // when minus sign is allowed, add its\n // key to allowed key only when the\n // cursor is in the first position, and\n // first character is different from\n // decimal separator\n let firstCharacterIsSeparator = (originalValue.charAt(0) != this.decimalSeparator);\n if (this.allowSign && !signExists &&\n firstCharacterIsSeparator && cursorPosition == 0) {\n\n allowedKeys.push('-');\n }\n\n // allow some non-numeric characters\n if (allowedKeys.indexOf(key) != -1 ||\n // Allow: Ctrl+A and Command+A\n (key == 'a' && controlOrCommand) ||\n // Allow: Ctrl+C and Command+C\n (key == 'c' && controlOrCommand) ||\n // Allow: Ctrl+V and Command+V\n (key == 'v' && controlOrCommand) ||\n // Allow: Ctrl+X and Command+X\n (key == 'x' && controlOrCommand)) {\n // let it happen, don't do anything\n return;\n }\n\n // save value before keydown event\n this.previousValue = originalValue;\n\n // allow number characters only\n let isNumber = (new RegExp(this.integerUnsigned)).test(key);\n if (isNumber) return; else e.preventDefault();\n }\n\n /**\n * Test whether value is a valid number or not\n * @param value\n */\n validateValue(value: string): void {\n\n // choose the appropiate regular expression\n let regex: string;\n if (!this.allowDecimals && !this.allowSign) regex = this.integerUnsigned;\n if (!this.allowDecimals && this.allowSign) regex = this.integerSigned;\n if (this.allowDecimals && !this.allowSign) regex = this.decimalUnsigned;\n if (this.allowDecimals && this.allowSign) regex = this.decimalSigned;\n\n // when a numbers begins with a decimal separator,\n // fix it adding a zero in the beginning\n let firstCharacter = value.charAt(0);\n if (firstCharacter == this.decimalSeparator)\n value = 0 + value;\n\n // when a numbers ends with a decimal separator,\n // fix it adding a zero in the end\n let lastCharacter = value.charAt(value.length - 1);\n if (lastCharacter == this.decimalSeparator)\n value = value + 0;\n\n // test number with regular expression, when\n // number is invalid, replace it with a zero\n let valid: boolean = (new RegExp(regex)).test(value);\n this.hostElement.nativeElement['value'] = valid ? value : 0;\n }\n\n /**\n * Get key's name\n * @param e\n */\n getName(e): string {\n\n if (e.key) {\n\n return e.key;\n\n } else {\n\n // for old browsers\n if (e.keyCode && String.fromCharCode) {\n\n switch (e.keyCode) {\n case 8: return 'Backspace';\n case 9: return 'Tab';\n case 27: return 'Escape';\n case 37: return 'ArrowLeft';\n case 39: return 'ArrowRight';\n case 188: return ',';\n case 190: return '.';\n case 109: return '-'; // minus in numbpad\n case 173: return '-'; // minus in alphabet keyboard in firefox\n case 189: return '-'; // minus in alphabet keyboard in chrome\n default: return String.fromCharCode(e.keyCode);\n }\n }\n }\n }\n}\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { CommonApiService } from '../../../shared/services';\r\nimport { BVGVerificationObject } from '../bgverification';\r\nimport { BGVModelData } from '../../../core/models/bgverificationModel';\r\nimport { forkJoin } from 'rxjs';\r\n@Component({\r\n selector: 'app-bg-verification',\r\n templateUrl: './bg-verification.component.html',\r\n styleUrls: ['./bg-verification.component.scss']\r\n})\r\nexport class BgVerificationComponent implements OnInit {\r\n // currentPage: any;\r\n jobid: number;\r\n profileid: number;\r\n candidateBGVerificationData: BGVModelData;\r\n CountryList: any = [];\r\n genderList: any = [];\r\n maritalStatusList: any = [];\r\n constructor(private apiService: CommonApiService, private route: ActivatedRoute, private router: Router, private toastr: ToastrService, private commonApiService: CommonApiService, public bvgVerificationObject: BVGVerificationObject) {\r\n //this.bvgVerificationObject.currentBVGObj.subscribe(obj => this.candidateBGVerificationData = obj);\r\n this.bvgVerificationObject.Countrys.subscribe(obj => this.CountryList = obj);\r\n console.log(this.CountryList)\r\n if (this.CountryList == null) {\r\n this.getCountries();\r\n }\r\n\r\n let genderService = this.commonApiService.getgenderList()\r\n let maritalService = this.commonApiService.getMaritalStatusList();\r\n forkJoin([genderService, maritalService])\r\n .subscribe(\r\n ([gender, maritalStatus]: any) => {\r\n this.genderList = gender?.result;\r\n this.maritalStatusList = maritalStatus.result;\r\n },\r\n error => {\r\n this.toastr.error(error.error.meta.error.errorMessage);\r\n }\r\n );\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.route.params.subscribe((params) => {\r\n console.log(params);\r\n this.jobid = parseInt(params['jobid']);\r\n this.profileid = parseInt(params['profileid']);\r\n if (this.jobid != undefined && this.profileid != undefined) {\r\n localStorage.setItem(\"_jobid\", params['jobid'])\r\n localStorage.setItem(\"_profileid\", params['profileid'])\r\n } else if (this.jobid == undefined && this.profileid == undefined) {\r\n this.jobid = parseInt(localStorage.getItem(\"_jobid\"));\r\n this.profileid = parseInt(localStorage.getItem(\"_profileid\"));\r\n }\r\n if (params != undefined) {\r\n this.getBGVericationData(this.jobid, this.profileid)\r\n }\r\n\r\n this.getCourcesListList();\r\n this.getQualificationList();\r\n });\r\n }\r\n getBGVericationData(jobid, profileid) {\r\n this.commonApiService.getBGVericationData(profileid, jobid).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.candidateBGVerificationData = data.result;\r\n this.candidateBGVerificationData.homePhone_code = \"\";\r\n this.candidateBGVerificationData.emerContactNo_code = \"\";\r\n if (this.candidateBGVerificationData.permAddrContactNo == \"undefined null\" || this.candidateBGVerificationData.permAddrContactNo == \"null\" || this.candidateBGVerificationData.permAddrContactNo == \"undefined\" || this.candidateBGVerificationData.permAddrContactNo == undefined) {\r\n this.candidateBGVerificationData.permAddrContactNo = \"\";\r\n }\r\n if (!this.candidateBGVerificationData.expeInMonths)\r\n this.candidateBGVerificationData.expeInMonths = 0;\r\n\r\n console.log(this.candidateBGVerificationData.expeInMonths);\r\n\r\n this.bvgVerificationObject.SetBVGObject(this.candidateBGVerificationData);\r\n }\r\n }\r\n }, error => {\r\n\r\n })\r\n }\r\n\r\n getCountries() {\r\n this.apiService.getCountries().subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CountryList = data.result;\r\n if (this.CountryList != null) {\r\n this.CountryList.forEach((item) => {\r\n item.phonecode = \"+\" + item.phonecode\r\n })\r\n this.bvgVerificationObject.SetCountryList(this.CountryList);\r\n }\r\n }\r\n }\r\n }, error => {\r\n\r\n })\r\n }\r\n CourseLists: any = [];\r\n getCourcesListList() {\r\n // course\r\n this.apiService.getRefDate(189).subscribe((resp: any) => {\r\n if (resp.status) {\r\n this.CourseLists = resp.result;\r\n\r\n } else { }\r\n }, error => {\r\n })\r\n }\r\n qualificationLists: any = [];\r\n getQualificationList() {\r\n this.apiService.getRefDate(92).subscribe((resp: any) => {\r\n if (resp.status) {\r\n this.qualificationLists = resp.result;\r\n //this.getCourcesListList();\r\n } else { }\r\n }, error => {\r\n })\r\n }\r\n\r\n}\r\n"," \n \n","import { Injectable } from '@angular/core';\nimport * as _moment from \"moment\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DatetimeConverterService {\n\n constructor() { }\n\n\n getLocalDate(utsDate: string, format: string = null): string {\n let localTime = _moment.utc(utsDate, \"YYYY-MM-DDThh:mm:ss\").toDate();\n return _moment(localTime).format(format == null ? \"DD-MM-YYYY\" : format);\n }\n\n getDateTimeAgo(date: string): string {\n return _moment(date).fromNow()\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\n import { ToastrService } from 'ngx-toastr';\n\n@Component({\n selector: 'app-preview-doc',\n templateUrl: './preview-doc.component.html',\n styleUrls: ['./preview-doc.component.scss']\n})\nexport class PreviewDocComponent implements OnInit {\n \n @Input() viewDocument;\n viewerType: string;\n resumeType: any;\n isIframe: boolean;\n imageDoc: SafeResourceUrl;\n isVideo: boolean;\n constructor(\n public sanitizer: DomSanitizer,\n public activeModal: NgbActiveModal,\n private toastr: ToastrService, \n ) { }\n\n ngOnInit(): void {\n if(this.viewDocument?.filePath != ''){ \n this.viewerType = 'docx';\n this.resumeType = this.viewDocument?.filePath?.split('.').pop().toLowerCase();\n this.isIframe = false;\n this.isVideo = false;\n if(this.resumeType == 'pdf'){\n this.viewerType = 'pdf';\n }else if(this.resumeType == 'docx' || this.resumeType == 'doc'){\n this.viewerType = 'office';\n }else if(this.resumeType == 'png' || this.resumeType == 'jpg' || this.resumeType == 'jpeg' ){\n this.isIframe = true;\n }else if(this.viewDocument?.filePath.match('drive.google.com')){\n this.isIframe = true;\n }else if(this.resumeType == 'mkv' || this.resumeType == 'mp4' || this.resumeType == 'webm'){\n this.isVideo = true; \n }else{\n this.viewerType = 'google';\n }\n \n this.imageDoc= this.sanitizer.bypassSecurityTrustResourceUrl(this.viewDocument.filePath);\n }\n }\n\n}\n","
\n
Upload Document
\n \n
\n\n\n
\n
\n\n
\n \n
\n
\n \n
\n
\n \n \n
\n\n
\n
\n
\n \n
"," \nimport { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { ToastrService } from 'ngx-toastr';\nimport { environment } from '../../../environments/environment';\nimport { CommonApiService } from '../../shared/services/common-api.service';\n \n@Component({\n selector: 'app-candidate-unsubscribe',\n templateUrl: './candidate-unsubscribe.component.html',\n styleUrls: ['./candidate-unsubscribe.component.scss']\n})\nexport class CandidateUnsubscribeComponent implements OnInit {\n isLoader: boolean;\n isThankyou:boolean =false;\n constructor(\n private toastr: ToastrService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private apiService: CommonApiService,\n private commonApiService: CommonApiService\n ) {}\n obj: any = {\n candProfId: '',\n emailId: '',\n remarks: '',\n };\n unsubcribe() {\n this.isLoader = true; \n \n this.apiService.unsubcribeMail(this.obj).subscribe(\n (resp: any) => {\n this.isLoader = false;\n if (resp.status) { \n this.isThankyou = true;\n setTimeout(()=>{ \n //this.router.navigate(['pihire/home']);\n window.location.href = environment.websiteUrl;\n }, 2000)\n } else {\n //this.router.navigate(['pihire/home']);\n window.location.href = environment.websiteUrl;\n this.toastr.error(resp.meta.error.errorMessage);\n }\n },\n (error) => {\n this.isLoader = false;\n this.toastr.error('Érror');\n }\n );\n }\n ngOnInit(): void {\n this.activatedRoute.params.subscribe((params) => {\n this.obj.candProfId = params['candidateId'];\n this.obj.emailId = params['candidateEmail'];\n });\n }\n}\n","
\n\n
\n
\n
\n
\n
{{ obj.emailId }}
\n

is subscribed to our mailing list(s).

\n
\n
\n

Unsubscribe from our mailing list

\n

To help us improve our services, we would be grateful if you could tell us why

\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n

Thank you

\n
\n
\n

\n You have ben successfully removed. You will no longer here for us.\n

\n
\n\n
\n
\n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { BgVerificationComponent } from '../bg-verification/bg-verification.component';\nimport { BVGVerificationObject } from '../bgverification';\nimport { ToastrService } from 'ngx-toastr';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { CommonApiService } from '../../../shared/services';\n\n@Component({\n selector: 'app-family-details',\n templateUrl: './family-details.component.html',\n styleUrls: ['./family-details.component.scss']\n})\nexport class FamilyDetailsComponent implements OnInit {\n selectedCity: any;\n\n validationFlag: boolean = false;\n constructor(public BgVerificationComponent: BgVerificationComponent, private commonApiService: CommonApiService, public bvgVerificationObject: BVGVerificationObject, private ToastrService: ToastrService, private router: Router, private route: ActivatedRoute) {\n this.bvgVerificationObject.currentBVGObj.subscribe(obj => this.BgVerificationComponent.candidateBGVerificationData = obj);\n }\n\n onLoad: boolean = false;\n ngOnInit() {\n var thisobj = this;\n this.BgVerificationComponent.candidateBGVerificationData[\"emerContactNo_code\"] = \"\";\n this.BgVerificationComponent.candidateBGVerificationData[\"homePhone_code\"] = \"\";\n // setTimeout(function () {\n if (thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo != null && thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo != undefined && thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo != \" null\" && thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo != \"null\") {\n var cont = thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo.split(\" \");\n if (cont.length > 2) {\n thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo = \"\";\n } else if (cont.length == 2) {\n thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo = cont[1];\n thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code = cont[0];\n } else if (cont.length == 1) {\n thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo = cont[0];\n thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code = \"\";\n }\n } else {\n thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo = \"\";\n thisobj.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code = \"\";\n }\n if (thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone != null && thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone != undefined && thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone != \" null\" && thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone != \"null\") {\n var cont = thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone.split(\" \");\n if (cont.length > 2) {\n thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone = \"\";\n } else if (cont.length == 2) {\n thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone = cont[1];\n thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone_code = cont[0];\n } else if (cont.length == 1) {\n thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone = cont[0];\n thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone_code = \"\";\n }\n } else {\n thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone = \"\";\n thisobj.BgVerificationComponent.candidateBGVerificationData.homePhone_code = \"\";\n }\n thisobj.onLoad = true;\n // }, 500);\n }\n\n\n saveBGVDetails() {\n this.validationFlag = true;\n if (this.BgVerificationComponent.candidateBGVerificationData.fatherName == null || this.BgVerificationComponent.candidateBGVerificationData.fatherName == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.motherName == null || this.BgVerificationComponent.candidateBGVerificationData.motherName == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.maritalStatus != \"S\") {\n\n if (this.BgVerificationComponent.candidateBGVerificationData.spouseName == null || this.BgVerificationComponent.candidateBGVerificationData.spouseName == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.noOfKids == null) {\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = 0;\n }\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactPerson == null || this.BgVerificationComponent.candidateBGVerificationData.emerContactPerson == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactRelation == null || this.BgVerificationComponent.candidateBGVerificationData.emerContactRelation == \"\") {\n return false;\n }\n\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code == null || this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactNo == null || this.BgVerificationComponent.candidateBGVerificationData.emerContactNo == \"\") {\n return false;\n } else {\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactNo.length < 8) {\n return false;\n }\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.homePhone_code == null || this.BgVerificationComponent.candidateBGVerificationData.homePhone_code == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.homePhone == null || this.BgVerificationComponent.candidateBGVerificationData.homePhone == \"\") {\n return false;\n } else {\n if (this.BgVerificationComponent.candidateBGVerificationData.homePhone.length < 8) {\n return false;\n }\n }\n this.BgVerificationComponent.candidateBGVerificationData.bloodGroup = parseInt(this.BgVerificationComponent.candidateBGVerificationData.bloodGroup + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.emerContactNo;\n this.BgVerificationComponent.candidateBGVerificationData.homePhone = this.BgVerificationComponent.candidateBGVerificationData.homePhone_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.homePhone;\n this.BgVerificationComponent.candidateBGVerificationData.expeInMonths = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInMonths + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.expeInYears = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInYears + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = parseInt(this.BgVerificationComponent.candidateBGVerificationData.noOfKids + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType + \"\");\n\n this.commonApiService.updateBGVericationData(this.BgVerificationComponent.candidateBGVerificationData).subscribe((data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n //this.ToastrService.success(\"Updated successfully\");\n this.BgVerificationComponent.candidateBGVerificationData.homePhone_code = \"\";\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code = \"\";\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid + '/' + this.BgVerificationComponent.profileid + '/permanent-address']);\n }\n } else {\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.emerContactNo != undefined && this.BgVerificationComponent.candidateBGVerificationData.emerContactNo != \" null\" && this.BgVerificationComponent.candidateBGVerificationData.emerContactNo != \"null\") {\n var cont = this.BgVerificationComponent.candidateBGVerificationData.emerContactNo.split(\" \");\n if (cont.length > 2) {\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = \"\";\n } else if (cont.length == 2) {\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = cont[1];\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code = cont[0];\n } else if (cont.length == 1) {\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = cont[0];\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code = \"\";\n }\n } else {\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = \"\";\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.homePhone != null && this.BgVerificationComponent.candidateBGVerificationData.homePhone != undefined && this.BgVerificationComponent.candidateBGVerificationData.homePhone != \" null\" && this.BgVerificationComponent.candidateBGVerificationData.homePhone != \"null\") {\n var cont = this.BgVerificationComponent.candidateBGVerificationData.homePhone.split(\" \");\n if (cont.length > 2) {\n this.BgVerificationComponent.candidateBGVerificationData.homePhone = \"\";\n } else if (cont.length == 2) {\n this.BgVerificationComponent.candidateBGVerificationData.homePhone = cont[1];\n this.BgVerificationComponent.candidateBGVerificationData.homePhone_code = cont[0];\n } else if (cont.length == 1) {\n this.BgVerificationComponent.candidateBGVerificationData.homePhone = cont[0];\n this.BgVerificationComponent.candidateBGVerificationData.homePhone_code = \"\";\n }\n } else {\n this.BgVerificationComponent.candidateBGVerificationData.homePhone = \"\";\n }\n this.ToastrService.error(data.meta.error.errorMessage);\n }\n }, (error) => {\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactNo != null && this.BgVerificationComponent.candidateBGVerificationData.emerContactNo != undefined && this.BgVerificationComponent.candidateBGVerificationData.emerContactNo != \" null\" && this.BgVerificationComponent.candidateBGVerificationData.emerContactNo != \"null\") {\n var cont = this.BgVerificationComponent.candidateBGVerificationData.emerContactNo.split(\" \");\n if (cont.length > 2) {\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = \"\";\n } else if (cont.length == 2) {\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = cont[1];\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code = cont[0];\n } else if (cont.length == 1) {\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = cont[0];\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code = \"\";\n }\n } else {\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = \"\";\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code = \"\";\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.homePhone != null && this.BgVerificationComponent.candidateBGVerificationData.homePhone != undefined && this.BgVerificationComponent.candidateBGVerificationData.homePhone != \" null\" && this.BgVerificationComponent.candidateBGVerificationData.homePhone != \"null\") {\n var cont = this.BgVerificationComponent.candidateBGVerificationData.homePhone.split(\" \");\n if (cont.length > 2) {\n } else if (cont.length == 2) {\n this.BgVerificationComponent.candidateBGVerificationData.homePhone = cont[1];\n this.BgVerificationComponent.candidateBGVerificationData.homePhone_code = cont[0];\n } else if (cont.length == 1) {\n this.BgVerificationComponent.candidateBGVerificationData.homePhone = cont[0];\n this.BgVerificationComponent.candidateBGVerificationData.homePhone_code = \"\";\n }\n } else {\n this.BgVerificationComponent.candidateBGVerificationData.homePhone = \"\";\n this.BgVerificationComponent.candidateBGVerificationData.homePhone_code = \"\";\n }\n this.ToastrService.error(error.error.meta.error.errorMessage);\n })\n }\n\n nextPage() {\n if (this.BgVerificationComponent.candidateBGVerificationData.fatherName == null || this.BgVerificationComponent.candidateBGVerificationData.fatherName == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.motherName == null || this.BgVerificationComponent.candidateBGVerificationData.motherName == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.maritalStatus != \"S\") {\n\n if (this.BgVerificationComponent.candidateBGVerificationData.spouseName == null || this.BgVerificationComponent.candidateBGVerificationData.spouseName == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.noOfKids == null) {\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = 0;\n }\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactPerson == null || this.BgVerificationComponent.candidateBGVerificationData.emerContactPerson == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactRelation == null || this.BgVerificationComponent.candidateBGVerificationData.emerContactRelation == \"\") {\n return false;\n }\n //if (this.pincode_1 == null || this.pincode_1 == \"\") {\n // return false;\n //}\n\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code == null || this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.emerContactNo == null || this.BgVerificationComponent.candidateBGVerificationData.emerContactNo == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.homePhone_code == null || this.BgVerificationComponent.candidateBGVerificationData.homePhone_code == \"\") {\n return false;\n }\n if (this.BgVerificationComponent.candidateBGVerificationData.homePhone == null || this.BgVerificationComponent.candidateBGVerificationData.homePhone == \"\") {\n return false;\n }\n this.BgVerificationComponent.candidateBGVerificationData.bloodGroup = parseInt(this.BgVerificationComponent.candidateBGVerificationData.bloodGroup + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.emerContactNo;\n this.BgVerificationComponent.candidateBGVerificationData.homePhone = this.BgVerificationComponent.candidateBGVerificationData.homePhone_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.homePhone;\n this.BgVerificationComponent.candidateBGVerificationData.expeInMonths = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInMonths + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.expeInYears = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInYears + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = parseInt(this.BgVerificationComponent.candidateBGVerificationData.noOfKids + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.homePhone_code = \"\";\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code = \"\";\n // this.router.navigate(['app/pre-employment-form/permanent-address']);\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid + '/' + this.BgVerificationComponent.profileid + '/permanent-address']);\n\n }\n previousPage() {\n this.BgVerificationComponent.candidateBGVerificationData.bloodGroup = parseInt(this.BgVerificationComponent.candidateBGVerificationData.bloodGroup + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.emerContactNo = this.BgVerificationComponent.candidateBGVerificationData.emerContactNo_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.emerContactNo;\n this.BgVerificationComponent.candidateBGVerificationData.homePhone = this.BgVerificationComponent.candidateBGVerificationData.homePhone_code + \" \" + this.BgVerificationComponent.candidateBGVerificationData.homePhone;\n this.BgVerificationComponent.candidateBGVerificationData.expeInMonths = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInMonths + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.expeInYears = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInYears + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = parseInt(this.BgVerificationComponent.candidateBGVerificationData.noOfKids + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType + \"\");\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType + \"\");\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid + '/' + this.BgVerificationComponent.profileid + '/personal-details']);\n\n }\n}\n","
\n \n
\n
\n\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n \n
\n\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n
\n
\n \n \n \"{{{{ c.phonecode }}\n \n \n
\n
\n \n
\n
\n
\n \n Required\n \n
\n
\n \n Enter valid number\n \n
\n
\n
\n \n
\n
\n \n \n \"{{ {{ c.phonecode }}\n \n \n
\n
\n \n
\n
\n
\n \n Required\n \n
\n
\n \n Enter valid number\n \n
\n
\n
\n\n
\n \n
\n \n \n
\n
\n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { ToastrService } from 'ngx-toastr';\nimport { SliderConfigService } from '../../../../../shared/services'; \n\n@Component({\n selector: 'app-sample-video',\n templateUrl: './sample-video.component.html',\n styleUrls: ['./sample-video.component.scss']\n})\nexport class SampleVideoComponent implements OnInit {\n slideConfig: any;\n\n constructor(\n public bsModalRef: BsModalRef,\n private sliderConfigService: SliderConfigService,\n private toastr: ToastrService,\n ) { \n this.slideConfig = this.sliderConfigService.sliderConfig({ slidesToShow: 1, slidesToScroll: 1, infinite: true, autoplay: false });\n }\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n
\n \n
\n \n
\n
\n \n
\n
\n
\n
\n
\n \n\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-cookie-policy',\n templateUrl: './cookie-policy.component.html',\n styleUrls: ['./cookie-policy.component.scss']\n})\nexport class CookiePolicyComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n\n
\n
\n
\n \"Logo\"\n
\n
Cookie Policy
\n
\n

21/06/2021

\n

\n As part of its commitment to transparency over its technologies, ParamInfo and its subsidiaries and affiliates\n are committed to ensuring the privacy of users. When you use or visit a website or app that posts a link to\n this\n Cookie Policy, you will be able to see how and why cookies, web beacons, pixels, and other technologies are\n stored on and accessed from your device. We recommend that you read our Cookie Policy in conjuction with our\n  Privacy Policy and Terms of use.\n

\n
Cookies and Other Tracking Technologies
\n

Cookies are small text files that can be stored on your device and can be accessed as and when you visit one\n of\n our Sites, if you agree. Other tracking technologies work similarly to cookies by placing small data files on\n your device or by monitoring your website activity to allow us to collect information about how you use our\n Sites. Our Sites can then distinguish your device from those of other users.

\n

The other tracking technologies also fall within the scope of the information provided about cookies.

\n\n
Using Cookies and Other Tracking Technologies
\n

Our site uses cookies and other tracking technologies to ensure you are identified and redirected to the\n correct page, to remember your preferences, and to measure how you use our site. Besides that, we use them to\n control access to certain content on our Sites, protect the Sites, and to process any requests that you make\n of\n us.

\n

ParamInfo also works with third-party providers to track and analyze usage statistics and volume information\n for our Sites in an effort to administer and research them. They use persistent cookies to improve our Sites'\n user experience, manage our content, and analyze visitors' navigation and use.

\n
Cookies from first and third parties
\n

A ‘First party cookies’ are one that belongs to ParamInfo and is placed on your device by ParamInfo. And\n \"Third\n party cookies\" are those placed on your computer by another party through our Site.

\n

In order to send e-mails to users with contact information that we have collected, ParamInfo contracts with\n third party service providers. ( reframed for below)

\n

ParamInfo may contract with third party service providers to send e-mails to users who have provided us with\n their contact information.

\n

To help measure and improve the effectiveness of our e-mail communications, and/or to determine whether\n messages have been opened and links clicked on, the third-party service providers may place Cookies on the\n devices of these users.( this para relates the above para if this needs to be removed too along with above\n para\n )

\n
We may use the following types of cookies, depending on the Site:
\n

Persistent Cookies. For a better experience while browsing the Sites, we use persistent\n cookies. As part of this, we will record your acceptance of our Cookie Policy when you first use the Sites. By\n accepting our Cookie Policy, you will be able to remove the cookie message.

\n

Session Cookies. These cookies are temporary cookies that are created during a session are\n temporary, and they are discarded when you close your web browser. Session cookies are used to track internet\n activity.

\n

By changing the appropriate settings on your browser, you can refuse to accept browser cookies. Although this\n setting may prevent you from accessing certain sites, it may not prevent you from accessing certain parts.\n

\n

As long as your browser is not set to reject Cookies, our system will issue Cookies when you navigate to our\n Sites.

\n

We will not keep personal information collected through the Sites and/or through cookies placed on your\n computer for longer than necessary to fulfill the stated purposes.

\n These cookies are used for the following purposes: \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Cookie TypePurpose
Strictly Necessary/ Technical \n
\n We use these Cookies to operate our Sites so you can access them as you have requested. They are\n essential for us. They help us determine activites, for e.g whether a visitor have created an account\n and\n have logged into that account in order to access Site content. Additionally, they allow us to remember\n your previous actions within the same browsing session and ensure the security of our Sites.\n
\n
Analytical/ Performance\n

By using these Cookies, we or our third-party service providers can analyze how well the Sites are\n being used and how effective they are. By placing these Cookies, we can track how frequently visitors\n visit various documents on our site, as well as the location from which they originate.

\n

If you subscribe to a newsletter or otherwise register with the Sites, these Cookies may be\n correlated\n to you. These Cookies include, for example, Google Analytics cookies.

\n

Reframed - Cookies may also be linked to you if you register for a newsletter or otherwise use the\n Sites.

\n

My suggesstion – not to add

\n
Functionality\n
\n With these Cookies, we can operate the Site according to your preferences. By using these Cookies, we\n can remember you between sessions. By recognizing your user name, and remembering how you have\n customized\n the Sites and services, we will be able to provide you with the same functionality in future visits,\n for\n example, by adjusting fonts, sizes, languages, and other parts of web pages that can be altered.\n
\n
Third Party Advertising\n
\n

To provide you with targeted advertising, we collect information about the activities you undertake\n on\n these and other sites through these Cookies

\n

We may also allow our third party service providers to use Cookies on the Sites for\n the same\n purposes identified above, including collecting information about your online activities over time\n and across different websites. The third party service providers that generate these Cookies, such\n as Google, LinkedIn, and Facebook, have their own privacy policies, and may use their Cookies to\n target advertising to you on other websites, based on your visit to our Sites.\n

\n

Not a good idea to add the above content, but eventually we do allow social media to perform the\n activity

\n
\n\n
\n\n Process to withdraw consent to the use of Cookies\n

In order to prevent Cookies from being placed on your computer, you can adjust the settings of your Internet\n browser so that it rejects the setting of all Cookies or only certain Cookies and alerts you when Cookies are\n being placed.

\n Important Note:- \n

Using your browser settings to block all Cookies (including strictly necessary Cookies) may prevent you from\n accessing or using parts or all of our Sites.

\n

You can remove previously-stored Cookies at any time by manually deleting them. However, unless you adjust\n your\n Internet browser setting as described above, the Sites will still be able to place further Cookies on your\n device.

\n Other Tracking Technologies in our communications \n

ParamInfo may collect information about whether you open or click any links in the knowledge, research or\n event\n communications that we send to you through web beacons.

\n

A web beacon is a graphic image, which is placed on a website or in an email that alone or in conjunction\n with\n cookies compile information about your usage of or your interaction with a ParamInfo website or email. For\n example, we may add web beacons to the knowledge, research or event communications that we send to you to\n determine whether you have opened our email or clicked a link. The analysis gathered helps us improve the\n effectiveness of content and format of our websites and email communications.

\n

The knowledge, research, or event communications that ParamInfo sends to you may contain web beacons that\n collect information about whether you open them or click on links.

\n

Websites and emails contain web beacons that can compile information. Web beacons work with cookies to gather\n the information. They are small graphic image that is placed on a website or in an email that, alone or in\n conjunction with cookies, compiles information about the way you use or interact with the ParamInfo website or\n email.

\n

For instance, If we're communicating with you via email, research, or events, we will probably include web\n beacons to determine whether you have opened our email or clicked on a link. This indirectly helps us to\n improve\n the content and format of our websites and email communications.

\n Process to withdraw consent to the use of Web Beacons \n

You can prevent web beacons by disabling the feature that allows remote images to load in your email reader\n program and refraining from clicking links in email messages.

\n Contact us: \n

If you have any other questions about our Cookie Policy, please contact us at:

\n

ParamInfo

\n info@ParamInfo.com \n
\n \n
\n
\n
","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { CommonApiService } from '../../../shared/services/common-api.service';\n\n@Component({\n selector: 'app-job-about-company',\n templateUrl: './about-company.component.html',\n styleUrls: ['./about-company.component.scss']\n})\nexport class JobApplyAboutCompanyComponent implements OnInit {\n @Input('application') application: any;\n \n @Input() currentPage:number;\n @Input() currentWizard:number;\n\n @Output() valueChange = new EventEmitter();\n\n constructor(\n private commonApiService: CommonApiService\n ) { }\n\n countryBenifitsList: any = []\n\n ngOnInit(): void {\n // this.currentPage = this.initCurrentPage || 1;\n this.getCountryBenifits();\n \n }\n // currentPage: number = 1;\n previousClick() {\n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: false\n });\n }\n nextClick() {\n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: true\n });\n }\n\n \n\n\n aboutCompany = ['17+ IT Consulting Services', 'Worldwide Presencet', 'Industry Expertise', 'Technology leadership', 'Technology Stacks',\n 'Certified and experienced consultants', 'Customer-first and a focused attitude', 'Advanced Cloud Solutions', 'Industry Best Practices',\n 'Global Delivery Model', 'Digital Transformation', 'Cloud IT', 'Digital Engineering', 'Managed IT Services',\n 'IT Outsourcing Services', 'Application Services', 'Product Development', 'Digital Analytics', 'Digital Engineering',\n 'Business Intelligence (BI)', 'Emerging Technologies'];\n\n locations = [{\n locationImg: 'assets/job-apply-img/india-img.svg',\n locationName: 'India',\n locationIcon: 'assets/job-apply-img/india-logo.svg'\n },\n\n {\n locationImg: 'assets/job-apply-img/uae-img.svg',\n locationName: 'UAE',\n locationIcon: 'assets/job-apply-img/uae-logo.svg'\n },\n\n {\n locationImg: 'assets/job-apply-img/bahrain-img.svg',\n locationName: 'Bahrain',\n locationIcon: 'assets/job-apply-img/bahrain-logo.svg'\n },\n\n {\n locationImg: 'assets/job-apply-img/usa-img.svg',\n locationName: 'USA',\n locationIcon: 'assets/job-apply-img/usa-logo.svg'\n }\n ];\n\n\n countryBenifits = ['Tax Free, No Income TAX for Individuals', 'Extremely safe',\n 'Near by to your Home city', 'Health insurance', 'Maternity leave', 'Employee benefits',\n 'Competitive salaries', 'Gratuity', 'Annual leave', 'Infrastructure', 'Diverse culture', 'Public holidays',\n 'Experience in international projects', 'Working hours', 'Severance pay', 'Holiday entitlement', 'Study leave'];\n\n clientsLogos = ['assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1.svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (1).svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (2).svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (3).svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (4).svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (5).svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (6).svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (7).svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (8).svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (9).svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (10).svg',\n 'assets/job-apply-img/Screenshot 2024-05-30 at 18.34 1 (11).svg',\n ]\n\n getCountryBenifits() {\n console.log(this.application)\n this.commonApiService.getCountryBenifits(this.application?.countryId).subscribe((res: any) => {\n this.countryBenifitsList = res.result; \n })\n }\n\n}\n","
\n

Application to Selection Process

\n
\n
\n
\n
\n

Step 01

\n

Estimated Duration: 3 to 4 Working Days

\n
\n
\n \n

Screening

\n
\n
\n \n

Notice Period Validation

\n
\n
\n \n

Onsite ParamInfo Team Call

\n
\n
\n
\n
\n
\n
\n

Step 02

\n

Estimated Duration: 1 to 2 Working Days

\n
\n
\n \n

L1/L2 Calls

\n
\n
\n \n

Client Submission

\n
\n
\n
\n
\n
\n
\n

Step 03

\n

Estimated Duration: 5 to 15 Working Days

\n
\n
\n \n

Client Interview

\n
\n
\n
\n
\n
\n
\n

Step 04

\n

Estimated Duration: 3 to 4 Working Days

\n
\n
\n \n

Document Valiadation

\n
\n
\n \n

JOB Visa Interview

\n
\n
\n \n

Document Submission

\n
\n
\n \n

Offer Letter Collection

\n
\n
\n
\n
\n\n
\n \n \n
\n
\n\n\n
\n
\n

About Company

\n
\n
\n
\n

{{company}}

\n
\n
\n
\n
\n \n
\n

Company Locations

\n
\n
\n
\n \n
\n

{{location?.locationName}}

\n \n
\n
\n
\n
\n
\n\n \n
\n \n
0\" class=\"col-md-5\">\n
\n
\n

Country Benefits

\n

Know the benefits if the country you are applying for

\n
\n
\n
\n
\n

{{countryName}}

\n
\n
\n
\n
\n
\n\n \n
0 ?'col-md-7':'col-md-12'\">\n
\n
\n

Few of our Client's

\n

we would be presenting your profile to the below one or multiple\n clients

\n
\n
\n
\n \n
\n
\n
\n
\n
\n\n\n \n
\n \n \n
\n
","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SliderConfigService {\r\n\r\n constructor() { }\r\n\r\n sliderConfig(config: {\r\n slidesToShow?: number,\r\n slidesToScroll?: number,\r\n infinite?: boolean,\r\n dots?: boolean,\r\n autoplay?: boolean,\r\n speed?: number,\r\n cssEase?: String,\r\n arrows?: boolean,\r\n autoplaySpeed?: number,\r\n breakpoint?: {\r\n breakpointLg?: { slidesToShow?: number, slidesToScroll?: number }\r\n breakpointMd?: { slidesToShow?: number, slidesToScroll?: number }\r\n breakpointSm?: { slidesToShow?: number, slidesToScroll?: number }\r\n breakpointXs?: { slidesToShow?: number, slidesToScroll?: number }\r\n }\r\n }) {\r\n var x = config?.dots || false;\r\n var slideConfig = {\r\n slidesToShow: config?.slidesToShow || 2,\r\n slidesToScroll: config?.slidesToScroll || 2,\r\n infinite: config?.infinite || true,\r\n dots: config?.dots || false,\r\n autoplay: config?.autoplay || false,\r\n arrows: config?.arrows || false,\r\n speed: config?.speed || 1000,\r\n cssEase: config?.cssEase || 'ease',\r\n autoplaySpeed: config?.autoplaySpeed || 5000,\r\n responsive: [\r\n {\r\n breakpoint: 2000,\r\n settings: {\r\n slidesToShow: config?.breakpoint?.breakpointLg?.slidesToShow || config?.slidesToShow || 2,\r\n slidesToScroll: config?.breakpoint?.breakpointLg?.slidesToScroll || config?.slidesToScroll || 2,\r\n\r\n }\r\n },\r\n {\r\n breakpoint: 1200,\r\n settings: {\r\n slidesToShow: config?.breakpoint?.breakpointMd?.slidesToShow || config?.slidesToShow || 2,\r\n slidesToScroll: config?.breakpoint?.breakpointMd?.slidesToScroll || config?.slidesToScroll || 2,\r\n }\r\n },\r\n {\r\n breakpoint: 768,\r\n settings: {\r\n slidesToShow: config?.breakpoint?.breakpointSm?.slidesToShow || 1,\r\n slidesToScroll: config?.breakpoint?.breakpointSm?.slidesToScroll || 1,\r\n }\r\n },\r\n {\r\n breakpoint: 480,\r\n settings: {\r\n slidesToShow: config?.breakpoint?.breakpointXs?.slidesToShow || Math.floor(((config?.slidesToShow || 1) / 3)) || 1,\r\n slidesToScroll: config?.breakpoint?.breakpointXs?.slidesToScroll || Math.floor(((config?.slidesToShow || 1) / 3)) || 1,\r\n }\r\n }\r\n ]\r\n };\r\n\r\n\r\n return slideConfig;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { BgVerificationComponent } from '../bg-verification/bg-verification.component';\r\nimport { CommonApiService } from '../../../shared/services';\r\nimport { BVGVerificationObject } from '../bgverification';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { candidateBGVEmployeeViewModel } from '../../../core/models/bgverificationModel';\r\nimport { DatePipe } from '@angular/common';\r\n@Component({\r\n selector: 'app-employer-details',\r\n templateUrl: './employer-details.component.html',\r\n styleUrls: ['./employer-details.component.scss']\r\n})\r\nexport class EmployerDetailsComponent implements OnInit {\r\n EmployeeViewModel: candidateBGVEmployeeViewModel;\r\n enableAddEmp: boolean = false;\r\n validationFlag: boolean = false;\r\n datePickerConfig = {\r\n dateInputFormat: 'DD MMM YYYY',\r\n containerClass: 'theme-green',\r\n showWeekNumbers: false,\r\n showWeeks: false,\r\n isAnimated: true,\r\n adaptivePosition: true,\r\n width: 400,\r\n height: 300\r\n };\r\n maxDate: Date;\r\n CitiesList: any = [];\r\n constructor(private datePipe: DatePipe, public BgVerificationComponent: BgVerificationComponent, private commonApiService: CommonApiService, public bvgVerificationObject: BVGVerificationObject, private ToastrService: ToastrService, private router: Router, private route: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.maxDate = new Date();\r\n this.EmployeeViewModel = {\r\n \"id\": 0,\r\n \"candProfId\": this.BgVerificationComponent.profileid,\r\n \"employerName\": \"\",\r\n \"employId\": \"\",\r\n \"emptFromDate\": null,\r\n \"emptToDate\": null,\r\n \"address\": \"\",\r\n \"phoneNumber\": \"\",\r\n \"cityId\": null,\r\n \"countryId\": null,\r\n \"designationId\": null,\r\n \"designation\": \"\",\r\n \"cpname\": \"\",\r\n \"cpdesignation\": \"\",\r\n \"cpnumber\": \"\",\r\n \"cpemailId\": \"\",\r\n \"currentWorkingFlag\": null,\r\n \"officialEmailId\": \"\",\r\n \"hrcontactNo\": \"\",\r\n \"hremailId\": \"\",\r\n \"CitiesList\": []\r\n };\r\n //this.getCities();\r\n if (this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEmployeeViewModel == null || this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEmployeeViewModel.length == 0) {\r\n this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEmployeeViewModel = [];\r\n this.enableViewmodal();\r\n }\r\n\r\n }\r\n\r\n getCities(obj: any) {\r\n var CitiesList = [];\r\n if (obj.countryId != null) {\r\n this.commonApiService.getCities(obj.countryId).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n obj.CitiesList = data.result;\r\n }\r\n } else {\r\n this.ToastrService.error(data.meta.error.errorMessage);\r\n }\r\n }, error => {\r\n\r\n })\r\n } else {\r\n obj.CitiesList = [];\r\n }\r\n }\r\n saveBGVDetails(EmployeerData: any) {\r\n this.validationFlag = true;\r\n if (EmployeerData.employerName == null || EmployeerData.employerName == \"\") {\r\n return false;\r\n }\r\n if (EmployeerData.address == null || EmployeerData.address == \"\") {\r\n return false;\r\n } if (EmployeerData.countryId == null || EmployeerData.countryId == \"\") {\r\n return false;\r\n }\r\n if (EmployeerData.cityId == null || EmployeerData.cityId == \"\") {\r\n return false;\r\n }\r\n if (EmployeerData.employId == null || EmployeerData.employId == \"\") {\r\n return false;\r\n }\r\n if (EmployeerData.currentWorkingFlag === null || EmployeerData.currentWorkingFlag === \"\") {\r\n return false;\r\n }\r\n if (EmployeerData.emptFromDate == null || EmployeerData.emptFromDate == \"\") {\r\n return false;\r\n }\r\n if (EmployeerData.emptToDate == null || EmployeerData.emptToDate == \"\") {\r\n return false;\r\n }\r\n\r\n this.commonApiService.updateBGVEmployeerData(EmployeerData).subscribe((data: any) => {\r\n if (data.status == true) {\r\n this.enableAddEmp = false;\r\n if (data.result != null) {\r\n this.validationFlag = false;\r\n this.ToastrService.success(\"Updated successfully\");\r\n this.BgVerificationComponent.getBGVericationData(this.BgVerificationComponent.jobid, this.BgVerificationComponent.profileid);\r\n this.EmployeeViewModel = null;\r\n this.EmployeeViewModel = {\r\n \"id\": 0,\r\n \"candProfId\": this.BgVerificationComponent.profileid,\r\n \"employerName\": \"\",\r\n \"employId\": \"\",\r\n \"emptFromDate\": null,\r\n \"emptToDate\": null,\r\n \"address\": \"\",\r\n \"phoneNumber\": \"\",\r\n \"cityId\": null,\r\n \"countryId\": null,\r\n \"designationId\": null,\r\n \"designation\": \"\",\r\n \"cpname\": \"\",\r\n \"cpdesignation\": \"\",\r\n \"cpnumber\": \"\",\r\n \"cpemailId\": \"\",\r\n \"currentWorkingFlag\": null,\r\n \"officialEmailId\": \"\",\r\n \"hrcontactNo\": \"\",\r\n \"hremailId\": \"\",\r\n \"CitiesList\": []\r\n };\r\n }\r\n } else {\r\n this.ToastrService.error(data.meta.error.errorMessage);\r\n }\r\n }, (error) => {\r\n this.ToastrService.error(error.error.meta.error.errorMessage);\r\n })\r\n }\r\n enableViewmodal() {\r\n this.enableAddEmp = true;\r\n this.EmployeeViewModel = {\r\n \"id\": 0,\r\n \"candProfId\": this.BgVerificationComponent.profileid,\r\n \"employerName\": \"\",\r\n \"employId\": \"\",\r\n \"emptFromDate\": null,\r\n \"emptToDate\": null,\r\n \"address\": \"\",\r\n \"phoneNumber\": \"\",\r\n \"cityId\": null,\r\n \"countryId\": null,\r\n \"designationId\": null,\r\n \"designation\": \"\",\r\n \"cpname\": \"\",\r\n \"cpdesignation\": \"\",\r\n \"cpnumber\": \"\",\r\n \"cpemailId\": \"\",\r\n \"currentWorkingFlag\": null,\r\n \"officialEmailId\": \"\",\r\n \"hrcontactNo\": \"\",\r\n \"hremailId\": \"\",\r\n \"CitiesList\": []\r\n };\r\n }\r\n closeForm() {\r\n this.enableAddEmp = false;\r\n this.EmployeeViewModel = {\r\n \"id\": 0,\r\n \"candProfId\": this.BgVerificationComponent.profileid,\r\n \"employerName\": \"\",\r\n \"employId\": \"\",\r\n \"emptFromDate\": null,\r\n \"emptToDate\": null,\r\n \"address\": \"\",\r\n \"phoneNumber\": \"\",\r\n \"cityId\": null,\r\n \"countryId\": null,\r\n \"designationId\": null,\r\n \"designation\": \"\",\r\n \"cpname\": \"\",\r\n \"cpdesignation\": \"\",\r\n \"cpnumber\": \"\",\r\n \"cpemailId\": \"\",\r\n \"currentWorkingFlag\": null,\r\n \"officialEmailId\": \"\",\r\n \"hrcontactNo\": \"\",\r\n \"hremailId\": \"\",\r\n \"CitiesList\": []\r\n };\r\n }\r\n addEmployer() {\r\n let empobj = JSON.stringify(this.EmployeeViewModel)\r\n let empobjis: candidateBGVEmployeeViewModel = JSON.parse(empobj);\r\n //this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEmployeeViewModel.push(empobjis);\r\n this.saveBGVDetails(empobjis)\r\n\r\n }\r\n saveToNextPage() {\r\n //if (this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEmployeeViewModel.length > 0) {\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid +'/'+ this.BgVerificationComponent.profileid + '/education-details']);\r\n\r\n //}\r\n }\r\n previousPage() {\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid +'/'+ this.BgVerificationComponent.profileid + '/present-address']);\r\n\r\n }\r\n onDateChange(dt: Date) {\r\n this.EmployeeViewModel.emptFromDate = new Date(dt);\r\n }\r\n onDateChange2(dt: Date) {\r\n this.EmployeeViewModel.emptToDate = new Date(dt);\r\n }\r\n\r\n editEmpDetails(emp: any) {\r\n this.validationFlag = true;\r\n this.EmployeeViewModel = emp;\r\n this.EmployeeViewModel[\"candProfId\"] = this.BgVerificationComponent.profileid;\r\n this.getCities(this.EmployeeViewModel)\r\n if (this.EmployeeViewModel.emptFromDate != null || this.EmployeeViewModel.emptFromDate != undefined) {\r\n var dateis = new Date(this.EmployeeViewModel.emptFromDate);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.EmployeeViewModel.emptFromDate = new Date(x);\r\n }\r\n if (this.EmployeeViewModel.emptToDate != null || this.EmployeeViewModel.emptToDate != undefined) {\r\n var dateis = new Date(this.EmployeeViewModel.emptToDate);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.EmployeeViewModel.emptToDate = new Date(x);\r\n }\r\n\r\n\r\n }\r\n Clear() {\r\n this.EmployeeViewModel = null;\r\n this.EmployeeViewModel = {\r\n \"id\": 0,\r\n \"candProfId\": this.BgVerificationComponent.profileid,\r\n \"employerName\": \"\",\r\n \"employId\": \"\",\r\n \"emptFromDate\": null,\r\n \"emptToDate\": null,\r\n \"address\": \"\",\r\n \"phoneNumber\": \"\",\r\n \"cityId\": null,\r\n \"countryId\": null,\r\n \"designationId\": null,\r\n \"designation\": \"\",\r\n \"cpname\": \"\",\r\n \"cpdesignation\": \"\",\r\n \"cpnumber\": \"\",\r\n \"cpemailId\": \"\",\r\n \"currentWorkingFlag\": null,\r\n \"officialEmailId\": \"\",\r\n \"hrcontactNo\": \"\",\r\n \"hremailId\": \"\",\r\n \"CitiesList\": []\r\n };\r\n this.validationFlag = false;\r\n }\r\n\r\n checkcurrentWorkingFlag(valuis) {\r\n console.log(this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEmployeeViewModel);\r\n }\r\n}\r\n\r\n\r\n","
\n \n
\n
\n\n
\n\n
\n \n
\n
{{emp.employerName}}
\n
\n
\n \n

{{emp.emptFromDate| date: \"dd/MM/YYYY\"}}

\n

N/A

\n
\n
\n \n

{{emp.emptToDate| date: \"dd/MM/YYYY\"}}

\n

N/A

\n
\n
\n \n
\n\n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n
\n
\n \n \n \n \n \"{{ {{ c.name }}\n \n \n\n
\n \n Required\n \n
\n
\n
\n \n \n \n
\n \n Required\n \n
\n
\n\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n
\n
\n \n \n
\n
\n \n \n
\n\n
\n
\n \n Required\n \n
\n
\n\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n
\n \n
\n \n \n
\n
\n
\n\n
\n\n\n
\n\n
\n \n Back\n \n
\n \n \n\n 0)\">\n Next\n \n
\n
\n\n
\n\n
\n
\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router, NavigationEnd } from '@angular/router'; \r\n \r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n jobCategory = [\r\n { job: 'Web developer' },\r\n { job: 'Grapic Designer' },\r\n { job: 'UX Designer' },\r\n { job: 'ios developer' },\r\n { job: 'App Designer' },\r\n { job: 'Program % Tech' }];\r\n\r\n community = [\r\n { community: 'Events' },\r\n { community: 'Blog' },\r\n { community: 'Forum' },\r\n { community: 'Podcast' },\r\n { community: 'Invite a friend' },];\r\n\r\n about = [\r\n { about: 'About Us' },\r\n { about: 'Product Manager' },\r\n { about: 'The Team' },\r\n { about: 'Project Mannagment' },\r\n { about: 'Partnership' },];\r\n\r\n stayConnected = [\r\n { stay: 'Facebook' },\r\n { stay: 'Twitter' },\r\n { stay: 'Instagram' },\r\n { stay: 'LinkdIn' },];\r\n\r\n year: number = new Date().getFullYear();\r\n eventUrl: string;\r\n isFullFooter: boolean =false;\r\n constructor(\r\n private router: Router,\r\n ) { }\r\n headerEnableDisable() {\r\n if (this.eventUrl.match('home')) {\r\n this.isFullFooter = true;\r\n }\r\n \r\n }\r\n ngOnInit(): void {\r\n this.isFullFooter = false;\r\n this.eventUrl = this.router.url;\r\n this.headerEnableDisable();\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.eventUrl = event.url;\r\n this.isFullFooter = false;\r\n this.headerEnableDisable();\r\n }\r\n });\r\n }\r\n\r\n}\r\n","
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n

\r\n © {{ year }} Paraminfo. All rights Reserved\r\n

\r\n
\r\n
\r\n GET IN TOUCH\r\n
ParamInfo
\r\n

\r\n POBOX: 123898, Office # 1101
\r\n The Burlington Tower
\r\n Business Bay, Dubai UAE
\r\n +971 455166 92
\r\n info@paraminfo.com\r\n

\r\n
\r\n
\r\n GET IN TOUCH\r\n
ParamInfo
\r\n

\r\n Plot no. 57, 2nd Floor
\r\n Dwaraka Central, Madhapur
\r\n Hyderabad, TG, IN, 500081
\r\n +91 8143075591
\r\n info@paraminfo.com\r\n

\r\n
\r\n
\r\n Follow us on\r\n
    \r\n
  • \r\n
  • \r\n
  • \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Categories

\r\n
    \r\n
  • {{ item.job }}
  • \r\n
\r\n
\r\n
\r\n

Community

\r\n
    \r\n
  • {{ item.community }}
  • \r\n
\r\n
\r\n
\r\n

About

\r\n
    \r\n
  • {{ item.about }}
  • \r\n
\r\n
\r\n
\r\n

Stay Connnected

\r\n
    \r\n
  • {{ item.stay }}
  • \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n

\r\n © {{ year }} ParamInfo. All rights Reserved\r\n

\r\n
\r\n
","\r\n\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { Options } from '@angular-slider/ngx-slider';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\nimport { FacebookLoginProvider } from 'angularx-social-login';\r\n\r\n@Component({\r\n selector: 'app-experience',\r\n templateUrl: './experience.component.html',\r\n styleUrls: ['./experience.component.scss']\r\n})\r\nexport class ExperienceComponent implements OnInit {\r\n\r\n\r\n //@Output() changeWizard: EventEmitter<{ 'buttonType': string, 'currentPage': number }>;\r\n //@Input() application: any;\r\n //@Input() currentPage: any;\r\n maxValue: number=0\r\n options: Options = {\r\n floor: 0,\r\n ceil: 30,\r\n step: 0.1,\r\n showTicks: true,\r\n showTicksValues: false,\r\n getLegend: (value: number): string => {\r\n this.maxValue =value;\r\n return \"\" + value;\r\n },\r\n translate: (value: number): string => {\r\n return ' ' + value + ' Years';\r\n },\r\n };\r\n options_relevent: Options = {\r\n floor: 0,\r\n ceil: 30,\r\n step: 1,\r\n maxRange: this.maxValue,\r\n showTicks: true,\r\n showTicksValues: false,\r\n getLegend: (value: number): string => {\r\n return \"\" + value;\r\n },\r\n translate: (value: number): string => {\r\n return ' ' + value + ' Years';\r\n },\r\n };\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n constructor(public JobApplication: JobApplicationComponent) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode; \r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {}\r\n validationFlag: boolean = false;\r\n checkOpeningPREF() {\r\n if (this.JobApplication.candidateProfileDetails.totalExperiance == null || this.JobApplication.candidateProfileDetails.totalExperiance == \"\" || this.JobApplication.candidateProfileDetails.totalExperiance == 0) {\r\n this.validationFlag = true;\r\n return false\r\n }\r\n if (this.JobApplication.candidateProfileDetails.relevantExperiance > this.JobApplication.candidateProfileDetails.totalExperiance) {\r\n this.validationFlag = true;\r\n return false\r\n }\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n\r\n }\r\n save() {\r\n\r\n }\r\n ngOnInit(): void {\r\n this.maxValue = parseInt(this.JobApplication.candidateProfileDetails.totalExperiance);\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n this.options_relevent = {\r\n floor: 0,\r\n ceil: 30,\r\n maxRange: this.maxValue,\r\n step: 0.1,\r\n showTicks: true,\r\n showTicksValues: false,\r\n getLegend: (value: number): string => {\r\n return \"\" + value;\r\n },\r\n translate: (value: number): string => {\r\n return ' ' + value + ' Years';\r\n },\r\n };\r\n }\r\n ngOnchange() {\r\n //this.options_relevent = {\r\n // floor: 0,\r\n // minRange: 0,\r\n // ceil: 30,\r\n // maxRange: parseInt(this.JobApplication.candidateProfileDetails.relevantExperiance),\r\n // step: 1,\r\n // showTicks: true,\r\n // showTicksValues: false,\r\n // getLegend: (value: number): string => {\r\n // return \"\" + value;\r\n // }\r\n //};\r\n }\r\n \r\n\r\n}\r\n\r\n","
Employment Details
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Total experience

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n Years \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n

Relevant experience

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n JobApplication.candidateProfileDetails.totalExperiance\">\r\n Relevant experiance should be less than total experience\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n Years\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Please provide all information\r\n requested. A partially filled application may not be considered for\r\n review.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\nimport { JobApplyComponent } from '../job-apply.component';\nimport { ToastrService } from 'ngx-toastr';\nimport { environment } from '../../../../environments/environment';\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\nimport { SampleVideoComponent } from '../../job-application/questions/impress-your-future-employer/sample-video/sample-video.component';\nimport { VideoProfileComponent } from '../video-profile/video-profile.component';\nimport { JobOpeningPreferenceTypes } from '../../../core/models/enums';\n\ndeclare var gapi: any;\ndeclare var google: any;\n\n@Component({\n selector: 'app-job-apply-resume',\n templateUrl: './job-apply-resume.component.html',\n styleUrls: ['./job-apply-resume.component.scss']\n})\nexport class JobApplyResumeComponent implements OnInit {\n\n @Input() application: any;\n @Input() currentOpeningPREF: any = {};\n @Input() fildOfCandidateDetails: any;\n @Output() valueChange = new EventEmitter();\n @ViewChild('resume', { read: ElementRef })\n resume: ElementRef;\n @Input() currentPage:number;\n @Input() currentWizard:number;\n\n\n resume_name: any;\n public videoResumeFile = { mediatypes: [\"video/mp4\", \"video/x-m4v\", \"video/x-msvideo\"], acceptTypes: \".mp4, .m4v, .avi\", maxSize: 3145728/*3MB*/ };\n\n public get videoResumeFileMediaType() { return this.videoResumeFile; }\n\n developerKey;\n CLIENT_ID;\n appId;\n SCOPES;\n pickerApiLoaded = false;\n oauthToken;\n isGoogleDriveEnabled: boolean = true;\n CheckVaribale: any = {}\n validationFlag: boolean = false;\n requiredOrNotFlag: number = 2;\n bsModalRef: BsModalRef;\n videoObj:any;\n constructor(\n public JobApplication: JobApplyComponent, \n private modalServices: BsModalService,\n private toastr: ToastrService, private changeDetectorRef: ChangeDetectorRef\n ) { }\n\n ngOnInit(): void {\n this.CheckVaribale = this.currentOpeningPREF;\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\n this.developerKey = environment.google.picker.DeveloperKey ?? 'AIzaSyCITcpljUY9xOAaUy31-h_L8GR2NjFmoc8';\n this.CLIENT_ID = environment.google.picker.ClientId ?? \"433136606656-0t5vbq82i88hjjg7v8orri6dccfgqeec.apps.googleusercontent.com\";\n this.appId = environment.google.picker.AppId ?? \"433136606656\";\n this.SCOPES = environment.google.picker.Scope ?? 'https://www.googleapis.com/auth/drive.file';\n\n this.pickerApiLoaded = false;\n this.oauthToken = '';\n }\n\n checkValidationFlag() {\n this.validationFlag =\n this.requiredOrNotFlag == 1 ?\n (((this.JobApplication.googleDriveResumeFiles?.length ?? 0) + (this.JobApplication.candidateProfileDetails.resume?.length ?? 0)) == 0) : false;\n }\n\n\n\n // Use the Google API Loader script to load the google.picker script.\n loadPicker() {\n console.log(\"Loading auth2 & picker\");\n this.isPickerLoaded = false;\n gapi.load('auth2', {\n 'callback': () => {\n var auth = gapi.auth2.getAuthInstance();\n if (auth) {\n //auth.disconnect();\n var authResult = auth.currentUser.get().getAuthResponse();\n if (authResult) {\n this.authorizeResult(authResult);\n console.log(\"auth2 exist\");\n return;\n }\n }\n gapi.auth2.authorize(\n {\n 'client_id': this.CLIENT_ID,\n 'scope': this.SCOPES,\n 'immediate': false\n }, (authResult) => {\n this.authorizeResult(authResult);\n console.log(\"auth2 success\");\n });\n }\n });\n gapi.load('picker', {\n 'callback': () => {\n this.pickerApiLoaded = true;\n this.createPicker();\n }\n });\n }\n authorizeResult(authResult: any) {\n if (authResult && !authResult.error) {\n if (authResult.scope.indexOf(this.SCOPES) == -1) {\n console.log(\"auth2 success but drive scope missing(\" + authResult.scope + \"). Reintilize the scope.\");\n this.loadPicker();\n return;\n }\n console.log(\"auth2 success\");\n this.oauthToken = authResult.access_token;\n this.createPicker();\n gapi.load('client:auth2', () => {\n console.log(\"client auth2 loaded\");\n var that = this;\n gapi.client.init({\n //apiKey: API_KEY,\n clientId: that.CLIENT_ID,\n discoveryDocs: that.DISCOVERY_DOCS,\n scope: that.SCOPES\n }).then(function () {\n // Listen for sign-in state changes.\n gapi.auth2.getAuthInstance().isSignedIn.listen(that.updateClientSigninStatus);\n\n // Handle the initial sign-in state.\n that.updateClientSigninStatus(gapi.auth2.getAuthInstance().isSignedIn.get());\n\n }, function (error) {\n console.log(JSON.stringify(error, null, 2));\n });\n });\n } else {\n console.log(\"auth2 failed -> \" + JSON.stringify(authResult));\n }\n }\n DISCOVERY_DOCS = [\"https://www.googleapis.com/discovery/v1/apis/drive/v3/rest\"];\n\n updateClientSigninStatus(isSignedIn) {\n console.log(\"client auth2 isSignedIn:\" + isSignedIn);\n if (isSignedIn) {\n } else {\n gapi.auth2.getAuthInstance().signIn();\n }\n }\n\n isPickerLoaded = false;\n // Create and render a Picker object for searching images.\n createPicker() {\n if (this.pickerApiLoaded && this.oauthToken) {\n console.log(\"picker -> loading.\" + this.isPickerLoaded);\n if (this.isPickerLoaded == false) {\n this.isPickerLoaded = true;\n //var view = new google.picker.View(google.picker.ViewId.DOCS);\n var view = new google.picker.View(google.picker.ViewId.PDFS);\n view.setMimeTypes(\"application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingm\");\n var picker = new google.picker.PickerBuilder()\n .enableFeature(google.picker.Feature.NAV_HIDDEN)\n //.enableFeature(google.picker.Feature.MULTISELECT_ENABLED)\n .setAppId(this.appId)\n .setOAuthToken(this.oauthToken)\n .addView(view)\n .addView(new google.picker.DocsUploadView())\n .setDeveloperKey(this.developerKey)\n .setCallback((data) => {\n this.JobApplication.resumefilesList = [];\n var googleDriveResumeFiles = [];\n if (data.action == google.picker.Action.PICKED) {\n console.log(\"picker -> selected\");\n var docs = data[google.picker.Response.DOCUMENTS];\n var that = this;\n that.JobApplication.resumefilesList = [];\n for (let a = 0; a < docs.length; a++) {\n let obj = { id: docs[a].id, \"name\": docs[a].name, \"url\": docs[a].url, ResumeURLType: docs[a].mimeType };\n\n gapi.client.load('drive', 'v3', function () {\n\n const file = gapi.client.drive.files.get({ 'fileId': obj.id, alt: 'media' }, {\n responseType: 'arraybuffer',\n });\n file.then(function (res) {\n // In this case, res.body is the binary data of the downloaded file.\n const charArray = new Array(res.body.length);\n for (let i = 0; i < res.body.length; i++) {\n charArray[i] = res.body.charCodeAt(i);\n }\n const typedArray = new Uint8Array(charArray);\n const blob = new Blob([typedArray], { type: res.headers['Content-Type'] });\n\n let fl = new File([blob], obj.name, { type: blob.type, lastModified: Date.now() });\n that.JobApplication.resumefilesList.push(fl);\n that.JobApplication.candidateProfileDetails.resume = that.JobApplication.resumefilesList;\n that.checkValidationFlag();\n that.changeDetectorRef.detectChanges();\n });\n that.isGoogleDriveEnabled = true;\n });\n }\n if (!(docs.length > 0)) {\n console.log(\"picker -> no file selected\");\n }\n }\n if (googleDriveResumeFiles.length > 0) {\n this.JobApplication.resumefilesList = [];\n this.JobApplication.googleDriveResumeFiles = googleDriveResumeFiles;\n this.JobApplication.candidateProfileDetails.resume = null;\n this.checkValidationFlag();\n this.changeDetectorRef.detectChanges();\n }\n this.resume.nativeElement.value = \"\";\n })\n .build();\n picker.setVisible(true);\n }\n }\n else {\n console.log(\"picker -> pickerApiLoaded:\" + this.pickerApiLoaded + \", oauthToken:\" + (this.oauthToken ? true : false));\n }\n }\n googleDriveResumeFiles: any = [];\n // A simple callback implementation.\n\n uploadresume() {\n this.validationFlag = false\n this.JobApplication.resumefilesList = [];\n this.JobApplication.googleDriveResumeFiles = [];\n let files = (this.resume.nativeElement as HTMLInputElement).files;\n if (files.length > 0) {\n let isValidFile = false;\n for (let i = 0; i < files.length; i++) {\n let file = files[i];\n if (file.size > 1048576 * 4) {\n let text = 'Resume file size should be less then 4MB';\n this.toastr.error(text);\n isValidFile = true;\n }\n }\n if (isValidFile) {\n this.resume.nativeElement.value = \"\";\n return;\n }\n }\n for (let f = 0; f < files.length; f++) {\n this.JobApplication.resumefilesList.push(files[f])\n }\n this.JobApplication.candidateProfileDetails.resume = this.JobApplication.resumefilesList;\n this.resume.nativeElement.value = \"\";\n this.checkValidationFlag();\n }\n removeResume(index: number) {\n this.JobApplication.resumefilesList.splice(index, 1);\n this.checkValidationFlag();\n }\n removeGoogleDriveResume(index: number) {\n this.JobApplication.googleDriveResumeFiles.splice(index, 1);\n this.checkValidationFlag();\n }\n sampleVideo() {\n this.bsModalRef = this.modalServices.show(SampleVideoComponent, {\n ignoreBackdropClick: true,\n class: 'modal-md modal-dialog-centered pihire-modal',\n });\n this.bsModalRef.content.closeBtnName = 'Close';\n // this.bsModalRef.onHidden.subscribe((res) => {\n // this.bsModalRef.hide();\n // });\n }\n\n uploadDoc() {\n const modalRef = this.modalServices.show(VideoProfileComponent, {\n ignoreBackdropClick: true,\n class: 'modal-md modal-dialog-centered pihire-modal',\n });\n modalRef?.content.event.subscribe(data => {\n if(data && data.video) {\n this.videoObj = data.video;\n this.JobApplication.recordedData = data.video;\n this.JobApplication.recDataBlob = data.blobData;\n }\n });\n \n }\n onVideoFileChange(event:any){\n let files = Object.keys(event.files).map((key:any) => event.files[key]);\n\n if(files && files.length !== 0) {\n let file = files[0];\n if (file &&\n !this.videoResumeFileMediaType.mediatypes.find(\n (da) => da == file.type.toLowerCase()\n )\n ) {\n this.toastr.error(\"Invalid file format\");\n return false;\n\n }\n else if (file && file.size > this.videoResumeFileMediaType.maxSize) {\n this.toastr.error(\"File max size:\" + ((this.videoResumeFileMediaType.maxSize / 1024) / 1024) + \" MB\");\n return false;\n\n }\n\n this.videoObj = file;\n this.JobApplication.recordedData = file;\n const reader = new FileReader();\n reader.readAsDataURL(file);\n\n \n } \n\n\n \n \n\n \n \n\n // this._snackBar.open(\"Successfully upload!\", 'Close', {\n // duration: 2000,\n // });\n }\n\n isPreviewFile: false;\n isVideoFile: false\n clearVideo() {\n\n this.isPreviewFile = false;\n this.isVideoFile = false;\n this.videoObj = undefined;\n this.JobApplication.recordedData = '';\n this.JobApplication.recDataBlob = '';\n }\n\n prevoius() {\n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: false\n });\n }\n\n preferenceType:any = JobOpeningPreferenceTypes;\n\n next() {\n\n if( this.application && this.application.candidatePrefResume == this.preferenceType.ESSENTIAL && this.JobApplication.candidateProfileDetails.resume.length == 0) {\n\n this.toastr.warning('Please Upload Resume');\n return;\n\n } \n\n if( this.application && this.application.candidatePrefVidPrfl == this.preferenceType.ESSENTIAL && !this.JobApplication.recordedData) {\n\n this.toastr.warning('Please Record a video');\n return;\n\n } \n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: true\n });\n }\n\n\n downloadResume(file) {\n // console.log(file)\n // window.open(file.fileURL, '_blank');\n\n const fileUrl = URL.createObjectURL(file);\n window.open(fileUrl, '_blank');\n\n }\n\n\n}\n","
\n
\n
\n

\n Upload Resume\n

\n We’d like to get to know you better.\n
\n
\n\n
\n\n \n 0)\">\n
\n
\n
\n
\n
\n \n
\n \n \n  \n
\n We accept resume in .doc, .docx and .pdf format\n
\n
\n
\n
\n
\n \n \n \n\n
0\">\n Uploaded Resume From PC\n
\n\n
\n
\n
\n {{fil.name}}\n
\n
\n
\n \n \n
\n
\n\n
0\">Uploaded Resume From Google Drive\n
\n\n
\n
\n
\n {{fil.name}}\n
\n
\n
\n \n \n
\n
\n
\n\n\n
\n
\n

Video Profile

\n Record video for up to 90 Seconds.\n
\n \n
\n\n\n
\n \n \n
\n
\n
\n
\n
\n \n
\n \n \n \n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n {{JobApplication.recordedData.name}}\n
\n
\n
\n \n
\n \n
\n
\n\n\n\n \n\n
\n \n \n
\n\n
","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'app-job-apply-menu',\n templateUrl: './job-apply-menu.component.html',\n styleUrls: ['./job-apply-menu.component.scss']\n})\nexport class JobApplyMenuComponent implements OnInit {\n\n @Input('mainWizard') mainWizard: number;\n @Output() valueChange = new EventEmitter();\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n lnkClick(currentPage: number, mainWizardPage: number) {\n // this.valueChange.emit({\n // currentPage: currentPage,\n // mainWizardPage: mainWizardPage,\n // isSave: false,\n // });\n }\n}\n","","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from '../../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NotificationsService {\r\n\r\n notifications: any[] = null;\r\n\r\n private notifiactionsSubject = new BehaviorSubject(this.notifications);\r\n castNotifications = this.notifiactionsSubject.asObservable();\r\n\r\n constructor(\r\n private http: HttpClient\r\n ) { }\r\n\r\n\r\n getNotifications() {\r\n this.http.get(\r\n `${environment.baseUrl}/notification`\r\n ).subscribe((resp: any[]) => {\r\n this.notifications = resp;\r\n this.notifiactionsSubject.next(this.notifications);\r\n }, (error) => {\r\n this.notifications = [];\r\n this.notifiactionsSubject.next(this.notifications);\r\n });\r\n }\r\n\r\n updateReadStatus() {\r\n this.http.get(`${environment.baseUrl}/notification/updatereadstatus`).subscribe((resp) => {\r\n this.getNotifications();\r\n }, (err) => {\r\n\r\n });\r\n }\r\n\r\n private usersOnline: { userId: number, status: boolean, emailId: string }[];\r\n updateUserOnlineStatus(data: any) {\r\n // console.log(\"updateUserOnlineStatus->\" + data);\r\n if (data && this.usersOnline) {\r\n var ob = this.usersOnline.find(da => da.userId == data.userId);\r\n if (ob) {\r\n ob.status = data.isLoggedIn;\r\n }\r\n else {\r\n this.usersOnline.push({ userId: data.userId, status: data.isLoggedIn, emailId: data.email });\r\n }\r\n }\r\n else {\r\n var postModel = {\r\n userIds: [],\r\n emailIds: [],\r\n userTypes: [],\r\n };\r\n this.http.post(\r\n `${environment.baseUrl}/Account/GetUserCurrentStatus`,\r\n postModel\r\n ).subscribe((resp: any) => {\r\n if (resp) {\r\n this.usersOnline = [];\r\n for (var i = 0; i < resp.length; i++) {\r\n this.usersOnline.push({ userId: resp[i].userId, status: resp[i].status, emailId: resp[i].emailId });\r\n }\r\n }\r\n })\r\n }\r\n }\r\n getUserCurrentStatus(): { data: { userId: number, status: boolean, emailId: string }[]; timeInterval: number } {\r\n if (!this.usersOnline)\r\n this.updateUserOnlineStatus(null);\r\n return { data: this.usersOnline, timeInterval: environment.onlineStatusInterval };\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { BgVerificationComponent } from '../bg-verification/bg-verification.component';\r\nimport { candidateBGVEduViewModel } from '../../../core/models/bgverificationModel';\r\nimport { CommonApiService } from '../../../shared/services';\r\nimport { BVGVerificationObject } from '../bgverification';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ConfirmationPopupService } from '../../../shared/services/confirmation-popup.service';\r\nimport { DatePipe } from '@angular/common';\r\n@Component({\r\n selector: 'app-education-details',\r\n templateUrl: './education-details.component.html',\r\n styleUrls: ['./education-details.component.scss']\r\n})\r\nexport class EducationDetailsComponent implements OnInit {\r\n educationViewModel: candidateBGVEduViewModel;\r\n datePickerConfig = {\r\n dateInputFormat: 'DD MMM YYYY',\r\n containerClass: 'theme-green',\r\n showWeekNumbers: false,\r\n showWeeks: false,\r\n isAnimated: true,\r\n adaptivePosition: true,\r\n width: 400,\r\n height: 300\r\n };\r\n validationFlag: boolean = false;\r\n maxDate: Date;\r\n constructor(private datePipe: DatePipe, private confirmationPopupService: ConfirmationPopupService, public BgVerificationComponent: BgVerificationComponent, private commonApiService: CommonApiService, public bvgVerificationObject: BVGVerificationObject, private ToastrService: ToastrService, private router: Router, private route: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.getQualificationList()\r\n this.maxDate = new Date();\r\n this.educationViewModel = {\r\n \"id\": 0,\r\n \"candProfId\": this.BgVerificationComponent.profileid,\r\n \"qualificationId\": 0,\r\n \"qualification\": \"\",\r\n \"course\": \"\",\r\n \"courseId\": 0,\r\n \"univOrInstitution\": \"\",\r\n \"yearofPassing\": null,\r\n \"durationFrom\": null,\r\n \"durationTo\": null,\r\n \"grade\": \"\",\r\n \"percentage\": null,\r\n };\r\n if (this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEduViewModel == null || this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEduViewModel.length == 0) {\r\n this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEduViewModel = [];\r\n this.enableSaveButton = true;\r\n //this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEduViewModel.push(educationViewModel);\r\n }\r\n }\r\n close() {\r\n this.enableSaveButton = false;\r\n this.educationViewModel = {\r\n \"id\": 0,\r\n \"candProfId\": this.BgVerificationComponent.profileid,\r\n \"qualificationId\": 0,\r\n \"qualification\": \"\",\r\n \"course\": \"\",\r\n \"courseId\": 0,\r\n \"univOrInstitution\": \"\",\r\n \"yearofPassing\": null,\r\n \"durationFrom\": null,\r\n \"durationTo\": null,\r\n \"grade\": \"\",\r\n \"percentage\": null,\r\n };\r\n }\r\n Clear() {\r\n this.educationViewModel = {\r\n \"id\": 0,\r\n \"candProfId\": this.BgVerificationComponent.profileid,\r\n \"qualificationId\": 0,\r\n \"qualification\": \"\",\r\n \"course\": \"\",\r\n \"courseId\": 0,\r\n \"univOrInstitution\": \"\",\r\n \"yearofPassing\": null,\r\n \"durationFrom\": null,\r\n \"durationTo\": null,\r\n \"grade\": \"\",\r\n \"percentage\": null,\r\n };\r\n }\r\n enableSaveButton: boolean = false;\r\n submitBgvEnableFlag: boolean = false;\r\n\r\n saveBGVDetails(education: any) {\r\n this.validationFlag = true;\r\n if (education.qualificationId == null || education.qualificationId == \"\") {\r\n return false\r\n }\r\n if (education.courseId == null || education.courseId == \"\") {\r\n return false\r\n }\r\n if (education.univOrInstitution == null || education.univOrInstitution == \"\") {\r\n return false\r\n }\r\n if (education.yearofPassing == null || education.yearofPassing == \"\") {\r\n return false\r\n }\r\n if (education.durationFrom == null || education.durationFrom == \"\") {\r\n return false\r\n }\r\n if (education.durationTo == null || education.durationTo == \"\") {\r\n return false\r\n }\r\n if (education.percentage == null || education.percentage == \"\") {\r\n return false\r\n }\r\n education.yearofPassing = parseInt(education.yearofPassing)\r\n education.percentage = parseInt(education.percentage)\r\n\r\n\r\n this.commonApiService.updateCandidateEduBGV(education).subscribe((data: any) => {\r\n this.validationFlag = false;\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.enableSaveButton = false\r\n this.ToastrService.success(\"Updated successfully\");\r\n\r\n this.BgVerificationComponent.getBGVericationData(this.BgVerificationComponent.jobid, this.BgVerificationComponent.profileid);\r\n this.educationViewModel = {\r\n \"id\": 0,\r\n \"candProfId\": this.BgVerificationComponent.profileid,\r\n \"qualificationId\": 0,\r\n \"qualification\": \"\",\r\n \"courseId\": 0,\r\n \"course\": \"\",\r\n \"univOrInstitution\": \"\",\r\n \"yearofPassing\": null,\r\n \"durationFrom\": null,\r\n \"durationTo\": null,\r\n \"grade\": \"\",\r\n \"percentage\": null,\r\n }\r\n }\r\n } else {\r\n this.ToastrService.error(data.meta.error.errorMessage);\r\n }\r\n }, (error) => {\r\n this.ToastrService.error(error.error.meta.error.errorMessage);\r\n })\r\n }\r\n addEducation() {\r\n //var idis = parseInt();\r\n var qualification = this.BgVerificationComponent.qualificationLists.filter(q => q.id == this.educationViewModel.qualificationId);\r\n if (qualification != null) {\r\n this.educationViewModel.qualification = qualification[0].rmvalue\r\n }\r\n var course = this.BgVerificationComponent.CourseLists.filter(q => q.id == this.educationViewModel.courseId);\r\n if (course != null) {\r\n this.educationViewModel.course = course[0].rmvalue\r\n }\r\n let empobj = JSON.stringify(this.educationViewModel)\r\n\r\n let empobjis: candidateBGVEduViewModel = JSON.parse(empobj);\r\n\r\n //this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEmployeeViewModel.push(empobjis);\r\n this.saveBGVDetails(empobjis)\r\n\r\n }\r\n onDateChange(dt: Date) {\r\n this.educationViewModel.durationFrom = new Date(dt);\r\n }\r\n onDateChange2(dt: Date) {\r\n this.educationViewModel.durationTo = new Date(dt);\r\n }\r\n\r\n editDetails(edu: any) {\r\n this.educationViewModel = edu;\r\n this.educationViewModel[\"candProfId\"] = this.BgVerificationComponent.profileid;\r\n if (this.educationViewModel.durationFrom != null || this.educationViewModel.durationFrom != undefined) {\r\n var dateis = new Date(this.educationViewModel.durationFrom);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.educationViewModel.durationFrom = new Date(x);\r\n }\r\n if (this.educationViewModel.durationTo != null || this.educationViewModel.durationTo != undefined) {\r\n var dateis = new Date(this.educationViewModel.durationTo);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.educationViewModel.durationTo = new Date(x);\r\n }\r\n }\r\n previousPage() {\r\n this.router.navigate(['/app/pre-employment-form/' + this.BgVerificationComponent.jobid + '/' + this.BgVerificationComponent.profileid + '/employer-details']);\r\n\r\n }\r\n submitBgv() {\r\n if (this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEduViewModel.length == 0) {\r\n this.ToastrService.error(\"Please provide employer details\");\r\n return false;\r\n }\r\n var countIs = this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEduViewModel.filter(x => x.durationFrom == null || x.durationTo == null);\r\n if (countIs.length !=0) {\r\n this.ToastrService.error(\"Please provide all education details\");\r\n return false;\r\n }\r\n if (this.BgVerificationComponent.candidateBGVerificationData.candidateBGVEduViewModel.length > 0) {\r\n this.confirmationPopupService\r\n .confirmQuestion(\"You entered details that could not be edited after submission. Please proceed to click on yes\")\r\n .then((confirm) => {\r\n if (confirm.isConfirmed) {\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInMonths = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInMonths + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.expeInYears = parseInt(this.BgVerificationComponent.candidateBGVerificationData.expeInYears + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.noOfKids = parseInt(this.BgVerificationComponent.candidateBGVerificationData.noOfKids + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.presAddrResiType + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType = parseInt(this.BgVerificationComponent.candidateBGVerificationData.permAddrResiType + \"\");\r\n this.BgVerificationComponent.candidateBGVerificationData[\"FinalSubmit\"] = true;\r\n\r\n this.commonApiService.updateBGVericationData(this.BgVerificationComponent.candidateBGVerificationData).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.BgVerificationComponent.candidateBGVerificationData.presAddrContactNo_code = \"\";\r\n this.ToastrService.success(\"Updated successfully\");\r\n this.router.navigate(['app/profile-active-applications']);\r\n }\r\n } else {\r\n\r\n this.ToastrService.error(data.meta.error.errorMessage);\r\n }\r\n }, (error) => {\r\n\r\n this.ToastrService.error(error.error.meta.error.errorMessage);\r\n })\r\n //this.router.navigate(['app/profile']);\r\n }\r\n });\r\n } else {\r\n this.ToastrService.error(\"Please provide education details\");\r\n }\r\n }\r\n qualificationLists: any = [];\r\n getQualificationList() {\r\n this.commonApiService.getRefDate(92).subscribe((resp: any) => {\r\n if (resp.status) {\r\n this.qualificationLists = resp.result;\r\n //this.getCourcesListList();\r\n } else { }\r\n }, error => {\r\n })\r\n }\r\n\r\n closeForm() {\r\n this.enableSaveButton = false;\r\n this.educationViewModel = {\r\n \"id\": 0,\r\n \"candProfId\": this.BgVerificationComponent.profileid,\r\n \"qualificationId\": 0,\r\n \"qualification\": \"\",\r\n \"course\": \"\",\r\n \"courseId\": 0,\r\n \"univOrInstitution\": \"\",\r\n \"yearofPassing\": null,\r\n \"durationFrom\": null,\r\n \"durationTo\": null,\r\n \"grade\": \"\",\r\n \"percentage\": null,\r\n };\r\n }\r\n}\r\n","
\n \n
\n
\n
\n \n
\n
\n
\n
{{edu.qualification}}
\n
\n
\n \n

{{edu.durationFrom| date: \"dd/MM/YYYY\"}}

\n

N/A

\n
\n
\n \n

{{edu.durationTo| date: \"dd/MM/YYYY\"}}

\n

N/A

\n
\n
\n \n
\n
\n\n
\n\n
\n
\n \n \n
\n \n\n
\n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n\n
\n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n \n \n
\n \n Required\n \n
\n
\n
\n
\n \n
\n \n
\n \n \n \n \n \n
\n
\n
\n\n\n
\n
\n","import { Component, OnInit, EventEmitter } from '@angular/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\r\n\n@Component({\n selector: 'app-term-service',\n templateUrl: './term-service.component.html',\n styleUrls: ['./term-service.component.scss']\n})\nexport class TermServiceComponent implements OnInit {\n public onClose: EventEmitter = new EventEmitter();\n constructor(public bsModalRef: BsModalRef,) { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n \"Logo\"\n
\n \n
\n\n\n
\n
\n\n

Terms of Service

\n
\n

\n Using this site indicates your acceptance of all the following terms and conditions without limitation or\n qualification.\n

\n
    \n
  • \n Contents on this site, unless otherwise specified, include the following including, but not limited to, the\n text and images contained herein, as well as their arrangement, are the property of ParamInfo. Trademarks used\n or referred to on this website are the property of their respective owners.\n
  • \n
  • \n No part of this site should be construed as conferring by implication, or otherwise, any license or right to\n any copyright, patent, trademark, or other proprietary interest of ParamInfo or any third-party.\n
  • \n
  • \n It is prohibited for visitors to copy, reproduce, republish, download, upload, post, transmit, or distribute\n this site and its contents (or restricted environment) without Param Info’s prior written consent.\n
  • \n
  • \n The Client may download, display, and print one copy of the materials on any one computer solely for his or\n her private, non-commercial use, provided that the material is not modified, and the ownership (copyright,\n trademark, and other proprietary) notices are intact.\n
  • \n
  • \n In providing this information, ParamInfo does not create any business or professional relationship between you\n and ParamInfo.\n
  • \n
  • \n ParamInfo may provide links to services or sites not run by the company, such other sites or services are not\n endorsed or endorsed by ParamInfo. Therefore, ParamInfo does not assume responsibility for them or their\n content. An external link to another site or service is not an endorsement of that site or service. Use of\n information provided on such sites or services, is strictly at your own risk. ParamInfo cannot be held\n responsible for any consequences.\n
  • \n
  • \n In terms of the site and its contents, ParamInfo makes no representations or warranties of any kind with\n respect to this site or any site or service accessible through it.\n
  • \n
  • \n ParamInfo expressly disclaims all express and implied warranties including, but not limited to, the implied\n warranties of merchantability, fitness for a particular purpose, title, and non-infringement.\n
  • \n
  • \n Neither ParamInfo nor its third-party service providers are liable to any party for any direct, indirect,\n incidental, special, exemplary, consequential, or other damages (including, but not limited to, lost profits,\n business interruption, loss of programs or data) without regard to the form of action and whether in contract,\n tort, negligence, strict liability, or otherwise, arising out of or in connection with this site, any content\n on or accessed through this site or any site service linked to, or any copying, displaying, or use thereof.\n
  • \n
  • \n As ParamInfo operates this site in the U.A.E, you agree to submit to the jurisdiction of the state without\n reference to its choice of law rules with respect to these terms of use and any legal action or proceeding\n relating to this site.\n
  • \n
  • \n In any legal action against ParamInfo, you specifically acknowledge that ParamInfo has the right to choose the\n jurisdiction where any legal action against us may be filed.\n
  • \n
  • \n By using this site, you agree that the laws of the State will govern any such proceedings, and we are able to\n make this decision regardless of your location or where you accessed the site.\n
  • \n
  • \n In addition to complying with the laws of the jurisdiction from which you are accessing this site, you agree\n not to access or use the material on this site in violation of such laws.\n
  • \n
  • \n Unless the contrary is explicitly stated herein, all information you submit through this site shall be deemed\n non-confidential and non-proprietary\n
  • \n
  • \n The information you submit here will be accurate and lawful, and you agree not to submit it unless you have\n the legal right to. As the Internet is an open medium, we recommend not submitting information you consider\n confidential.\n
  • \n
  • \n Unauthorized ideas submitted outside of established business relationships may not be considered by\n ParamInfo. The issue of such submissions must be handled with great care to safeguard our interests as well as\n those of our clients.\n
  • \n
  • \n Without an established business relationship, ParamInfo cannot treat any such submission confidentially. Thus,\n we ask you to refrain from submitting unauthorized ideas to ParamInfo via this site.\n
  • \n
  • \n ParamInfo may develop, use, and disclose similar ideas without compensating you or accounting to you when\n ideas are disclosed outside a pre-existing and documented confidential business relationship.\n
  • \n
  • \n ParamInfo will return or destroy any unapproved idea submission that has not been reviewed thoroughly.\n
  • \n
  • \n In any case, if ParamInfo feels reviewing the idea is appropriate, it does so with the understanding that\n ParamInfo will have no obligation to protect or compensate you for the disclosure of your idea.\n
  • \n
  • \n The terms of this stated policy apply to you if you submit any detailed information through this website to\n ParamInfo.\n
  • \n
\n
\n \n
\n
\n
\n \n\n
","import { Component, EventEmitter, OnInit } from '@angular/core';\nimport { CommonApiService } from '../../../shared/services';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { ToastrService } from 'ngx-toastr';\n\n@Component({\n selector: 'app-salary-confirmation',\n templateUrl: './salary-confirmation.component.html',\n styleUrls: ['./salary-confirmation.component.scss']\n})\nexport class SalaryConfirmationComponent implements OnInit {\n salaryDetailsObj;\n public onClose: EventEmitter = new EventEmitter();\n isLoader: boolean = false;\n isSubmitLoader: boolean = false;\n convertionRate: any;\n currentcConvertionRate: any;\n currentcConvertionRateTwoDecimal: any;\n convertRateCandidateLocation: any;\n percentageOfHike: any;\n salaryClientCurrency: number;\n salaryCandidateCurrency: number;\n\n salaryConformation = {\n remarks: \"\",\n approve: true,\n canPrfId: 0,\n jobId: 0\n }\n constructor(\n public bsModalRef: BsModalRef,\n private apiService: CommonApiService,\n private toastr: ToastrService,\n ) { }\n\n // clientCurrency: jobActiveApplication.epCurrency,\n // candidateCurrency: jobActiveApplication.opCurrency,\n\n // clientSalary: jobActiveApplication.epSalary,\n // candidatePreviousSalaryPerMonth:jobActiveApplication.opTakeHomePerMonth,\n\n // jobId:jobActiveApplication.jobId,\n // canPrfId:candidateProId,\n // offeredSalary : jobActiveApplication.epSalary,\n // candidateCity:jobActiveApplication.epSalary,\n // candidateCountry:jobActiveApplication.epSalary,\n // clientCity:jobActiveApplication.epSalary,\n // clientCountry:jobActiveApplication.epSalary,\n // todaysDate:new Date()\n getTodaysConvertionRate(fromSymbol, toSymbol) {\n if (fromSymbol != toSymbol) {\n this.isLoader = true;\n let convertionFromTo = fromSymbol + '_' + toSymbol;\n if (fromSymbol != null) {\n var obj = {\n frmCurn: fromSymbol,\n toCurn: toSymbol,\n };\n this.apiService.getTodaysConvertionRate(obj).subscribe(\n (resp: any) => {\n this.calcConversionRate(resp.result);\n },\n (error) => {\n this.isLoader = false;\n this.toastr.error('Error');\n }\n );\n }\n }\n else {\r\n this.calcConversionRate(1);\r\n }\n }\n private calcConversionRate(convertionRate) {\n this.convertionRate = parseFloat(convertionRate || 1);\n this.currentcConvertionRate = this.convertionRate;\n this.salaryClientCurrency = (this.salaryDetailsObj.offeredSalary)?.toFixed(2) || 0 as any;\n this.salaryCandidateCurrency = (this.salaryDetailsObj.candidatePreviousSalaryPerMonth / this.currentcConvertionRate)?.toFixed(2) || 0 as any;\n this.currentcConvertionRateTwoDecimal = this.convertionRate?.toFixed(2) || 0;\n\n var currentSalary = this.salaryDetailsObj.candidatePreviousSalaryPerMonth / 1 as any;\n var offeredSalary = this.salaryDetailsObj.clientSalary * this.currentcConvertionRate as any;\n var difference = ((offeredSalary - currentSalary) / currentSalary) * 100;\n\n var roundedPercent = Math.round(100 * difference) / 100;\n this.percentageOfHike = (roundedPercent || 0).toFixed(2);\n if (difference == Infinity) {\n this.percentageOfHike = 0;\n }\r\n }\n\n salaryConfirm(isApprove) {\n this.salaryConformation.approve = isApprove;\n this.salaryConformation.canPrfId = this.salaryDetailsObj.canPrfId;\n this.salaryConformation.jobId = this.salaryDetailsObj.jobId;\n this.isSubmitLoader = true;\n this.apiService.reOfferApprove(this.salaryConformation).subscribe(\n (resp: any) => {\n this.isSubmitLoader = false;\n if (resp.status) {\n this.toastr.success(resp.result);\n this.onClose.emit({});\n this.bsModalRef.hide();\n }\n },\n (error) => {\n this.isSubmitLoader = false;\n this.toastr.error('Error');\n }\n );\n }\n ngOnInit() {\n this.getTodaysConvertionRate(this.salaryDetailsObj.clientCurrency, this.salaryDetailsObj.candidateCurrency)\n }\n\n}\n","
\n \n
\n
\n
\n
\n \"salary-confirm\"\n
\n
Confirm Package
\n click accept / reject to confirm the salary package for this position\n
\n
\n
\n
\n
\n \n {{ (salaryDetailsObj.candidatePreviousSalaryPerMonth | number:'0.0' ) || 'N/A' }}\n {{ salaryDetailsObj.candidateCurrency }} / Month\n\n\n \n
\n
\n \n {{ (salaryCandidateCurrency | number:'0.0') }} {{ salaryDetailsObj.clientCurrency || 'N/A' }} / Month\n\n \n
\n
\n
\n
Salary Offered : {{ ( salaryDetailsObj.offeredSalary | number:'0.0' ) }} {{\n salaryDetailsObj.clientCurrency }}\n / Month
\n
or {{ ((salaryDetailsObj.offeredSalary * 12 | number:'0.0') || 0)}}\n {{ salaryDetailsObj.clientCurrency }} / Year
\n
0\">\n Which is {{ percentageOfHike > 0 ? 'more than' : '' }} : {{ percentageOfHike || 0}}%\n
\n
\n
\n
\n
\n

1 {{ salaryDetailsObj.clientCurrency }} =\n {{ currentcConvertionRateTwoDecimal || 'N/A' }} {{ salaryDetailsObj.candidateCurrency }}\n

\n \n
\n
\n Avg. Conversion Rate \n

{{ salaryDetailsObj?.todaysDate | date:'dd MMM YYYY' }}

\n
\n
\n
\n \n\n\n
\n \n \n
\n \n
\n
\n
\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs/internal/BehaviorSubject';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { BGVModelData } from '../../core/models/bgverificationModel';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BVGVerificationObject {\r\n\r\n private BVGObject: BehaviorSubject = new BehaviorSubject(null);\r\n public currentBVGObj: Observable = this.BVGObject.asObservable();\r\n SetBVGObject(object) {\r\n this.BVGObject.next(object);\r\n }\r\n\r\n private CountryList: BehaviorSubject = new BehaviorSubject(null);\r\n public Countrys: Observable = this.CountryList.asObservable();\r\n SetCountryList(object) {\r\n this.CountryList.next(object);\r\n }\r\n\r\n constructor() { }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http'\r\nimport { environment } from '../../../environments/environment';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { throwError, Observable } from 'rxjs';\r\nimport 'rxjs/add/operator/catch';\r\nimport 'rxjs/add/observable/throw';\r\nimport 'rxjs/Observable';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CommonApiService {\r\n\r\n private candidatePrimaryDtls: any = null;\r\n\r\n constructor(private http: HttpClient) { }\r\n getJobList() {\r\n let url = `${environment.baseUrl}/Opening/JobsList`;\r\n return this.http.get(url);\r\n }\r\n getBlogPost() {\r\n let url = `${environment.baseUrl}/Blogs/GetActiveBlogs`;\r\n return this.http.get(url);\r\n }\r\n unsubcribeMail(obj) {\r\n return this.http.post(`${environment.baseUrl}/Candidate/Unsubscribe`, obj);\r\n }\r\n getArticldetails(id) {\r\n let url = `${environment.baseUrl}/Blogs/${id}`;\r\n return this.http.get(url);\r\n }\r\n getTestimonials() {\r\n let url = `${environment.baseUrl}/Testimonials/GetActiveTestimonials`;\r\n return this.http.get(url);\r\n }\r\n getActiveApplication() {\r\n let url = `${environment.baseUrl}/Requirement/GetOpeningDataForParam`;\r\n return this.http.get(url);\r\n }\r\n getJobDetails(OpID: any) {\r\n let url = `${environment.baseUrl}/Opening/${OpID}`;\r\n return this.http.get(url);\r\n }\r\n getImage(imageUrl) {\r\n return this.http.get(imageUrl, { responseType: 'arraybuffer' });\r\n }\r\n getCandidateFiles(canPrfId, jobId) {\r\n let url = `${environment.baseUrl}/Candidate/GetCandidate/Files/${canPrfId}/${jobId}`;\r\n return this.http.get(url);\r\n }\r\n getCandidateRequestedFiles​(canPrfId, jobId) {\r\n let url = `${environment.baseUrl}/Candidate/GetCandidateRequestedFiles/${canPrfId}/${jobId}`;\r\n return this.http.get(url);\r\n }\r\n getCommonLists() {\r\n return this.http.get(`${environment.baseUrl}/Common/Types`);\r\n }\r\n getRefDate(id) {\r\n var refData = [id];\r\n return this.http.post(`${environment.baseUrl}/Common/RefData`, refData);\r\n }\r\n saveFiles(obj) {\r\n return this.http.post(\r\n `${environment.baseUrl}/Candidate/UploadCandidateFile`,\r\n obj\r\n );\r\n }\r\n uploadCandidateFile(obj) {\r\n let url = `${environment.baseUrl}/Candidate/UploadCandidateFile`;\r\n return this.http.post(url, obj);\r\n }\r\n getCandidateActiveJobs(canProfId: any) {\r\n let url = `${environment.baseUrl}/Opening/GetCandidateActiveJobs/${canProfId}`;\r\n return this.http.get(url);\r\n }\r\n getCandidateArchivedJobs(canProfId: any) {\r\n let url = `${environment.baseUrl}/Opening/GetCandidateArchivedJobs/${canProfId}`;\r\n return this.http.get(url);\r\n }\r\n getOpeningJobInfo(OpID: any) {\r\n let url = `${environment.baseUrl}/Opening/GetJobInfo/${OpID}`;\r\n return this.http.get(url);\r\n }\r\n getCountryWiseJobCounts() {\r\n let url = `${environment.baseUrl}/Opening/GetCountryWiseJobCounts`;\r\n return this.http.get(url);\r\n }\r\n getCountries() {\r\n let url = `${environment.baseUrl}/Common/GetCountries`;\r\n return this.http.get(url);\r\n }\r\n getCities(OpID: any) {\r\n let url = `${environment.baseUrl}/Common/GetCities/${OpID}`;\r\n return this.http.get(url);\r\n }\r\n\r\n createCandidate(candiatedetails: any) {\r\n return this.http.post(\r\n `${environment.baseUrl}/Candidate`,\r\n candiatedetails\r\n ).pipe(catchError(this.errorHandler));\r\n }\r\n UpdateCandiate(candiatedetails: any) {\r\n return this.http.put(\r\n `${environment.baseUrl}/Candidate`,\r\n candiatedetails\r\n ).pipe(catchError(this.errorHandler))\r\n }\r\n createUpdateJobCandidate(candiatedetails: any) {\r\n return this.http.put(\r\n `${environment.baseUrl}/Candidate/Portal/Job`,\r\n candiatedetails\r\n ).pipe(catchError(this.errorHandler))\r\n\r\n }\r\n getJobCandidateApply(candProfId: any,JobId) {\r\n return this.http.get(\r\n `${environment.baseUrl}/Candidate/Portal/${candProfId}/Job/${JobId}`\r\n ).pipe(catchError(this.errorHandler))\r\n\r\n }\r\n getRefMasterData(groupId: number) {\r\n return this.http.post(\r\n `${environment.baseUrl}/Common/RefData`, [groupId]\r\n );\r\n }\r\n getCandidateProfileDetails(profileId: number, Jobid: number) {\r\n let url = `${environment.baseUrl}/Candidate/${profileId}/${Jobid}`;\r\n return this.http.get(url);\r\n }\r\n\r\n public get getCandidatePrimaryDetails(): any {\r\n return this.candidatePrimaryDtls;\r\n }\r\n\r\n getCandidatePrimaryInfo(profileemail: any) {\r\n let url = `${environment.baseUrl}/BGV/GetCandidate/Info?EmailId=${profileemail}`;\r\n return this.http.get(url).pipe(map(candidate => {\r\n // store user details and jwt token in local storage to keep user logged in between page refreshes\r\n this.candidatePrimaryDtls = candidate;\r\n return candidate;\r\n }));;\r\n }\r\n getSkillSet() {\r\n return this.http.get(`${environment.baseUrl}/Technology`);\r\n }\r\n getTodaysConvertionRate(obj) {\r\n return this.http.post(`${environment.baseUrl}/Candidate/CurrConv`, obj);\r\n }\r\n getRecruiterDetails(canProfId: any, jobid: number) {\r\n let url = `${environment.baseUrl}/BGV/getRecruiterDetails/${canProfId}/${jobid}`;\r\n return this.http.get(url);\r\n }\r\n\r\n getSimilarJobsList(similarJobsListObje: any) {\r\n let url = `${environment.baseUrl}/Opening/GetCandidateSimilarJobs?` + similarJobsListObje;\r\n return this.http.get(url);\r\n }\r\n getTypeOfMasterDta() {\r\n let url = `${environment.baseUrl}/Common/Types`;\r\n return this.http.get(url);\r\n }\r\n\r\n reOfferApprove(obj: any) {\r\n return this.http.post(\r\n `${environment.baseUrl}/Candidate/ReOfferApprove`,\r\n obj\r\n );\r\n }\r\n UpdatePrimaryDetails(candiatedetails: any) {\r\n return this.http.post(\r\n `${environment.baseUrl}/BGV/UpdateCandidate/Info`,\r\n candiatedetails\r\n );\r\n }\r\n UpdateCandidateFile(formDt: any) {\r\n return this.http.post(\r\n `${environment.baseUrl}/Candidate/UpdateCandidateFile`,\r\n formDt\r\n );\r\n }\r\n\r\n getBGVericationData(CanProfId: number, JobId: number) {\r\n let url = `${environment.baseUrl}/BGV/${CanProfId}/${JobId}`;\r\n return this.http.get(url);\r\n }\r\n getCandidateEmpEduCertDtls(CanProfId: number) {\r\n let url = `${environment.baseUrl}/BGV/GetCandidateEmpEduCertDtls/${CanProfId}`;\r\n return this.http.get(url);\r\n }\r\n\r\n updateBGVericationData(bgvObj: any) {\r\n return this.http.post(\r\n `${environment.baseUrl}/BGV`,\r\n bgvObj\r\n );\r\n }\r\n updateBGVEmployeerData(bgvObj: any) {\r\n return this.http.post(\r\n `${environment.baseUrl}/BGV/SaveCandidateEmpBGV`,\r\n bgvObj\r\n );\r\n }\r\n saveCertificationData(bgvObj: any) {\r\n return this.http.post(\r\n `${environment.baseUrl}/Candidate/CreateCandidateCertification`,\r\n bgvObj\r\n );\r\n }\r\n\r\n updateCandidateEduBGV(eduObj: any) {\r\n return this.http.post(\r\n `${environment.baseUrl}/BGV/SaveCandidateEduBGV`,\r\n eduObj\r\n ).catch(this.errorHandler);\r\n }\r\n\r\n\r\n getJobDescription(jobId: number) {\r\n return this.http.get(\r\n `${environment.baseUrl}/Opening/JobDescription/${jobId}`\r\n );\r\n }\r\n\r\n //user online status\r\n getUserCurrentStatus(userIds: number[], emailIds: string[], userTypes: number[]): { apiCall: Observable, timeInterval: number } {\r\n var postModel = { userIds: userIds, emailIds: emailIds, userTypes: userTypes };\r\n var apiCall = this.http.post(`${environment.baseUrl}/Account/GetUserCurrentStatus`, postModel);\r\n return { apiCall: apiCall, timeInterval: environment.onlineStatusInterval };\r\n }\r\n\r\n getgenderList() {\r\n return this.http.get(`${environment.baseUrl}/Ref/JobCandiate/Genders`);\r\n }\r\n getMaritalStatusList() {\r\n return this.http.get(`${environment.baseUrl}/Ref/JobCandiate/MaritalStatus`);\r\n }\r\n \r\n getLanguagePreferences() {\r\n return this.http.get(`${environment.baseUrl}/Ref/JobCandiate/LanguagePreferences`);\r\n }\r\n getVisaPreferences() {\r\n return this.http.get(`${environment.baseUrl}/Ref/JobCandiate/VisaPreferences`);\r\n }\r\n getRegions() {\r\n return this.http.get(`${environment.baseUrl}/Ref/JobCandiate/Regions`);\r\n }\r\n getDrivingLicenses() {\r\n return this.http.get(`${environment.baseUrl}/Ref/JobCandiate/DrivingLicenses`);\r\n }\r\n getDomains() {\r\n return this.http.get(`${environment.baseUrl}/Ref/Job/Domains`);\r\n }\r\n getCommonJobListById(id) {\r\n var refData = [id];\r\n return this.http.post(`${environment.baseUrl}/Common/RefData`, refData);\r\n }\r\n getWorkPatterns() {\r\n return this.http.get(`${environment.baseUrl}/Ref/Job/WorkPatterns`);\r\n }\r\n\r\n getJobTenures() {\r\n return this.http.get(`${environment.baseUrl}/Ref/Job/tenures`);\r\n }\r\n\r\n getTeamRoles() {\r\n return this.http.get(`${environment.baseUrl}/Ref/Job/TeamRoles`);\r\n }\r\n\r\n\r\n errorHandler(error) {\r\n return throwError(error)\r\n }\r\n\r\n getCountryBenifits(cityId:any){\r\n return this.http.get(`${environment.baseUrl}/Common/Country/${cityId}/Benefits/Salary`)\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-before-login',\n templateUrl: './before-login.component.html',\n styleUrls: ['./before-login.component.scss']\n})\nexport class BeforeLoginComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n
\n \n
\n \n \n
\n"," \nimport { Directive, ElementRef, HostListener } from '@angular/core';\n@Directive({\n selector: '[appMaxNumber]'\n})\nexport class MaxNumberDirective {\n private navigationKeys = [\n 'Backspace',\n 'Delete',\n 'Tab',\n 'Escape',\n 'Enter',\n 'Home',\n 'End',\n 'ArrowLeft',\n 'ArrowRight',\n 'Clear',\n 'Copy',\n 'Paste'\n ];\n inputElement: HTMLElement;\n constructor(public el: ElementRef) {\n this.inputElement = el.nativeElement;\n }\n\n @HostListener('keydown', ['$event'])\n onKeyDown(e: KeyboardEvent) {\n if (\n this.navigationKeys.indexOf(e.key) > -1 || // Allow: navigation keys: backspace, delete, arrows etc.\n (e.key === 'a' && e.ctrlKey === true) || // Allow: Ctrl+A\n (e.key === 'c' && e.ctrlKey === true) || // Allow: Ctrl+C\n (e.key === 'v' && e.ctrlKey === true) || // Allow: Ctrl+V\n (e.key === 'x' && e.ctrlKey === true) || // Allow: Ctrl+X\n (e.key === 'a' && e.metaKey === true) || // Allow: Cmd+A (Mac)\n (e.key === 'c' && e.metaKey === true) || // Allow: Cmd+C (Mac)\n (e.key === 'v' && e.metaKey === true) || // Allow: Cmd+V (Mac)\n (e.key === 'x' && e.metaKey === true) // Allow: Cmd+X (Mac)\n ) {\n // let it happen, don't do anything\n return;\n }\n // Ensure that it is a number and stop the keypress\n if (\n (e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) &&\n (e.keyCode < 96 || e.keyCode > 105)\n ) {\n e.preventDefault();\n }\n }\n\n @HostListener('paste', ['$event'])\n onPaste(event: ClipboardEvent) {\n event.preventDefault();\n const pastedInput: string = event.clipboardData\n .getData('text/plain')\n .replace(/\\D/g, ''); // get a digit-only string\n document.execCommand('insertText', false, pastedInput);\n }\n\n @HostListener('drop', ['$event'])\n onDrop(event: DragEvent) {\n event.preventDefault();\n const textData = event.dataTransfer.getData('text').replace(/\\D/g, '');\n this.inputElement.focus();\n document.execCommand('insertText', false, textData);\n }\n}","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgbDate } from '@ng-bootstrap/ng-bootstrap';\r\ndeclare var moment: any;\r\n@Component({\r\n selector: 'app-personal-information',\r\n templateUrl: './personal-information.component.html',\r\n styleUrls: ['./personal-information.component.scss']\r\n})\r\nexport class PersonalInformationComponent implements OnInit {\r\n //@Output() changeWizard: EventEmitter<{ 'buttonType': string, 'currentPage': number }>;\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n validationFlag: boolean = false;\r\n maxDate: Date;\r\n datePickerConfig = {\r\n dateInputFormat: 'DD MMM YYYY',\r\n containerClass: 'theme-green',\r\n showWeekNumbers: false,\r\n isAnimated: true,\r\n adaptivePosition: true,\r\n width: 400,\r\n height: 300\r\n };\r\n constructor(public JobApplication: JobApplicationComponent, public datepipe: DatePipe, private toastr: ToastrService) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n if (this.CheckDOBFlag == true) {\r\n AvailindexIs = AvailindexIs - 1;\r\n }\r\n this.CheckVaribale = this.fildOfCandidateDetails[0];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[0]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n\r\n }\r\n CheckVaribale: any = {}\r\n checkOpeningPREF() {\r\n this.JobApplication.candidateProfileDetails.fullNameInPp = this.JobApplication.candidateProfileDetails.fullNameInPp.trim();\r\n this.JobApplication.candidateProfileDetails.fullName = this.JobApplication.candidateProfileDetails.fullName.trim();\r\n this.validationFlag = true;\r\n if (this.JobApplication.candidateProfileDetails.validPpflag == null) {\r\n // this.toastr.warning('Please provide all information requested');\r\n return false;\r\n }\r\n\r\n if (this.JobApplication.candidateProfileDetails.validPpflag == true && (this.JobApplication.candidateProfileDetails.fullNameInPp == null || this.JobApplication.candidateProfileDetails.fullNameInPp == \"\")) {\r\n // this.toastr.warning('Please enter name as pasport ');\r\n return false;\r\n }\r\n if (this.JobApplication.candidateProfileDetails.validPpflag == false && (this.JobApplication.candidateProfileDetails.fullName == null || this.JobApplication.candidateProfileDetails.fullName == \"\")) {\r\n // this.toastr.warning('Please enter full name');\r\n return false;\r\n }\r\n\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n if (this.requiredOrNotFlag == 1) {\r\n this.validationFlag = true;\r\n if (this.CheckDOBFlag == true) {\r\n if (this.JobApplication.candidateProfileDetails.candidateDOB == null || this.JobApplication.candidateProfileDetails.candidateDOB == \"\") {\r\n //this.toastr.warning('Select valid date of birth');\r\n return false;\r\n }\r\n }\r\n }\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n\r\n }\r\n CheckDOBFlag: boolean = false;\r\n CheckNameFlag: boolean = false;\r\n checkDOBScreen() {\r\n //if (this.CheckVaribale.fieldCode == \"CN\") {\r\n var indexofDOB = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(\"DOB\");\r\n if (indexofDOB != -1) {\r\n this.CheckDOBFlag = true;\r\n this.requiredOrNotFlag = this.application.openingPREFViewModel[indexofDOB].displayFlag;\r\n } else {\r\n this.CheckDOBFlag = false;\r\n }\r\n var CheckNameFlag = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(\"CN\");\r\n if (CheckNameFlag != -1) {\r\n this.CheckNameFlag = true;\r\n } else {\r\n this.CheckNameFlag = false;\r\n }\r\n //}\r\n }\r\n\r\n requiredOrNotFlag: number = 0;\r\n passPortFlag: boolean = false;\r\n ngOnInit(): void {\r\n var passPortFlag = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(\"PP\");\r\n if (passPortFlag != -1) {\r\n this.passPortFlag = true;\r\n } else {\r\n this.passPortFlag = false;\r\n }\r\n this.maxDate = new Date();\r\n this.maxDate.setFullYear(this.maxDate.getFullYear() - 10);\r\n\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n //this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\r\n this.checkDOBScreen();\r\n if (this.JobApplication.candidateProfileDetails.candidateDOB != null && this.JobApplication.candidateProfileDetails.candidateDOB != \"\" && this.JobApplication.candidateProfileDetails.candidateDOB != undefined) {\r\n var dateis = new Date(this.JobApplication.candidateProfileDetails.candidateDOB);\r\n var x = dateis.getFullYear() + \" \" + (dateis.getUTCMonth() + 1) + \" \" + dateis.getDate();\r\n this.JobApplication.candidateProfileDetails.candidateDOB = new Date(x);\r\n }\r\n }\r\n ngOnChanges() {\r\n this.checkDOBScreen();\r\n }\r\n onDateChange(newDate: Date) {\r\n this.JobApplication.candidateProfileDetails.candidateDOB = new Date(newDate);\r\n }\r\n\r\n}\r\n","
Personal Information
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Full Name

\r\n
\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n

Date of Birth

\r\n\r\n
\r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Please provide all information\r\n requested. A partially filled application may not be considered for\r\n review.\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, EventEmitter, Input, OnInit, Output, ElementRef } from '@angular/core';\nimport { JobApplicationComponent } from '../../job-application.component';\nimport { CommonApiService } from '../../../../shared/services';\nimport { ToastrService } from 'ngx-toastr';\r\n\n@Component({\n selector: 'app-EDUeducation-details',\n templateUrl: './education-details.component.html',\n styleUrls: ['./education-details.component.scss']\n})\nexport class EDUEducationDetailsComponent implements OnInit {\n @Input() application: any;\n @Input() currentOpeningPREF: any = {};\n @Input() fildOfCandidateDetails: any;\n @Output() valueChange = new EventEmitter();\n validationFlag: boolean = false;\n openingQualification: any = []\n constructor(private toastr: ToastrService,public JobApplication: JobApplicationComponent, private commonApiService: CommonApiService, private el: ElementRef) {\n // this.changeWizard = new EventEmitter();\n }\n next() {\n this.checkOpeningPREF();\n }\n previous() {\n this.previousCheckValue();\n }\n previousCheckValue() {\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\n this.valueChange.emit(this.currentOpeningPREF);\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\n if (ExistindexIs != -1) {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.valueChange.emit(this.currentOpeningPREF);\n } else {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\n this.previousCheckValue();\n }\n }\n }\n CheckVaribale: any = {}\n checkOpeningPREF() {\n if (this.qualification != null && this.course != null) {\n this.addQualification();\r\n }\n \n if ((this.JobApplication.CandidateOpeningList == null || this.JobApplication.CandidateOpeningList?.length == 0) && this.requiredOrNotFlag == 1) {\n this.validationFlag = true;\n return false;\r\n }\n\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\n this.valueChange.emit(this.currentOpeningPREF);\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\n if (ExistindexIs != -1) {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\n this.valueChange.emit(this.currentOpeningPREF);\n } else {\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\n this.checkOpeningPREF();\n }\n }\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\n\n }\n save() {\n\n }\n\n\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\r\n }\r\n requiredOrNotFlag: number = 0;\n qualification: number;\n course: number;\n addFalg: boolean = false;\n addQualification() {\n this.addFalg = true;\n if (this.qualification == null) {\n return false;\r\n }\n if (this.course == null) {\n return false;\r\n }\n var checkList = this.JobApplication.CandidateOpeningList.filter(x => x.qualificationId == this.qualification && x.courseId == this.course);\n if (checkList.length > 0) {\n this.toastr.warning(\"This qualification already available.\");\n return false;\r\n }\n var obj = {\r\n id: 0,\r\n qualificationId: this.qualification,\r\n qualification: this.JobApplication.qualificationLists.filter(a => a.id == this.qualification)[0].rmvalue,\r\n courseId: this.course,\r\n course: this.JobApplication.CourseLists.filter(a => a.id == this.course)[0].rmvalue,\r\n }\r\n this.JobApplication.CandidateOpeningList.push(obj);\r\n this.addFalg = false;\r\n this.qualification = null;\r\n this.course = null;\r\n\r\n }\n removequalification(index) {\n this.JobApplication.CandidateOpeningList.splice(index, 1);\n }\n}\n","
Education Details
\n
\n
\n
\n
\n
\n
\n
\n \n \n {{ c.rmvalue }}\n \n \n \n\n
\n
\n \n Required\n \n
\n
\n \n Required qualifications\n \n
\n
\n
\n
\n \n \n {{ c.rmvalue }}\n \n \n \n
\n
\n \n Required\n \n
\n \n
\n
\n \n
\n
\n
\n
\n\n
\n
\n
Qualification
\n
Course
\n
Action
\n
\n
\n\n
\n {{ql.qualification}}\n
\n
\n {{ql.course}}\n
\n
\n \n
\n
\n
\n\n\n
\n \n \n \n
\n
\n\n
\n\n
\n
\n
\n
\n \n
\n
\n
\n\n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ThankYouComponent } from '../../shared/component/thank-you/thank-you.component';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { User, userDetails } from '../../core/models/user';\r\nimport { AuthenticationService } from '../../core/services/authentication.service';\r\nimport { CommonApiService } from '../../shared/services';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport {\r\n animate,\r\n state,\r\n style,\r\n transition,\r\n trigger,\r\n} from '@angular/animations';\r\nimport { SortByPipe } from '../../shared/pipes';\r\n@Component({\r\n selector: 'app-job-application',\r\n templateUrl: './job-application.component.html',\r\n styleUrls: ['./job-application.component.scss'],\r\n animations: [\r\n trigger('slide_in_out', [\r\n state(\r\n 'slide_in',\r\n style({\r\n width: '45%',\r\n right: '0',\r\n // css styles when the element is in slide_in\r\n })\r\n ),\r\n state(\r\n 'slide_out',\r\n style({\r\n width: '45%',\r\n right: '-45%',\r\n // css styles when the element is in slide_out\r\n })\r\n ),\r\n // animation effect when transitioning from one state to another\r\n transition('slide_in <=> slide_out', animate(500)),\r\n ]),\r\n ],\r\n})\r\nexport class JobApplicationComponent implements OnInit {\r\n jobId: number = 0;\r\n sourceId: any = 5; // 5 means careerportals\r\n currentUser: User;\r\n userPrimaryDetails: userDetails;\r\n candidatePrimaryDetails: any = {};\r\n currentPage: number = 1;\r\n userApplyJob: boolean = false;\r\n // { \"fieldCode\": \"CL\", \"fieldDesc\": \"Current Location\", \"dynamic\": true, displayFlag: 2 },fildOfCandidateDetails: any = [{ \"fieldCode\": \"PP\", \"fieldDesc\": \"Passport\", \"dynamic\": true }, { \"fieldCode\": \"CN\", \"fieldDesc\": \"CandidateName\", \"dynamic\": true }, { \"fieldCode\": \"GEN\", \"fieldDesc\": \"Gender\", \"dynamic\": true }, { \"fieldCode\": \"MS\", \"fieldDesc\": \"MaritalStatus\", \"dynamic\": true }, { \"fieldCode\": \"ES\", \"fieldDesc\": \"EmploymentStatus\", \"dynamic\": true }, { \"fieldCode\": \"NA\", \"fieldDesc\": \"Nationality\", \"dynamic\": false }, { \"fieldCode\": \"NP\", \"fieldDesc\": \"NoticePeriod\", \"dynamic\": true }, { \"fieldCode\": \"RJC\", \"fieldDesc\": \"ReasonforJobChange\", \"dynamic\": false }, { \"fieldCode\": \"TEXP\", \"fieldDesc\": \"TotalExperience\", \"dynamic\": false }, { \"fieldCode\": \"CD\", \"fieldDesc\": \"ContactDetails\", \"dynamic\": false }, { \"fieldCode\": \"CP\", \"fieldDesc\": \"CurrentPackage\", \"dynamic\": true }, { \"fieldCode\": \"PPP\", \"fieldDesc\": \"Educations\", \"dynamic\": true }, { \"fieldCode\": \"EP\", \"fieldDesc\": \"ExpectedPackage\", \"dynamic\": true }, { \"fieldCode\": \"SK\", \"fieldDesc\": \"Skils\", \"dynamic\": false }, { \"fieldCode\": \"UR\", \"fieldDesc\": \"UploadResume\", \"dynamic\": true }, { \"fieldCode\": \"VP\", \"fieldDesc\": \"VideoProfile\", \"dynamic\": true }]\r\n fildOfCandidateDetails: any = [\r\n { \"fieldCode\": \"PP\", \"fieldDesc\": \"Passport\", \"dynamic\": true, displayFlag: 2 },\r\n { \"fieldCode\": \"CN\", \"fieldDesc\": \"CandidateName\", \"dynamic\": false, displayFlag: 2 },\r\n { \"fieldCode\": \"GEN\", \"fieldDesc\": \"Gender\", \"dynamic\": true },\r\n { \"fieldCode\": \"NA\", \"fieldDesc\": \"Nationality\", \"dynamic\": true },\r\n { \"fieldCode\": \"MS\", \"fieldDesc\": \"MaritalStatus\", \"dynamic\": true },\r\n { \"fieldCode\": \"CD\", \"fieldDesc\": \"ContactDetails\", \"dynamic\": false, displayFlag: 1 },\r\n { \"fieldCode\": \"ES\", \"fieldDesc\": \"EmploymentStatus\", \"dynamic\": true },\r\n { \"fieldCode\": \"TEXP\", \"fieldDesc\": \"TotalExperience\", \"dynamic\": false, displayFlag: 1 },\r\n { \"fieldCode\": \"NP\", \"fieldDesc\": \"NoticePeriod\", \"dynamic\": false, displayFlag: 1 },\r\n { \"fieldCode\": \"CP\", \"fieldDesc\": \"CurrentPackage\", \"dynamic\": false, displayFlag: 1 },\r\n { \"fieldCode\": \"PPP\", \"fieldDesc\": \"PaySlips\", \"dynamic\": true },\r\n { \"fieldCode\": \"SK\", \"fieldDesc\": \"Skils\", \"dynamic\": false, displayFlag: 2 },\r\n { \"fieldCode\": \"QFT\", \"fieldDesc\": \"Qualification Details\", \"dynamic\": true },\r\n { \"fieldCode\": \"CTF\", \"fieldDesc\": \"Certification\", \"dynamic\": true },\r\n { \"fieldCode\": \"QF\", \"fieldDesc\": \"QUESTIONFORM\", \"dynamic\": true },\r\n { \"fieldCode\": \"UR\", \"fieldDesc\": \"UploadResume\", \"dynamic\": true, displayFlag: 2 },\r\n { \"fieldCode\": \"RJC\", \"fieldDesc\": \"ReasonforJobChange\", \"dynamic\": false, displayFlag: 2 },\r\n { \"fieldCode\": \"VP\", \"fieldDesc\": \"VideoProfile\", \"dynamic\": false, displayFlag: 2 },\r\n\r\n ]\r\n CountriesList: any = []\r\n CityesList: any = []\r\n formWizard: any;\r\n candidateProfileDetails: any = {};\r\n todaysDate = new Date();\r\n application: any = [];\r\n CurrencyMasterData: any = [];\r\n currentOpeningPREF: any = {};\r\n //185 // Question refdataId\r\n reasonForJobChangeGroupId: number = 187; //187 -- reason for jpb change id\r\n reasonForJobChangeMasterData: any = [];\r\n\r\n DesignationGroupId: number = 14; //\r\n DesignationMsterData: number = 14; //\r\n isLoader: boolean;\r\n convertionRate: any;\r\n currentcConvertionRate: any = 1;\r\n currentcConvertionRateTwoDecimal: any;\r\n skillSetLists: any;\r\n paySlipfilesList: any = [];\r\n resumefilesList: any = [];\r\n videofilesList: any = [];\r\n recordedData: any;\r\n recDataBlob: any;\r\n\r\n googleDriveResumeFiles: any = [];\r\n googleDrivePaySlipsFiles: any = [];\r\n isShow: any = false;\r\n currentCountryId = 0;\r\n previousCountryId = 0;\r\n candidateCirtificates: any = [];\r\n slider_state: string = 'slide_out';\r\n\r\n qualificationLists: any = [];\r\n openingQualification: any = [];\r\n CourseLists: any = [];\r\n openingCourseLists: any = [];\r\n CandidateOpeningList: any = [];\r\n CertificationList: any = [];\r\n\r\n constructor(\r\n private modalService: NgbModal,\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private apiService: CommonApiService,\r\n public fb: FormBuilder,\r\n private authenticationService: AuthenticationService\r\n ) {\r\n this.authenticationService.currentUser.subscribe((x) => (this.currentUser = x));\r\n }\r\n ngOnInit(): void {\r\n this.route.queryParams.subscribe((params) => {\r\n this.jobId = params['jobid'];\r\n this.sourceId = params['sf'] == null || params['sf'] == undefined ? 5 : params['sf'];\r\n this.getJobInfo();\r\n });\r\n }\r\n getSkillsList(skillset: any = '', edit: boolean = false) {\r\n this.apiService.getSkillSet().subscribe((resp: any) => {\r\n if (resp.status) {\r\n this.skillSetLists = resp.result;\r\n } else {\r\n this.toastr.error(resp.meta.error.errorMessage);\r\n }\r\n }, (error) => {\r\n this.toastr.error('Error');\r\n });\r\n }\r\n\r\n get candidateLocationRate(): any {\r\n return ((this.candidateProfileDetails?.cpTakeHomeSalPerMonth / 1).toFixed(0) || 0);\r\n }\r\n\r\n get clientLocationRate() {\r\n var equRate = this.candidateProfileDetails?.cpTakeHomeSalPerMonth / this.currentcConvertionRate;\r\n if (equRate > 1) {\r\n return (this.candidateProfileDetails?.cpTakeHomeSalPerMonth / this.currentcConvertionRate).toFixed(0);\r\n } else {\r\n return 0;\r\n }\r\n }\r\n\r\n get equivalentToInMonth() {\r\n if (this.candidateProfileDetails?.epTakeHomeSalPerMonth) {\r\n return (\r\n parseInt(this.candidateProfileDetails?.epTakeHomeSalPerMonth) /\r\n this.currentcConvertionRate || 0\r\n ).toFixed(0);\r\n }\r\n return 0;\r\n }\r\n\r\n get equivalentToInYear() {\r\n if (this.candidateProfileDetails?.epTakeHomeSalPerMonth) {\r\n return (\r\n parseInt(this.candidateProfileDetails?.epTakeHomeSalPerMonth) * 12 || 0\r\n ).toFixed(0);\r\n }\r\n return 0;\r\n }\r\n\r\n get persentage() {\r\n if (\r\n this.candidateProfileDetails?.cpTakeHomeSalPerMonth &&\r\n this.candidateProfileDetails?.epTakeHomeSalPerMonth\r\n ) {\r\n var currentSalary = (this.candidateProfileDetails?.cpTakeHomeSalPerMonth /\r\n this.currentcConvertionRate) as any;\r\n var expectedSalary = (parseInt(\r\n this.candidateProfileDetails?.epTakeHomeSalPerMonth\r\n ) || 0) as any;\r\n var difference =\r\n ((parseInt(expectedSalary) - parseInt(currentSalary)) /\r\n parseInt(currentSalary)) *\r\n 100;\r\n if (difference == Infinity) {\r\n difference = 0;\r\n }\r\n var roundedPercent = Math.round(100 * difference) / 100;\r\n }\r\n\r\n return (roundedPercent || 0).toFixed(2);\r\n }\r\n\r\n submitForm() {\r\n const modalRef = this.modalService.open(ThankYouComponent, {\r\n backdrop: 'static',\r\n centered: true,\r\n size: 'md',\r\n });\r\n modalRef.result.then(\r\n (result) => {\r\n this.router.navigate(['profile']);\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n\r\n getTodaysConvertionRate(fromSymbol, toSymbol) {\r\n if (fromSymbol != toSymbol) {\r\n this.isLoader = true;\r\n let convertionFromTo = fromSymbol + '_' + toSymbol;\r\n var obj = {\r\n frmCurn: fromSymbol,\r\n toCurn: toSymbol,\r\n };\r\n this.apiService.getTodaysConvertionRate(obj).subscribe(\r\n (resp: any) => {\r\n this.calcConversionRate(resp.result);\r\n },\r\n (error) => {\r\n this.isLoader = false;\r\n // this.toastr.error('Error');\r\n }\r\n );\r\n }\r\n else {\r\n this.calcConversionRate(1);\r\n }\r\n }\r\n private calcConversionRate(convertionRate) {\r\n this.convertionRate = parseFloat(convertionRate || 1);\r\n this.currentcConvertionRate = this.convertionRate;\r\n this.currentcConvertionRateTwoDecimal = (\r\n this.convertionRate || 0\r\n ).toFixed(2);\r\n }\r\n\r\n get candidateCountryName() {\r\n if (this.candidateProfileDetails.countryID > 0) {\r\n var countryName = this.CountriesList.find((ele) => {\r\n return ele.id == this.candidateProfileDetails.countryID;\r\n });\r\n return countryName?.name || '';\r\n }\r\n return '';\r\n }\r\n\r\n get candidateCityName() {\r\n this.currentCountryId = this.candidateProfileDetails.countryID;\r\n if (\r\n this.candidateProfileDetails.countryID > 0 &&\r\n this.currentCountryId != this.previousCountryId\r\n ) {\r\n this.previousCountryId = this.candidateProfileDetails.countryID;\r\n this.getCityList();\r\n }\r\n if (this.candidateProfileDetails.currLocationID > 0) {\r\n var countryName = this.CityesList.find((ele) => {\r\n return ele.id == this.candidateProfileDetails.currLocationID;\r\n });\r\n return countryName?.name || '';\r\n }\r\n return '';\r\n }\r\n\r\n getCityList() {\r\n this.apiService.getCities(this.candidateProfileDetails.countryID).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CityesList = data.result;\r\n }\r\n }\r\n },\r\n (error) => {\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[1];\r\n }\r\n );\r\n }\r\n\r\n changeCurrency(eve) {\r\n if (\r\n this.candidateProfileDetails.cpCurrency != '' &&\r\n this.candidateProfileDetails.cpCurrency != undefined\r\n ) {\r\n this.getTodaysConvertionRate(\r\n this.application.currencyName,\r\n this.candidateProfileDetails.cpCurrency\r\n );\r\n } else {\r\n this.convertionRate = 1;\r\n this.currentcConvertionRate = 1;\r\n this.currentcConvertionRateTwoDecimal = 1;\r\n }\r\n }\r\n\r\n getCandidatePrimaryInfo() {\r\n this.apiService\r\n .getCandidatePrimaryInfo(this.userPrimaryDetails.email)\r\n .subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (\r\n data.result != null ||\r\n data.result.length != 0 ||\r\n data.result.length != undefined\r\n ) {\r\n this.candidatePrimaryDetails = data.result;\r\n //if (this.candidatePrimaryDetails.canPrfId != null && this.candidatePrimaryDetails.canPrfId != 0 && this.jobId != null && this.jobId != 0) {\r\n this.getCandidateProfileDetails(this.candidatePrimaryDetails.canPrfId, this.jobId);\r\n //} else {\r\n // window.location.reload();\r\n //}\r\n this.getDesignationMasterData();\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getCountries() {\r\n this.apiService.getCountries().subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CountriesList = data.result;\r\n this.CountriesList.forEach((item) => {\r\n item.phonecode = \"+\" + item.phonecode\r\n })\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getJobInfo() {\r\n this.apiService.getOpeningJobInfo(this.jobId).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.application = data.result;\r\n\r\n this.application.openingPREFViewModel =\r\n this.application?.openingPREFViewModel?.filter((d) => d.displayFlag != 3);\r\n if (!(this.application?.openingQtns?.length > 0)) {\r\n this.application.openingPREFViewModel =\r\n this.application?.openingPREFViewModel?.filter((d) => d.fieldCode != \"QF\");\r\n }\r\n if (this.application?.openingQtns != null && this.application.openingQtns.length > 0\r\n ) {\r\n this.application?.openingQtns?.forEach((element) => {\r\n element['QuestionId'] = element.id;\r\n element['Response'] = '';\r\n });\r\n }\r\n this.getSkillsList();\r\n this.authenticationService.currentUser.subscribe((x) => {\r\n this.currentUser = x;\r\n this.getCountries();\r\n this.getReasonsForJobChangeMasterData();\r\n this.getCurrencyMasterData();\r\n this.userPrimaryDetails = this.currentUser.userDetails;\r\n this.getCandidatePrimaryInfo();\r\n });\r\n this.getQualificationList();\r\n this.getCertificationList();\r\n }\r\n }\r\n },\r\n (error) => {\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[1];\r\n }\r\n );\r\n }\r\n\r\n displaycurrentOpeningPREF(currentValue: any) {\r\n this.currentOpeningPREF = currentValue;\r\n }\r\n\r\n getReasonsForJobChangeMasterData() {\r\n this.apiService.getRefMasterData(this.reasonForJobChangeGroupId).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.reasonForJobChangeMasterData = data.result;\r\n this.reasonForJobChangeMasterData = this.reasonForJobChangeMasterData.sort(function (a, b) {\r\n return (a.id - b.id);\r\n })\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getDesignationMasterData() {\r\n this.apiService.getRefMasterData(this.DesignationGroupId).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.DesignationMsterData = data.result;\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getCurrencyMasterData() {\r\n this.apiService.getRefMasterData(13).subscribe(\r\n (data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CurrencyMasterData = data.result;\r\n }\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getQualificationList() {\r\n this.apiService.getRefDate(92).subscribe(\r\n (resp: any) => {\r\n if (resp.status) {\r\n this.qualificationLists = resp.result;\r\n\r\n this.application.openingQualification.forEach((element) => {\r\n var rmtype = this.qualificationLists.find(\r\n (obj) => obj.id == element.qualification\r\n );\r\n if (rmtype != null) {\r\n element['name'] = rmtype.rmvalue;\r\n //this.openingQualification.push(element)\r\n }\r\n });\r\n //this.openingQualification = this.openingQualification.filter((v, i, a) => a.findIndex(t => (t.qualification === v.qualification)) === i)\r\n this.getCourcesListList();\r\n } else {\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getCourcesListList() {\r\n // course\r\n this.apiService.getRefDate(189).subscribe(\r\n (resp: any) => {\r\n if (resp.status) {\r\n this.CourseLists = resp.result;\r\n this.application.openingQualification.forEach((element) => {\r\n var rmtype = this.CourseLists.find(\r\n (obj) => obj.id == element.course\r\n );\r\n if (rmtype != null) {\r\n element['coursename'] = rmtype.rmvalue;\r\n //this.openingCourseLists.push(element)\r\n }\r\n });\r\n } else {\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n getCertificationList() {\r\n // course\r\n this.apiService.getRefDate(190).subscribe(\r\n (resp: any) => {\r\n if (resp.status) {\r\n this.CertificationList = resp.result;\r\n } else {\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n viewJobDescription() {\r\n this.slider_state =\r\n this.slider_state === 'slide_out' ? 'slide_in' : 'slide_out';\r\n }\r\n\r\n mobileJobDesc() {\r\n this.isShow = !this.isShow;\r\n }\r\n\r\n getCandidateProfileDetails(canPrfId: number, jobId) {\r\n this.apiService.getCandidateProfileDetails(canPrfId, jobId).subscribe(\r\n (data: any) => {\r\n if (this.application?.openingPREFViewModel?.length > 0) {\r\n var passPortFlag = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(\"PP\");\r\n if (passPortFlag != -1) {\r\n this.currentOpeningPREF = this.application.openingPREFViewModel[0];\r\n } else {\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[1];\r\n }\r\n } else {\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[3];\r\n }\r\n\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.userApplyJob = true;\r\n this.candidateProfileDetails = data.result;\r\n this.candidateProfileDetails.epCurrency = this.application.currencyName;\r\n console.log(this.candidateProfileDetails.epCurrency)\r\n this.candidateProfileDetails['id'] = this.currentUser.id; //this.currentUser.id;\r\n this.candidateProfileDetails['resume'] = \"\";//resume bydefault we are doing empty\r\n\r\n this.candidateProfileDetails[\"fullName\"] = this.candidateProfileDetails[\"fullName\"] == null ? this.userPrimaryDetails.firstName : this.candidateProfileDetails[\"fullName\"];\r\n this.candidateProfileDetails[\"fullNameInPp\"] = this.candidateProfileDetails[\"fullNameInPp\"] == null ? this.userPrimaryDetails.firstName : this.candidateProfileDetails[\"fullNameInPp\"];\r\n this.candidateProfileDetails[\"maritalStatus\"] = this.candidateProfileDetails[\"maritalStatus\"] == null ? \"\" : this.candidateProfileDetails[\"maritalStatus\"];\r\n this.candidateProfileDetails[\"gender\"] = this.candidateProfileDetails[\"gender\"] == null ? \"\" : this.candidateProfileDetails[\"gender\"];\r\n this.candidateProfileDetails[\"currOrganization\"] = this.candidateProfileDetails[\"currOrganization\"] == null ? \"\" : this.candidateProfileDetails[\"currOrganization\"];\r\n this.candidateProfileDetails[\"remarks\"] = this.candidateProfileDetails[\"remarks\"] == null ? \"\" : this.candidateProfileDetails[\"remarks\"];\r\n\r\n this.CandidateOpeningList = this.candidateProfileDetails[\"qualifications\"] == null ? [] : this.candidateProfileDetails[\"qualifications\"];\r\n this.candidateCirtificates = this.candidateProfileDetails[\"certififcates\"] == null ? [] : this.candidateProfileDetails[\"certififcates\"];\r\n this.candidateProfileDetails[\"jobId\"] = (this.candidateProfileDetails[\"jobId\"] == null || this.candidateProfileDetails[\"jobId\"] == 0) ? this.jobId : this.candidateProfileDetails[\"jobId\"];\r\n this.candidateProfileDetails[\"alteContactNo\"] = (this.candidateProfileDetails[\"alteContactNo\"] == null || this.candidateProfileDetails[\"alteContactNo\"] == \"\" || this.candidateProfileDetails[\"alteContactNo\"] == undefined || this.candidateProfileDetails[\"alteContactNo\"] == \"undefined \" || this.candidateProfileDetails[\"alteContactNo\"] == \"undefined\") ? \"\" : this.candidateProfileDetails[\"alteContactNo\"];\r\n if (this.candidateProfileDetails[\"alteContactNo\"] != \"\") {\r\n var countis = this.candidateProfileDetails[\"alteContactNo\"].split(\" \");\r\n if (countis.length == 3) {\r\n this.candidateProfileDetails[\"alteContactNo\"] = \"\";\r\n }\r\n }\r\n if (this.candidateProfileDetails[\"contactNo\"] != \"\") {\r\n var countis = this.candidateProfileDetails[\"contactNo\"].split(\" \");\r\n if (countis.length == 3) {\r\n this.candidateProfileDetails[\"contactNo\"] = \"\";\r\n }\r\n }\r\n this.candidateProfileDetails[\"cpCurrency\"] = this.candidateProfileDetails[\"cpCurrency\"] == null ? \" \" : this.candidateProfileDetails[\"cpCurrency\"];\r\n this.candidateProfileDetails[\"noticePeriod\"] = 0;\r\n this.candidateProfileDetails[\"epTakeHomeSalPerMonth\"] = \"\";\r\n this.candidateProfileDetails[\"paySlips\"] = [];\r\n this.candidateProfileDetails[\"reasonsForReloc\"] = '';\r\n\r\n if (this.candidateProfileDetails['cpCurrency'] != '') {\r\n this.changeCurrency(this.candidateProfileDetails['cpCurrency']);\r\n }\r\n var candidateSkillViewModel = this.candidateProfileDetails.candidateSkillViewModel;\r\n this.candidateProfileDetails['createCandidateSkillViewModel'] = [];\r\n for (var i = 0; i < this.application.jobDescSkillViewModel?.length; i++) {\r\n var SkillViewModel = candidateSkillViewModel.filter((sk) => sk.technologyId == this.application.jobDescSkillViewModel[i].technologyId)[0];\r\n var expInMonths = '';\r\n var expInYears = '';\r\n var selfRating = 0;\r\n if (SkillViewModel != undefined && SkillViewModel != null) {\r\n expInMonths = (SkillViewModel.expInMonths == null || SkillViewModel.expInMonths == 0) ? '' : SkillViewModel.expInMonths;\r\n expInYears = (SkillViewModel.expInYears == null || SkillViewModel.expInYears == 0) ? '' : SkillViewModel.expInYears;\r\n selfRating = SkillViewModel.selfRating == null ? 0 : SkillViewModel.selfRating;\r\n }\r\n var totalExp = \"\";\r\n if (expInYears != \"\")\r\n totalExp = expInYears;\r\n\r\n if (expInMonths != \"\")\r\n totalExp = totalExp + \".\" + expInMonths;\r\n\r\n var objis = {\r\n Id: 0,\r\n expInMonths: expInMonths,\r\n expInYears: expInYears,\r\n totalExp: totalExp,\r\n skillLevel: '',\r\n skillLevelId: this.application.jobDescSkillViewModel[i].skillLevelId,\r\n technologyId: this.application.jobDescSkillViewModel[i].technologyId,\r\n technologyName: this.application.jobDescSkillViewModel[i].technologyName,\r\n selfRating: selfRating,\r\n IsCanSkill: false,\r\n };\r\n this.candidateProfileDetails[\r\n 'createCandidateSkillViewModel'\r\n ].push(objis);\r\n }\r\n console.log(this.candidateProfileDetails.createCandidateSkillViewModel)\r\n } else {\r\n this.userApplyJob = false;\r\n this.candidateProfileDetails = {\r\n fullName: this.currentUser.name,\r\n emailAddress: this.userPrimaryDetails.email,\r\n jobId: this.jobId,\r\n sourceId: this.sourceId,\r\n remarks: '',\r\n photo: '',\r\n resume: '',\r\n paySlips: [],\r\n candVideoProfile: '',\r\n validPpflag: '',\r\n currEmplFlag: '',\r\n fullNameInPp: '',\r\n candidateDOB: '',\r\n gender: '',\r\n maritalStatus: '',\r\n noticePeriod: 0,\r\n reasonType: 0,\r\n reasonsForReloc: '',\r\n address: '',\r\n currLocation: '',\r\n currLocationID: '',\r\n countryID: '',\r\n currOrganization: '',\r\n totalExperiance: 0,\r\n relevantExperiance: 0,\r\n contactNo: '',\r\n alteContactNo: '',\r\n cpCurrency: '',\r\n cpGrossPayPerAnnum: '',\r\n cpDeductionsPerAnnum: '',\r\n cpVariablePayPerAnnum: '',\r\n cpTakeHomeSalPerMonth: '',\r\n epCurrency: '',\r\n epTakeHomeSalPerMonth: 0,\r\n selfRating: 0,\r\n nationality: '',\r\n createCandidateSkillViewModel: [],\r\n expectedPackage: '',\r\n PaySlipsURL: [],\r\n };\r\n for (var i = 0; i < this.application.jobDescSkillViewModel.length; i++) {\r\n var objis = {\r\n Id: 0,\r\n expInMonths: '',\r\n expInYears: '',\r\n totalExp: \"\",\r\n skillLevel: 'Knowledge on',\r\n skillLevelId: this.application.jobDescSkillViewModel[i].skillLevelId,\r\n technologyId: this.application.jobDescSkillViewModel[i].technologyId,\r\n technologyName: this.application.jobDescSkillViewModel[i].technologyName,\r\n selfRating: 0,\r\n IsCanSkill: false,\r\n };\r\n this.candidateProfileDetails.createCandidateSkillViewModel.push(\r\n objis\r\n );\r\n }\r\n }\r\n } else {\r\n this.userApplyJob = false;\r\n this.candidateProfileDetails = {\r\n fullName: this.currentUser.name,\r\n emailAddress: this.userPrimaryDetails.email,\r\n jobId: this.jobId,\r\n sourceId: this.sourceId,\r\n remarks: '',\r\n photo: '',\r\n resume: '',\r\n paySlips: [],\r\n candVideoProfile: '',\r\n validPpflag: '',\r\n currEmplFlag: '',\r\n fullNameInPp: '',\r\n candidateDOB: '',\r\n gender: '',\r\n maritalStatus: '',\r\n noticePeriod: 0,\r\n reasonType: 0,\r\n reasonsForReloc: '',\r\n address: '',\r\n currLocation: '',\r\n currLocationID: '',\r\n countryID: '',\r\n currOrganization: '',\r\n totalExperiance: 0,\r\n relevantExperiance: 0,\r\n contactNo: '',\r\n alteContactNo: '',\r\n cpCurrency: '',\r\n cpGrossPayPerAnnum: '',\r\n cpDeductionsPerAnnum: '',\r\n cpVariablePayPerAnnum: '',\r\n cpTakeHomeSalPerMonth: '',\r\n epCurrency: '',\r\n epTakeHomeSalPerMonth: 0,\r\n selfRating: 0,\r\n nationality: '',\r\n createCandidateSkillViewModel: [],\r\n expectedPackage: '',\r\n PaySlipsURL: [],\r\n };\r\n for (\r\n var i = 0;\r\n i < this.application.jobDescSkillViewModel.length;\r\n i++\r\n ) {\r\n var objis = {\r\n Id: 0,\r\n expInMonths: '',\r\n expInYears: '',\r\n skillLevel: '',\r\n totalExp: '',\r\n skillLevelId: this.application.jobDescSkillViewModel[i].skillLevelId,\r\n technologyId: this.application.jobDescSkillViewModel[i].technologyId,\r\n technologyName: this.application.jobDescSkillViewModel[i].technologyName,\r\n selfRating: 0,\r\n IsCanSkill: false,\r\n };\r\n this.candidateProfileDetails.createCandidateSkillViewModel.push(objis);\r\n }\r\n }\r\n },\r\n (error) => {\r\n if (this.application.openingPREFViewModel.length > 0) {\r\n this.currentOpeningPREF = this.application.openingPREFViewModel[0];\r\n } else {\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[1];\r\n }\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

\r\n
You are applying for {{application.jobId}} -\r\n {{application.jobTitle}}
\r\n
You are applying for\r\n {{application.jobId}} -\r\n {{application.jobTitle}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

{{application.jobId}} - {{application.jobTitle}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{application.minYear}}-{{application.maxYear}} Years

\r\n
\r\n
\r\n
\r\n \r\n

{{application.postedDate|date:'dd MMMM YY'}}

\r\n
\r\n
\r\n
\r\n \r\n

{{application.city}}/{{application.country}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Job Description
\r\n
\r\n
\r\n N/A\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Skills
\r\n
\r\n
Experience
\r\n
\r\n
\r\n
{{ skils.technologyName }}
\r\n\r\n
{{ skils.expYears || '0' }}.{{ skils.expMonth || '0' }} Yrs
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

{{application.jobId}} - {{application.jobTitle}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{application.minYear}}-{{application.maxYear}} Years

\r\n
\r\n
\r\n
\r\n \r\n

{{application.postedDate|date:'dd MMMM YY'}}

\r\n
\r\n
\r\n
\r\n \r\n

{{application.city}}/{{application.country}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Job Description
\r\n
\r\n
\r\n N/A\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Skills
\r\n
\r\n
Experience
\r\n
\r\n
\r\n
{{skill.technologyName}}
\r\n
{{skill?.expInYears || '0'}}.{{skill?.expInMonths || '0'}} Yrs
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { Options } from '@angular-slider/ngx-slider';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\n\r\n@Component({\r\n selector: 'app-notice-period',\r\n templateUrl: './notice-period.component.html',\r\n styleUrls: ['./notice-period.component.scss'],\r\n})\r\nexport class NoticePeriodComponent implements OnInit {\r\n options: Options = {\r\n floor: 0,\r\n ceil: 90,\r\n step: 5,\r\n showTicks: true,\r\n showTicksValues: false,\r\n getLegend: (value: number): string => {\r\n return '' + value;\r\n },\r\n translate: (value: number): string => {\r\n return ' ' + value + ' Days';\r\n },\r\n };\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n constructor(public JobApplication: JobApplicationComponent) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {};\r\n validationFlag: boolean = false;\r\n checkOpeningPREF() {\r\n //if (this.JobApplication.candidateProfileDetails.currEmplFlag !== null && this.JobApplication.candidateProfileDetails.currEmplFlag !== \"\" && this.JobApplication.candidateProfileDetails.currEmplFlag !== false) {\r\n // if (this.requiredOrNotFlag == 1) {\r\n if (\r\n this.JobApplication.candidateProfileDetails.noticePeriod == null ||\r\n this.JobApplication.candidateProfileDetails.noticePeriod == ''\r\n ) {\r\n this.JobApplication.candidateProfileDetails.noticePeriod == 0;\r\n // this.validationFlag = true;\r\n //return false;\r\n }\r\n // }\r\n //}\r\n var AvailindexIs = this.fildOfCandidateDetails\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF =\r\n this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n }\r\n save() { }\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n if (this.application.employmentType == 'Contract') {\r\n this.options = {\r\n floor: 0,\r\n ceil: 90,\r\n step: 5,\r\n showTicks: true,\r\n showTicksValues: false,\r\n getLegend: (value: number): string => {\r\n return '' + value;\r\n },\r\n translate: (value: number): string => {\r\n return ' ' + value + ' Days';\r\n },\r\n };\r\n }\r\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\r\n }\r\n requiredOrNotFlag: number = 0;\r\n}\r\n","
Employment Details
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Notice period (Preferred {{application.noticePeriod}} Days)

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n Days \r\n
\r\n
\r\n
\r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n Please provide all information\r\n requested. A partially filled application may not be considered for\r\n review.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\nimport { HomeComponent } from '../home.component';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-job-list-home',\n templateUrl: './job-list-home.component.html',\n styleUrls: ['./job-list-home.component.scss']\n})\nexport class JobListHomeComponent implements OnInit {\n pagesCount_list: any = [];\n pagesCount: number = 1;\n isGrid: boolean = false;\n gridStorage: any = [];\n\n constructor(public homecomponent: HomeComponent, private router: Router) { }\n\n ngOnInit() {\n if (this.homecomponent.similarJobCount > this.homecomponent.perPageCount) {\n var a = parseInt(this.homecomponent.similarJobCount + \"\") / this.homecomponent.perPageCount;\n //var fin = this.precise_round(a,1);\n for (var i = 0; i < a; i++) {\n this.pagesCount_list.push(i + 1);\n }\n // this.pagesCount_list = this.numSequence(a)\n }\n let viewListType = localStorage.getItem('viewListType');\n this.isGrid = true;\n if (!!!viewListType || viewListType == 'gridView') {\n localStorage.setItem('viewListType', 'gridView');\n this.isGrid = false;\n }\n }\n\n ngOnChange() {\n if (this.homecomponent.similarJobCount > this.homecomponent.perPageCount) {\n var a = parseInt(this.homecomponent.similarJobCount + \"\") / this.homecomponent.perPageCount;\n\n for (var i = 0; i < a; i++) {\n this.pagesCount_list.push(i + 1);\n }\n // this.pagesCount_list = this.numSequence(a)\n }\n }\n viewAndApplyJob(item: any) {\n this.router.navigate(['/page/jobdetails'], { queryParams: { jobid: item.jobId, sf: 1 } });\n }\n numSequence(n: number): any[number] {\n return Array(n);\n }\n nextPage(p: number) {\n this.homecomponent.perPageCount = 12;\n this.homecomponent.currentPage = p;\n this.homecomponent.getAllJobsList();\n\n }\n\n showmoreresult() {\n this.homecomponent.perPageCount = this.homecomponent.perPageCount + 12;\n this.homecomponent.getAllJobsList();\n }\n gridList() {\n if (this.isGrid) {\n localStorage.setItem('viewListType', 'gridView');\n } else {\n localStorage.setItem('viewListType', 'viewList');\n }\n this.isGrid = !this.isGrid;\n }\n}\n","
\n
\n
\n \"no\n

We currently do not have any job openings....! Stay Tuned

\n
\n
\n
\n {{homecomponent.similarJobCount}} Jobs Found\n
\n
\n
\n \"list\"\n
\n
\n \"grid\"\n
\n
\n
\n
0\">\n
\n
\n
{{item.jobId +' - '+ item.jobTitle}}
\n \n \n \n {{item.cityName}}/{{item.countryName}}\n \n
\n \n {{item.minExp}}-{{item.maxExp}} Years\n {{item.postedDate | date:\"dd MMM YYYY\"}} \n
\n
\n
N/A
\n \n
\n \n
\n
\n \n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AuthenticationService } from '../../core/services/authentication.service';\n\n@Component({\n selector: 'app-email-confirm',\n templateUrl: './email-confirm.component.html',\n styleUrls: ['./email-confirm.component.scss']\n})\nexport class EmailConfirmComponent implements OnInit {\n\n emailVerify?: boolean = null\n token: string = null;\n jobid: string = null;\n sf: string = null;\n constructor(\n private route: ActivatedRoute,\n private router: Router,\n private authencationService: AuthenticationService\n ) { }\n\n ngOnInit(): void {\n this.route.queryParams.subscribe(params => {\n this.token = params['token'];\n this.jobid = params['jobid'];\n this.sf = params['sf'];\n if (this.token == null || this.token == \"\") {\n this.emailVerify = false;\n }\n else {\n this.emailVerifys(this.token);\n }\n });\n }\n\n redirectToLogin() {\n if (this.jobid != null && this.jobid != \"\") {\n if (this.sf == null || this.sf == \"\") {\n this.sf = \"1\";\n }\n this.router.navigate(['/login'], { queryParams: { jobid: this.jobid, sf: this.sf }});\n }\n else this.router.navigate(['/login']);\n }\n\n emailVerifys(token: string) {\n this.authencationService.emailVarification(token).subscribe((resp) => {\n if (resp == true) {\n this.emailVerify = true;\n }\n else {\n this.emailVerify = false;\n }\n }, (error) => {\n this.emailVerify = false;\n });\n }\n\n}\n","\r\n
\r\n
\r\n
\r\n

Welcome to Hire

\r\n
Thank you for confirming the email to
\r\n Go to account\r\n
\r\n
\r\n \"email-verification\"\r\n
\r\n
\r\n
\r\n
\r\n

Something went wrong..

\r\n
\r\n","import { Component, OnInit, EventEmitter } from '@angular/core';\nimport { CommonApiService } from '../../../shared/services';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal';\r\n\n@Component({\n selector: 'app-edit-profile-details',\n templateUrl: './edit-profile-details.component.html',\n styleUrls: ['./edit-profile-details.component.scss']\n})\nexport class EditProfileDetailsComponent implements OnInit {\n userPrimaryDetails: any;\n CountriesList: any;\n CitiesList: any = [];\n validationFlag: false;\n public onClose: EventEmitter = new EventEmitter();\n constructor(private apiService: CommonApiService, private toastr: ToastrService, public bsModalRef: BsModalRef,) { }\n\n ngOnInit(): void {\n // this.getCountries();\n this.userPrimaryDetails = JSON.parse(this.userPrimaryDetails)\n if (this.userPrimaryDetails.contactNo == null) {\n\r\n } else {\n var cant = this.userPrimaryDetails.contactNo.split(\" \");\r\n if (cant.length == 2) {\r\n this.userPrimaryDetails.contactNo = cant[1];\r\n this.userPrimaryDetails.pincode = \"+\" + cant[0];\r\n } else {\r\n this.userPrimaryDetails.contactNo = cant[0];\r\n this.userPrimaryDetails.pincode = \"\";\r\n }\r\n }\n this.getCities();\n }\n\n getCountries() {\n this.apiService.getCountries().subscribe((data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.CountriesList = data.result;\n }\n }\n }, error => {\n\n })\n }\n\n onUpdatePrimaryDetails() {\n var CurrentCountryName1 = \"\";\n var CurrentCountryName = this.CountriesList.filter(c => c.id == this.userPrimaryDetails.countryId)[0];\r\n if (CurrentCountryName != null) {\r\n CurrentCountryName1 = CurrentCountryName.name\r\n }\n var formDT = new FormData();\n this.userPrimaryDetails.pincode = this.userPrimaryDetails.pincode.replace(\"+\", \"\");\n formDT.append(\"contactNo\", this.userPrimaryDetails.pincode + \" \" + this.userPrimaryDetails.contactNo)\n formDT.append(\"countryId\", this.userPrimaryDetails.countryId)\n formDT.append(\"cityId\", this.userPrimaryDetails.cityId)\n formDT.append(\"countryName\", CurrentCountryName1)\n formDT.append(\"canPrfId\", this.userPrimaryDetails.canPrfId)\n formDT.append(\"emailId\", this.userPrimaryDetails.emailId)\n formDT.append(\"profilePhoto\", \"\")\n formDT.append(\"name\", this.userPrimaryDetails.name,)\n formDT.append(\"candidatesSkillViewModel\", JSON.stringify(this.userPrimaryDetails.candidatesSkillViewModel))\n\n this.apiService.UpdatePrimaryDetails(formDT).subscribe((data: any) => {\n if (data.status == true) {\n if (data.result != null) {\n this.onClose.emit({});\n this.bsModalRef.hide();\n //this.toastr.success(resp.result);\n }\n }\n }, error => {\n\n })\n }\n addValue() {\n if (this.userPrimaryDetails.pincode != null && this.userPrimaryDetails.pincode != \"\")\n this.userPrimaryDetails.pincode = \"+\" + this.userPrimaryDetails.pincode;\r\n else {\r\n this.userPrimaryDetails.pincode = \"\";\r\n }\r\n }\n\n setCountryCode() {\r\n if (this.userPrimaryDetails.countryId != null && this.userPrimaryDetails.countryId != \"\") { \r\n var phonecode = this.CountriesList.filter(c => c.id == this.userPrimaryDetails.countryId)[0].phonecode;\r\n this.userPrimaryDetails.pincode = \"+\" + phonecode;\r\n }\r\n this.userPrimaryDetails.cityId=\"\"\r\n }\n\n\n ngOnchange() {\r\n if (this.userPrimaryDetails.countryId != null && this.userPrimaryDetails.countryId != \"\") {\r\n this.getCities();\r\n }\r\n }\r\n\r\n getCities() {\r\n if (this.userPrimaryDetails.countryId != null && this.userPrimaryDetails.countryId != \"\") {\r\n this.apiService.getCities(this.userPrimaryDetails.countryId).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CitiesList = data.result;\r\n }\r\n }\r\n }, error => {\r\n })\r\n } else {\r\n this.CitiesList = [];\r\n }\r\n }\n}\n\r\n\r\n","
\n

Update Profile Details

\n \n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n Required\n
\n
\n\n
\n \n \n Select\n {{ c.name }}\n \n
\n Required\n
\n
\n
\n \n \n Select\n {{ c.name }}\n \n
\n Required\n
\n
\n
\n
\n
\n
\n \n ISD\n + {{ c.phonecode }}\n \n \n
\n
\n Required\n
\n
\n
\n
\n \n \n
\n
\n Required\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n","\r\n\r\nexport enum JobOpeningPreferenceTypes {\r\n DESIRABLE = 1,\r\n ESSENTIAL = 2\r\n}\r\n\r\nexport enum CandidateEmploymentStatus {\r\n ServingNoticePeriod = 1,\r\n FreeLancerOrImmediateJoiner = 2,\r\n CurrenltyWorking = 3\r\n}\r\n\r\nexport enum deviceTypes {\r\n WEB = 1,\r\n TAB = 2,\r\n MOBILE = 3\r\n }","\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CommonApiService, SliderConfigService } from '../../../shared/services/index';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n selector: 'app-featured-article',\r\n templateUrl: './featured-article.component.html',\r\n styleUrls: ['./featured-article.component.scss']\r\n})\r\nexport class FeaturedArticleComponent implements OnInit {\r\n featuredArticlesLists: any = [];\r\n slideConfig: any;\r\n isLoader: boolean;\r\n constructor(\r\n private commonApiService: CommonApiService,\r\n private sliderConfigService: SliderConfigService,\r\n private toastr: ToastrService,\r\n ) {\r\n this.slideConfig = this.sliderConfigService.sliderConfig({ slidesToShow: 3, slidesToScroll: 3, infinite: true, autoplay: false });\r\n\r\n }\r\n getfeaturedArticles() {\r\n this.isLoader = true;\r\n this.commonApiService.getBlogPost().subscribe(\r\n (resp: any) => {\r\n this.isLoader = false;\r\n if (resp.status) {\r\n this.featuredArticlesLists = resp.result;\r\n } else {\r\n this.toastr.error(resp.meta.error.errorMessage);\r\n }\r\n },\r\n (error) => {\r\n this.featuredArticlesLists = [];\r\n this.isLoader = false;\r\n this.toastr.error('Error');\r\n }\r\n );\r\n }\r\n ngOnInit() {\r\n this.getfeaturedArticles();\r\n }\r\n\r\n}\r\n","
0\">\r\n
\r\n
\r\n
\r\n

Featured Articles

\r\n
\r\n
\r\n \r\n \"left\r\n \r\n \r\n \"left\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"{{item.authorName}}\"\r\n
\r\n
{{ item.tags }}
\r\n

\r\n {{ item?.blogShortDesc?.slice(0,250) }}\r\n

\r\n
\r\n
\r\n {{ item.createdDate | date:'d MMM YYYY' }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\r\nimport { SignalrNotificationsService } from '../shared/services/signalr-notifications.service';\r\nimport { AuthenticationService } from '../core/services/authentication.service';\r\nimport { CommonApiService } from '../shared/services';\r\n\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './layout.component.html',\r\n styleUrls: ['./layout.component.scss']\r\n})\r\nexport class LayoutComponent implements OnInit {\r\n isFooter: any = true;\r\n isHeaderEnable: any = true;\r\n eventUrl: any;\r\n\r\n constructor(\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private signalRNotificationService: SignalrNotificationsService,\r\n private authenticationService: AuthenticationService,\r\n private apiService: CommonApiService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.signalRNotificationService.connect();\r\n this.signalRNotificationService.castrConnectionId.subscribe((data: string) => {\r\n if (data != null) {\r\n this.authenticationService.loadSignalrConnectionId(data);\r\n this.authenticationService.updateTxnLogs(true).subscribe((resp) => {\r\n }, (error) => {\r\n console.log(error);\r\n });\r\n }\r\n });\r\n //this.authenticationService.currentUser.subscribe((x) => {\r\n // this.apiService.getCandidatePrimaryInfo(this.authenticationService.currentUserValue.userDetails.email).subscribe((resp) => {\r\n\r\n // }, (error) => {\r\n\r\n // })\r\n //});\r\n\r\n\r\n this.eventUrl = this.router.url;\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.isHeaderEnable = true;\r\n this.eventUrl = event.url;\r\n this.headerEnableDisable();\r\n this.hideFooter(event.url);\r\n }\r\n });\r\n\r\n this.hideFooter(this.eventUrl);\r\n\r\n // if (this.eventUrl != null || this.eventUrl != undefined) {\r\n // const spliUrl = this.eventUrl.split('?');\r\n // this.footer = (spliUrl[0] !== '/app/job-application' && spliUrl[0] !== '/app/jobdetails' && spliUrl[0] !== '/app/pre-employment-form/present-address' && spliUrl[0] !== '/app/pre-employment-form/permanent-address' && spliUrl[0] !== '/app/pre-employment-form/family-details' && spliUrl[0] !== '/app/pre-employment-form/personal-details' && spliUrl[0] !== '/app/pre-employment-form/personal-details' && spliUrl[0] !== '/app/pre-employment-form/employer-details' && spliUrl[0] !== '/app/pre-employment-form/education-details')\r\n // }\r\n }\r\n\r\n hideFooter(evtUrl) {\r\n\r\n if (evtUrl.match('job-conversation') || evtUrl.match('pre-employment-form') ||\r\n evtUrl.match('job-application')) {\r\n this.isFooter = false;\r\n }\r\n }\r\n\r\n headerEnableDisable() {\r\n if (this.eventUrl.match('login')) {\r\n this.isHeaderEnable = false;\r\n } else {\r\n this.isHeaderEnable = true;\r\n }\r\n }\r\n\r\n}\r\n","
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n","\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\nimport { CommonApiService } from '../../../../shared/services';\r\n@Component({\r\n selector: 'app-current-location',\r\n templateUrl: './current-location.component.html',\r\n styleUrls: ['./current-location.component.scss']\r\n})\r\nexport class CurrentLocationComponent implements OnInit {\r\n\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n @Input() CountriesList: any = [];\r\n CitiesList: any = [];\r\n constructor(private commonApiService: CommonApiService, public JobApplication: JobApplicationComponent) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (fieldCode == \"NA\") {\r\n AvailindexIs = AvailindexIs - 1\r\n }\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {}\r\n validationFlag: boolean = false;\r\n checkOpeningPREF() {\r\n\r\n if (this.checkvalidationOfNationality == 1) {\r\n if (this.CheckNationality) {\r\n if (this.JobApplication.candidateProfileDetails.nationality == 0 || this.JobApplication.candidateProfileDetails.nationality == null || this.JobApplication.candidateProfileDetails.nationality == \"\") {\r\n this.validationFlag = true;\r\n return false\r\n }\r\n }\r\n\r\n\r\n if (this.JobApplication.candidateProfileDetails.countryID == 0 || this.JobApplication.candidateProfileDetails.countryID == null || this.JobApplication.candidateProfileDetails.countryID == \"\") {\r\n return false\r\n }\r\n if (this.JobApplication.candidateProfileDetails.currLocationID == 0 || this.JobApplication.candidateProfileDetails.currLocationID == null || this.JobApplication.candidateProfileDetails.currLocationID == \"\") {\r\n return false\r\n }\r\n }\r\n this.JobApplication.candidateProfileDetails.currLocation = this.CitiesList.filter(c => c.id == this.JobApplication.candidateProfileDetails.currLocationID)[0]?.name;\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n\r\n if (fieldCode == \"NA\") {\r\n AvailindexIs = AvailindexIs + 1\r\n }\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n this.checkNationalityScreen();\r\n this.getCities();\r\n }\r\n ngOnchange() {\r\n if (this.JobApplication.candidateProfileDetails != null && this.JobApplication.candidateProfileDetails != \"\") {\r\n this.getCities();\r\n }\r\n }\r\n\r\n getCities() {\r\n if (this.JobApplication.candidateProfileDetails.countryID != null && this.JobApplication.candidateProfileDetails.countryID != \"\" && this.JobApplication.candidateProfileDetails.countryID != 0) {\r\n this.commonApiService.getCities(this.JobApplication.candidateProfileDetails.countryID).subscribe((data: any) => {\r\n if (data.status == true) {\r\n if (data.result != null) {\r\n this.CitiesList = data.result;\r\n this.CitiesList = this.CitiesList.sort((a, b) => a.name > b.name ? 1 : -1);\r\n }\r\n }\r\n }, error => {\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[0];\r\n })\r\n } else {\r\n this.CitiesList = [];\r\n this.JobApplication.candidateProfileDetails.currLocationID = \"\";\r\n }\r\n }\r\n CheckNationality: boolean = false;\r\n CheckLocation: boolean = false;\r\n checkvalidationOfNationality: number = 2;\r\n checkNationalityScreen() {\r\n var indexofDOB = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(\"NA\");\r\n if (indexofDOB != -1) {\r\n this.CheckNationality = true;\r\n this.checkvalidationOfNationality = this.application.openingPREFViewModel[indexofDOB].displayFlag\r\n } else {\r\n this.CheckNationality = false;\r\n }\r\n\r\n }\r\n}\r\n\r\n","
Current Location Details
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Nationality

\r\n
\r\n \r\n \r\n \"{{\r\n {{ c.name }}\r\n \r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Current Residing Country

\r\n
\r\n \r\n \r\n \"{{\r\n {{ c.name }}\r\n \r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Current Residing City

\r\n
\r\n \r\n {{ c.name }}\r\n \r\n \r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n Please provide all information\r\n requested. A partially filled application may not be considered for\r\n review.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { BgVerificationComponent } from './view/Background-Verification/bg-verification/bg-verification.component';\r\nimport { ConversationComponent } from './view/home/conversation/conversation.component';\r\nimport { HomeComponent } from './view/home/home.component';\r\nimport { JobApplicationComponent } from './view/job-application/job-application.component';\r\nimport { JobDetailsComponent } from './view/job-details/job-details.component';\r\nimport { JobListingComponent } from './view/job-listing/job-listing.component';\r\nimport { ProfileComponent } from './view/profile/profile.component';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { LayoutComponent } from './layout/layout.component';\r\nimport { AuthGuard } from './core/guards/auth.guards';\r\nimport { EmailConfirmComponent } from './login/email-confirm/email-confirm.component';\r\nimport { ForgotPasswordComponent } from './login/forgot-password/forgot-password.component';\r\nimport { ResetPasswordComponent } from './login/reset-password/reset-password.component';\r\nimport { ForbiddenComponent } from './errorpages/forbidden/forbidden.component';\r\nimport { NotFoundComponent } from './errorpages/not-found/not-found.component';\r\nimport { PersonalDetailsComponent } from './view/Background-Verification/personal-details/personal-details.component';\r\nimport { FamilyDetailsComponent } from './view/Background-Verification/family-details/family-details.component';\r\nimport { PresentAddressComponent } from './view/Background-Verification/present-address/present-address.component';\r\nimport { PermenantAddressComponent } from './view/Background-Verification/permenant-address/permenant-address.component';\r\nimport { EmployerDetailsComponent } from './view/Background-Verification/employer-details/employer-details.component';\r\nimport { EducationDetailsComponent } from './view/Background-Verification/education-details/education-details.component';\r\nimport { ArticleDetailsComponent } from './view/home/article-details/article-details.component';\r\nimport { BeforeLoginComponent } from './layout/before-login/before-login.component';\r\nimport { AnonymousSectionComponent } from './layout/anonymous-section/anonymous-section.component';\r\nimport { EditUserComponent } from './view/profile/edit-user/edit-user.component';\r\nimport { TermServiceComponent } from './login/term-service/term-service.component';\r\nimport { PrivacyPolicyComponent } from './privacy-policy/privacy-policy.component';\r\nimport { CookiePolicyComponent } from './cookie-policy/cookie-policy.component';\r\nimport { CandidateUnsubscribeComponent } from './view/candidate-unsubscribe/candidate-unsubscribe.component';\r\nimport { TermsAndServicesComponent } from './login/terms-and-services/terms-and-services.component';\r\nimport { JobApplyComponent } from './view/job-apply/job-apply.component';\r\n\r\nconst routes: Routes = [\r\n // { path: 'home', component: HomeComponent },\r\n\r\n { path: 'login', component: LoginComponent },\r\n { path: 'termservice', component: TermsAndServicesComponent },\r\n { path: 'privacy-policy', component: PrivacyPolicyComponent },\r\n { path: 'cookie-policy', component: CookiePolicyComponent },\r\n { path: 'forgot-password', component: ForgotPasswordComponent },\r\n { path: 'reset-password', component: ResetPasswordComponent },\r\n { path: 'emailvarification', component: EmailConfirmComponent },\r\n { path: 'forbidden', component: ForbiddenComponent },\r\n { path: 'not-found', component: NotFoundComponent },\r\n { path: 'article-details', component: ArticleDetailsComponent },\r\n //{ path: 'forgot-password', component: ForgotPasswordComponent },\r\n {\r\n path: 'candidate/unsubscribe/:candidateId/:candidateEmail',\r\n component: CandidateUnsubscribeComponent,\r\n },\r\n {\r\n path: 'pihire',\r\n component: BeforeLoginComponent,\r\n children: [\r\n {\r\n path: 'home',\r\n redirectTo: 'app/profile-active-applications',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: 'article-details/:id',\r\n redirectTo: 'app/profile-active-applications',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: '',\r\n redirectTo: 'app/profile-active-applications',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: '**',\r\n redirectTo: 'app/profile-active-applications',\r\n pathMatch: 'full',\r\n },\r\n ],\r\n },\r\n {\r\n path: 'page',\r\n component: AnonymousSectionComponent,\r\n children: [\r\n {\r\n path: 'jobdetails',\r\n redirectTo: 'app/profile-active-applications',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: '',\r\n redirectTo: 'app/profile-active-applications',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: '**',\r\n redirectTo: 'app/profile-active-applications',\r\n pathMatch: 'full',\r\n },\r\n ],\r\n },\r\n {\r\n path: 'app',\r\n component: LayoutComponent,\r\n children: [\r\n // { path: 'home', component: HomeComponent },\r\n { path: 'jobdetails', component: JobDetailsComponent },\r\n { path: 'job-conversation', component: ConversationComponent },\r\n {\r\n path: 'profile',\r\n component: ProfileComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n // { path: 'profile/:type', component: ProfileComponent, canActivate: [AuthGuard] },\r\n\r\n {\r\n path: 'profile/:applicationtype',\r\n component: ProfileComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n {\r\n path: 'profile-active-applications',\r\n component: ProfileComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n {\r\n path: 'profile-archived-applications',\r\n component: ProfileComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n {\r\n path: 'profile-active-newjobs',\r\n component: ProfileComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n {\r\n path: 'job-application',\r\n component: JobApplyComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n {\r\n path: 'job-apply',\r\n component: JobApplyComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n {\r\n path: 'job-listing',\r\n component: JobListingComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n {\r\n path: 'edit-profile',\r\n component: EditUserComponent,\r\n canActivate: [AuthGuard],\r\n },\r\n {\r\n path: 'pre-employment-form/:jobid/:profileid',\r\n component: BgVerificationComponent,\r\n canActivate: [AuthGuard],\r\n children: [\r\n {\r\n path: 'personal-details',\r\n component: PersonalDetailsComponent,\r\n },\r\n {\r\n path: 'family-details',\r\n component: FamilyDetailsComponent,\r\n },\r\n {\r\n path: 'present-address',\r\n component: PresentAddressComponent,\r\n },\r\n {\r\n path: 'permanent-address',\r\n component: PermenantAddressComponent,\r\n },\r\n {\r\n path: 'employer-details',\r\n component: EmployerDetailsComponent,\r\n },\r\n {\r\n path: 'education-details',\r\n component: EducationDetailsComponent,\r\n },\r\n { path: '', redirectTo: 'personal-details', pathMatch: 'full' },\r\n { path: '**', redirectTo: 'personal-details', pathMatch: 'full' },\r\n ],\r\n },\r\n {\r\n path: '',\r\n redirectTo: 'profile-archived-applications',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: '**',\r\n redirectTo: 'profile-archived-applications',\r\n pathMatch: 'full',\r\n },\r\n ],\r\n },\r\n\r\n //{ path: 'login', component: LoginComponent },\r\n //{ path: 'job-listing', component: JobListingComponent },\r\n //{ path: 'job-details', component: JobDetailsComponent },\r\n //{ path: 'job-application', component: JobApplicationComponent },\r\n //{ path: 'profile', component: ProfileComponent },\r\n //{ path: 'job-conversation', component: ConversationComponent },\r\n //{ path: 'bg-verification', component: BgVerificationComponent },\r\n {\r\n path: '',\r\n redirectTo: 'app/profile-active-applications',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: '**',\r\n redirectTo: 'app/profile-active-applications',\r\n pathMatch: 'full',\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n RouterModule.forRoot(routes, {\r\n useHash: false,\r\n scrollPositionRestoration: 'enabled',\r\n }),\r\n ],\r\n exports: [RouterModule],\r\n})\r\nexport class AppRoutingModule {}\r\n"," \nimport { Component, ElementRef, EventEmitter, Input, OnInit, ViewChild } from '@angular/core';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { ToastrService } from 'ngx-toastr';\n\n@Component({\n selector: 'app-video-profile',\n templateUrl: './video-profile.component.html',\n styleUrls: ['./video-profile.component.scss']\n})\nexport class VideoProfileComponent implements OnInit {\n public videoResumeFile = { mediatypes: [\"video/mp4\", \"video/x-m4v\", \"video/x-msvideo\"], acceptTypes: \".mp4, .m4v, .avi\", maxSize: 3145728/*3MB*/ };\n\n public get videoResumeFileMediaType() { return this.videoResumeFile; }\n\n uploadFileObj = {\n id:0,\n docType: '',\n fileGroup: '',\n jobId: 0,\n candId: 0,\n };\n @ViewChild('resume', { read: ElementRef })\n resume: ElementRef;\n resumes =\"\";\n isLoader: boolean = false;\n fileGroupLists: any;\n docTypeLists: any;\n isFormSubmitted:any;\n isVideoRec: boolean = false;\n videoRecorder: any;\n videoRecorderBlob:any;\n docType: any;\n public event: EventEmitter = new EventEmitter();\n\n constructor(\n public bsModalRef: BsModalRef,\n private toastr: ToastrService,\n ) {}\n\n isVideoEnable(isVideo:any) {\n this.isVideoRec = isVideo;\n }\n updatePlayer(e:any) {\n this.videoRecorder = e.rec;\n this.videoRecorderBlob = e.recDataBlob;\n }\n\n resetFile(){\n this.videoRecorder = \"\";\n this.videoRecorderBlob = \"\";\n this.resumes = \"\";\n this.isVideoRec = false; \n this.uploadFileObj.fileGroup = this.docType?.fileGroup || '';\n this.uploadFileObj.docType = this.docType?.docTypeName || '';\n this.uploadFileObj.id = this.docType?.id || 0;\n if(this.uploadFileObj.docType.trim() == 'DT_VPR'){\n this.isVideoRec = true;\n }\n }\n\n saveFiles(isValid:any) {\n this.isFormSubmitted = true;\n var data = this.videoRecorder;\n if (data == undefined && this.isVideoRec) {\n this.toastr.error('File is required');\n return;\n }\n \n\n\n if (isValid) {\n let file = data[0];\n if (file &&\n !this.videoResumeFileMediaType.mediatypes.find(\n (da) => da == file.type.toLowerCase()\n )\n ) {\n this.toastr.error(\"Invalid file format\");\n return false;\n }\n else if (file && file.size > this.videoResumeFileMediaType.maxSize) {\n this.toastr.error(\"File max size:\" + ((this.videoResumeFileMediaType.maxSize / 1024) / 1024) + \" MB\");\n return false;\n }\n\n this.isFormSubmitted = false;\n this.isLoader = true;\n var data = this.videoRecorder;\n\n this.triggerEvent(data);\n\n this.bsModalRef.hide();\n\n \n }\n }\n\n triggerEvent(data) {\n this.event.emit({video: data, blobData: this.videoRecorderBlob});\n }\n\n ngOnInit(): void {\n }\n}\n","
\n
Video Profile
\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n \n \n \n
\n","
\r\n
\r\n \r\n \r\n \"logo\"\r\n \r\n

\r\n By creating an account, you will have access to our Career portal to\r\n help you in your journey with us.\r\n

\r\n
\r\n
\r\n
\r\n {{validationMessage}}
\r\n \r\n
\r\n
\r\n {{errorMessage}}
\r\n \r\n
\r\n
    \r\n
  • \r\n Sign in\r\n \r\n

    Please Sign In with

    \r\n
    \r\n Google\r\n Facebook\r\n \r\n
    \r\n
    OR
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n \r\n
    \r\n Required\r\n \r\n Invalid\r\n Email\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n \r\n Required\r\n \r\n \r\n Password must\r\n be at least 6 characters\r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
  • \r\n
  • \r\n Sign up\r\n \r\n

    Please Register with

    \r\n
    \r\n Google\r\n Facebook\r\n \r\n
    \r\n
    OR Sign Up
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n \r\n \r\n required\r\n \r\n \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n required\r\n \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n Email is\r\n required\r\n \r\n \r\n Enter a valid Email\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n required\r\n \r\n \r\n Password must\r\n be at least 6 characters\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n required\r\n \r\n \r\n Passwords must match\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n required\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
  • \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n

Already login in other devices. Click below to logout.

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AuthenticationService } from '../core/services/authentication.service';\r\nimport { first } from 'rxjs/operators';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { environment } from '../../environments/environment';\r\nimport {\r\n SocialAuthService,\r\n GoogleLoginProvider,\r\n FacebookLoginProvider,\r\n} from 'angularx-social-login';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { CustomRouteService } from '../core/services/custom-route.service';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\nimport { TermServiceComponent } from './term-service/term-service.component';\r\nimport { deviceTypes } from '././../core/models/enums';\r\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.scss'],\r\n})\r\nexport class LoginComponent implements OnInit {\r\n jobId: string = null;\r\n isDisplaySignUp: boolean = true;\r\n sourceFrom: string = null;\r\n loginObject: any = {};\r\n isFormSubmitted: boolean = false;\r\n isLoader: boolean = false;\r\n registerForm: FormGroup;\r\n submitted = false;\r\n validationMessage: string = '';\r\n errorMessage: string = '';\r\n registerLoader: boolean = false;\r\n passVisible: boolean = false;\r\n title = 'Career Portal - PiHire';\r\n modalRef: BsModalRef;\r\n logouttoken: string;\r\n\r\n constructor(\r\n private toastr: ToastrService,\r\n private router: Router,\r\n private authenticationService: AuthenticationService,\r\n private formBuilder: FormBuilder,\r\n private route: ActivatedRoute,\r\n private authService: SocialAuthService,\r\n private titleService: Title,\r\n private breakpointObserver: BreakpointObserver,\r\n private customRouteService: CustomRouteService,\r\n private modalService: BsModalService\r\n ) { }\r\n\r\n @ViewChild('templateAl')\r\n environment: any;\r\n private alreadyLoginTemp: TemplateRef;\r\n bsModalRef: BsModalRef;\r\n openAlreadyLoginModal() {\r\n this.modalRef = this.modalService.show(this.alreadyLoginTemp);\r\n }\r\n\r\n logoutFromAllDevices() {\r\n this.authenticationService\r\n .logoutFromDevices(this.logouttoken, this.loginObject.email)\r\n .subscribe(\r\n (resp) => {\r\n this.modalRef.hide();\r\n this.toastr.success('Successfully logout from all devices.');\r\n },\r\n (error) => {\r\n this.modalRef.hide();\r\n this.toastr.error(\r\n 'Failed to logout from other devices. try to login again..'\r\n );\r\n }\r\n );\r\n }\r\n\r\n login(isValid) {\r\n this.isFormSubmitted = true;\r\n if (isValid) {\r\n this.isFormSubmitted = false;\r\n this.isLoader = true;\r\n this.authenticationService.login(this.loginObject.email, this.loginObject.password).pipe(first()).subscribe((data) => { \r\n if (data.isNewJob==true) {\r\n this.router.navigate(['/app/profile-active-newjobs']);\r\n }\r\n else if (this.jobId == null || this.jobId == '') {\r\n window.location.href = this.customRouteService.getPreviousUrl();\r\n } else {\r\n this.router.navigate(['/app/job-apply'], {\r\n queryParams: { jobid: this.jobId, sf: this.sourceFrom },\r\n });\r\n }\r\n },\r\n (error) => {\r\n this.isLoader = false;\r\n if (error.error.indexOf('Already_Login') !== -1) {\r\n this.logouttoken = error.error.split('~')[1];\r\n this.openAlreadyLoginModal();\r\n return false;\r\n }\r\n this.toastr.error('Invalid Credentials');\r\n }\r\n );\r\n }\r\n }\r\n\r\n signInWithGoogle() {\r\n this.authService\r\n .signIn(GoogleLoginProvider.PROVIDER_ID)\r\n .then((res) => {\r\n this.authenticationService\r\n .AuthenticateGoogle(res.email, res.idToken)\r\n .pipe(first())\r\n .subscribe(\r\n (data) => {\r\n if (data.isNewJob) {\r\n this.router.navigate(['/app/profile-active-newjobs']);\r\n }\r\n else if (this.jobId == null || this.jobId == '') {\r\n window.location.href = this.customRouteService.getPreviousUrl();\r\n } else {\r\n this.router.navigate(['/app/job-apply'], {\r\n queryParams: { jobid: this.jobId, sf: this.sourceFrom },\r\n });\r\n }\r\n },\r\n (error) => {\r\n this.isLoader = false;\r\n if (error.error.indexOf('Already_Login') !== -1) {\r\n this.logouttoken = error.error.split('~')[1];\r\n this.openAlreadyLoginModal();\r\n return false;\r\n }\r\n this.toastr.error('Invalid Credentials');\r\n console.log(JSON.stringify(error));\r\n }\r\n );\r\n })\r\n .catch((error) => {\r\n this.toastr.error('Failed to authenticate using google.');\r\n console.log(JSON.stringify(error));\r\n });\r\n }\r\n\r\n signUpWithGoogle(): void {\r\n this.authService\r\n .signIn(GoogleLoginProvider.PROVIDER_ID)\r\n .then((res) => {\r\n let model = {\r\n emailId: res.email,\r\n firstName: res.firstName,\r\n lastName: res.lastName,\r\n token: res.idToken,\r\n PSDevice: this.deviceCategory,\r\n jobid:\r\n this.jobId == undefined\r\n ? null\r\n : this.jobId != null\r\n ? parseInt(this.jobId)\r\n : this.jobId,\r\n sfId:\r\n this.sourceFrom == undefined\r\n ? null\r\n : this.sourceFrom != null\r\n ? parseInt(this.sourceFrom)\r\n : this.sourceFrom,\r\n };\r\n this.authenticationService.registerWithGoogle(model).subscribe(\r\n (resp) => {\r\n if (resp != null && resp.status == true) {\r\n this.validationMessage =\r\n 'Account is created successfully. Please check the register email for credentials.';\r\n } else {\r\n this.validationMessage = resp.message;\r\n }\r\n },\r\n (error) => {\r\n this.toastr.error('Failed to register.');\r\n console.log(JSON.stringify(error));\r\n }\r\n );\r\n return false;\r\n })\r\n .catch((error) => {\r\n this.toastr.error('Failed to authenticate using google.');\r\n console.log(JSON.stringify(error));\r\n });\r\n }\r\n\r\n signInWithFB(): void {\r\n this.authService\r\n .signIn(FacebookLoginProvider.PROVIDER_ID)\r\n .then((res) => {\r\n this.authenticationService\r\n .AuthenticateFacebook(res.email, res.authToken)\r\n .pipe(first())\r\n .subscribe(\r\n (data) => {\r\n if (data.isNewJob) {\r\n this.router.navigate(['/app/profile-active-newjobs']);\r\n }\r\n else if (this.jobId == null || this.jobId == '') {\r\n window.location.href = this.customRouteService.getPreviousUrl();\r\n } else {\r\n this.router.navigate(['/app/job-apply'], {\r\n queryParams: { jobid: this.jobId, sf: this.sourceFrom },\r\n });\r\n }\r\n },\r\n (error) => {\r\n this.isLoader = false;\r\n if (error.error.indexOf('Already_Login') !== -1) {\r\n this.logouttoken = error.error.split('~')[1];\r\n this.openAlreadyLoginModal();\r\n return false;\r\n }\r\n this.toastr.error('Invalid Credentials');\r\n console.log(JSON.stringify(error));\r\n }\r\n );\r\n })\r\n .catch((error) => {\r\n this.toastr.error('Failed to authenticate using facebook.');\r\n console.log(JSON.stringify(error));\r\n });\r\n }\r\n\r\n visiblePassword() {\r\n const passInput = document.getElementById('loginPassword');\r\n if (!this.passVisible) {\r\n passInput.setAttribute('type', 'text');\r\n } else {\r\n passInput.setAttribute('type', 'password');\r\n }\r\n this.passVisible = !this.passVisible;\r\n }\r\n\r\n signUpWithFacebook(): void {\r\n this.authService\r\n .signIn(FacebookLoginProvider.PROVIDER_ID)\r\n .then((res) => {\r\n let model = {\r\n emailId: res.email,\r\n firstName: res.firstName,\r\n lastName: res.lastName,\r\n token: res.authToken,\r\n PSDevice: this.deviceCategory,\r\n jobid:\r\n this.jobId == undefined\r\n ? null\r\n : this.jobId != null\r\n ? parseInt(this.jobId)\r\n : this.jobId,\r\n sfId:\r\n this.sourceFrom == undefined\r\n ? null\r\n : this.sourceFrom != null\r\n ? parseInt(this.sourceFrom)\r\n : this.sourceFrom,\r\n };\r\n this.authenticationService.registerWithFacebook(model).subscribe(\r\n (resp) => {\r\n if (resp != null && resp.status == true) {\r\n this.validationMessage =\r\n 'Account is created successfully. Please check the register email for credentials.';\r\n } else {\r\n this.validationMessage = resp.message;\r\n }\r\n },\r\n (error) => {\r\n this.toastr.error('Failed to register.');\r\n console.log(JSON.stringify(error));\r\n }\r\n );\r\n return false;\r\n })\r\n .catch((error) => {\r\n this.toastr.error('Failed to authenticate using facebook.');\r\n console.log(JSON.stringify(error));\r\n });\r\n }\r\n\r\n onRegister() {\r\n this.submitted = true;\r\n // stop here if form is invalid\r\n if (this.registerForm.invalid) {\r\n return;\r\n }\r\n this.registerLoader = true;\r\n\r\n let model = {\r\n emailId: this.registerForm.value.email,\r\n firstName: this.registerForm.value.firstName,\r\n lastName: this.registerForm.value.lastName,\r\n password: this.registerForm.value.password,\r\n PSDevice: this.deviceCategory,\r\n jobid:\r\n this.jobId == undefined\r\n ? null\r\n : this.jobId != null\r\n ? parseInt(this.jobId)\r\n : this.jobId,\r\n sfId:\r\n this.sourceFrom == undefined\r\n ? null\r\n : this.sourceFrom != null\r\n ? parseInt(this.sourceFrom)\r\n : this.sourceFrom,\r\n };\r\n this.authenticationService.register(model).subscribe(\r\n (resp) => {\r\n this.registerLoader = false;\r\n if (resp != null && resp.status == true) {\r\n this.toastr.success('Account is created successfully, Email confimation sent to register email address. Link will expire in 24 hours');\r\n // this.validationMessage =\r\n // 'Account is created successfully, Email confimation sent to register email address. Link will expire in 24 hours';\r\n\r\n setTimeout(() => {\r\n this.router.navigate(['/login']);\r\n }, 500);\r\n\r\n } else {\r\n this.validationMessage = resp.message;\r\n }\r\n },\r\n (err) => {\r\n this.registerLoader = false;\r\n this.toastr.error('Failed to register.');\r\n }\r\n );\r\n // display form values on success\r\n //alert('SUCCESS!! :-)\\n\\n' + JSON.stringify(this.registerForm.value, null, 4));\r\n }\r\n\r\n emailVarify(token: string) {\r\n this.authenticationService.emailVarification(token).subscribe(\r\n (resp) => {\r\n if (resp == true) {\r\n this.validationMessage = 'Thank you for confirming the email.';\r\n this.isDisplaySignUp = false;\r\n this.active =1;\r\n } else {\r\n this.errorMessage = 'Failed to verify the email.';\r\n }\r\n },\r\n (error) => {\r\n this.errorMessage = 'Failed to verify the email.';\r\n }\r\n );\r\n }\r\n websiteUrl: any;\r\n active: any = 1;\r\n deviceCategory:number = deviceTypes.WEB;\r\n async ngOnInit() {\r\n this.websiteUrl = environment.websiteUrl;\r\n this.titleService.setTitle(this.title);\r\n this.active = 1;\r\n this.route.queryParams.subscribe((params) => {\r\n this.jobId = params['jobid'];\r\n this.sourceFrom = params['sf'];\r\n let varificationToken = params['token'];\r\n if (varificationToken != null && varificationToken != '') {\r\n this.emailVarify(varificationToken);\r\n }\r\n if (this.jobId == null || this.jobId == '' || this.jobId == '0') {\r\n this.active = 1;\r\n this.isDisplaySignUp = false;\r\n } else if (this.jobId != null && this.jobId != '') {\r\n this.isDisplaySignUp = true;\r\n this.active = 1;\r\n setTimeout(() => {\r\n document.getElementById(\"password\")?.focus();\r\n document.getElementById(\"emailid\")?.focus();\r\n },500)\r\n \r\n }\r\n \r\n });\r\n\r\n this.registerForm = this.formBuilder.group(\r\n {\r\n firstName: ['', [Validators.required, Validators.maxLength(50)]],\r\n lastName: ['', [Validators.required, Validators.maxLength(50)]],\r\n email: ['', [Validators.required, Validators.email]],\r\n password: ['', [Validators.required, Validators.minLength(6)]],\r\n confirmPassword: ['', Validators.required],\r\n acceptTerms: [false, Validators.requiredTrue],\r\n },\r\n {\r\n validator: this.MustMatch('password', 'confirmPassword'),\r\n }\r\n );\r\n\r\n this.deviceCategory = await this.getDeviceCategory();\r\n\r\n }\r\n\r\n async getDeviceCategory() {\r\n \r\n let deviceType:number = deviceTypes.WEB;\r\n \r\n const MOBILE_BREAKPOINT = '(max-width: 599px)'; \r\n const TABLET_BREAKPOINT = '(min-width: 600px) and (max-width: 959px)'; \r\n const DESKTOP_BREAKPOINT = '(min-width: 960px)'; \r\n \r\n \r\n const state: BreakpointState = await this.breakpointObserver\r\n .observe([MOBILE_BREAKPOINT, TABLET_BREAKPOINT, DESKTOP_BREAKPOINT])\r\n .pipe(first())\r\n .toPromise();\r\n \r\n \r\n if (state.breakpoints[MOBILE_BREAKPOINT]) {\r\n deviceType = deviceTypes.MOBILE;\r\n } else if (state.breakpoints[TABLET_BREAKPOINT]) {\r\n deviceType = deviceTypes.TAB;\r\n } else if (state.breakpoints[DESKTOP_BREAKPOINT]) {\r\n deviceType = deviceTypes.WEB;\r\n } else {\r\n deviceType = deviceTypes.WEB;\r\n }\r\n \r\n return deviceType;\r\n \r\n \r\n \r\n }\r\n\r\n get f() {\r\n return this.registerForm.controls;\r\n }\r\n\r\n MustMatch(controlName: string, matchingControlName: string) {\r\n return (formGroup: FormGroup) => {\r\n const control = formGroup.controls[controlName];\r\n const matchingControl = formGroup.controls[matchingControlName];\r\n\r\n if (matchingControl.errors && !matchingControl.errors.mustMatch) {\r\n // return if another validator has already found an error on the matchingControl\r\n return;\r\n }\r\n\r\n // set error on matchingControl if validation fails\r\n if (control.value !== matchingControl.value) {\r\n matchingControl.setErrors({ mustMatch: true });\r\n } else {\r\n matchingControl.setErrors(null);\r\n }\r\n };\r\n }\r\n\r\n termsAndConditionsPopup() {\r\n this.bsModalRef = this.modalService.show(TermServiceComponent, {\r\n initialState: null,\r\n ignoreBackdropClick: true,\r\n class: 'modal-dialog modal-dialog-centered modal-lg pihire-modal',\r\n });\r\n this.bsModalRef.content.closeBtnName = 'Close';\r\n this.bsModalRef.onHidden.subscribe((res) => {\r\n this.bsModalRef.hide();\r\n });\r\n }\r\n}\r\n","import { Directive } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '.carousel-item',\r\n})\r\nexport class CarouselItemElementDirective {}","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http'\nimport { environment } from '../../../environments/environment';\nimport { map } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class HomePageService {\n\n constructor(private http: HttpClient) { }\n\n getAllJobsList(obj: any) {\n let url = `${environment.baseUrl}/Opening/PortalJobsList`;\r\n return this.http.post(url, obj);\n }\n getTechnologys() {\r\n let url = `${environment.baseUrl}/Common/SearchListModel`;\r\n return this.http.get(url);\r\n }\n}\n","\r\nimport { Component, EventEmitter, Input, OnInit, Output, ViewChild, ElementRef, ChangeDetectorRef } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { environment } from '../../../../../environments/environment';\r\n\r\ndeclare var gapi: any;\r\ndeclare var google: any;\r\n\r\n@Component({\r\n selector: 'app-upload-pay-slip',\r\n templateUrl: './upload-pay-slip.component.html',\r\n styleUrls: ['./upload-pay-slip.component.scss']\r\n})\r\nexport class UploadPaySlipComponent implements OnInit {\r\n\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n @ViewChild('payslips', { read: ElementRef })\r\n payslips: ElementRef;\r\n\r\n\r\n developerKey;\r\n CLIENT_ID;\r\n appId;\r\n SCOPES;\r\n pickerApiLoaded = false;\r\n oauthToken;\r\n isGoogleDriveEnabled: boolean = true;\r\n constructor(public JobApplication: JobApplicationComponent, private toastr: ToastrService, private changeDetectorRef: ChangeDetectorRef) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n\r\n next() {\r\n this.checkOpeningPREF();\r\n }\r\n previous() {\r\n this.previousCheckValue();\r\n }\r\n previousCheckValue() {\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs - 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs - 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs - 1]\r\n this.previousCheckValue();\r\n }\r\n }\r\n }\r\n CheckVaribale: any = {}\r\n validationFlag: boolean = false;\r\n filesList: any = [];\r\n checkOpeningPREF() {\r\n\r\n this.JobApplication.googleDrivePaySlipsFiles;\r\n this.JobApplication.candidateProfileDetails.PaySlipsURL = [];\r\n for (let i = 0; i < this.JobApplication.googleDrivePaySlipsFiles.length; i++) {\r\n this.JobApplication.candidateProfileDetails.PaySlipsURL.push({ \"URL\": this.JobApplication.googleDrivePaySlipsFiles[i].url, \"Type\": this.JobApplication.googleDrivePaySlipsFiles[i].Type })\r\n }\r\n this.JobApplication.candidateProfileDetails.paySlips = this.JobApplication.paySlipfilesList;\r\n if (this.requiredOrNotFlag == 1) {\r\n if ((this.JobApplication.candidateProfileDetails.paySlips?.length ?? 0) == 0 && ((this.JobApplication.candidateProfileDetails.PaySlipsURL?.length ?? 0) == 0)) {\r\n this.validationFlag = true;\r\n return false;\r\n }\r\n }\r\n var AvailindexIs = this.fildOfCandidateDetails.map(function (e) { return e.fieldCode; }).indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel.map(function (e) { return e.fieldCode; }).indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF = this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1]\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n\r\n }\r\n save() {\r\n\r\n }\r\n requiredOrNotFlag: number = 2;\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\r\n this.developerKey = environment.google.picker.DeveloperKey ?? 'AIzaSyCITcpljUY9xOAaUy31-h_L8GR2NjFmoc8';\r\n this.CLIENT_ID = environment.google.picker.ClientId ?? \"433136606656-0t5vbq82i88hjjg7v8orri6dccfgqeec.apps.googleusercontent.com\";\r\n this.appId = environment.google.picker.AppId ?? \"433136606656\";\r\n this.SCOPES = environment.google.picker.Scope ?? 'https://www.googleapis.com/auth/drive.file';\r\n\r\n this.pickerApiLoaded = false;\r\n this.oauthToken = '';\r\n }\r\n sendable = new FormData();\r\n uploadPayslips() {\r\n var files = (this.payslips.nativeElement as HTMLInputElement).files;\r\n if (files.length > 0) {\r\n var isValidFile = false;\r\n for (let i = 0; i < files.length; i++) {\r\n var file = files[i];\r\n if (file.size > 1048576 * 4) {\r\n var text = 'Payslip file size should be less then 4MB';\r\n this.toastr.error(text);\r\n isValidFile = true;\r\n }\r\n }\r\n if (isValidFile) {\r\n this.payslips.nativeElement.value = \"\";\r\n return;\r\n }\r\n }\r\n this.JobApplication.paySlipfilesList = [];\r\n for (let f = 0; f < files.length; f++) {\r\n this.JobApplication.paySlipfilesList.push(files[f])\r\n }\r\n this.JobApplication.candidateProfileDetails.paySlips = this.JobApplication.paySlipfilesList;\r\n this.payslips.nativeElement.value = \"\";\r\n this.checkValidationFlag();\r\n }\r\n removePayslips(index: number) {\r\n this.JobApplication.paySlipfilesList.splice(index, 1);\r\n this.checkValidationFlag();\r\n };\r\n\r\n removeGoogleDrivePayslips(index: number) {\r\n this.JobApplication.googleDrivePaySlipsFiles.splice(index, 1);\r\n this.checkValidationFlag();\r\n }\r\n checkValidationFlag() {\r\n this.validationFlag =\r\n this.requiredOrNotFlag == 1 ?\r\n (((this.JobApplication.googleDrivePaySlipsFiles?.length ?? 0) + (this.JobApplication.paySlipfilesList?.length ?? 0)) == 0) : false;\r\n }\r\n\r\n // Use the Google API Loader script to load the google.picker script.\r\n loadPicker() {\r\n console.log(\"Loading auth2 & picker\");\r\n this.isPickerLoaded = false;\r\n gapi.load('auth2', {\r\n 'callback': () => {\r\n var auth = gapi.auth2.getAuthInstance();\r\n if (auth) {\r\n //auth.disconnect();\r\n var authResult = auth.currentUser.get().getAuthResponse();\r\n if (authResult) {\r\n this.authorizeResult(authResult);\r\n console.log(\"auth2 exist\");\r\n return;\r\n }\r\n }\r\n gapi.auth2.authorize(\r\n {\r\n 'client_id': this.CLIENT_ID,\r\n 'scope': this.SCOPES,\r\n 'immediate': false\r\n }, (authResult) => {\r\n this.authorizeResult(authResult);\r\n console.log(\"auth2 success\");\r\n });\r\n }\r\n });\r\n gapi.load('picker', {\r\n 'callback': () => {\r\n this.pickerApiLoaded = true;\r\n this.createPicker();\r\n }\r\n });\r\n }\r\n authorizeResult(authResult: any) {\r\n if (authResult && !authResult.error) {\r\n if (authResult.scope.indexOf(this.SCOPES) == -1) {\r\n console.log(\"auth2 success but drive scope missing(\" + authResult.scope + \"). Reintilize the scope.\");\r\n this.loadPicker();\r\n return;\r\n }\r\n console.log(\"auth2 success\");\r\n this.oauthToken = authResult.access_token;\r\n this.createPicker();\r\n gapi.load('client:auth2', () => {\r\n console.log(\"client auth2 loaded\");\r\n var that = this;\r\n gapi.client.init({\r\n //apiKey: API_KEY,\r\n clientId: that.CLIENT_ID,\r\n discoveryDocs: that.DISCOVERY_DOCS,\r\n scope: that.SCOPES\r\n }).then(function () {\r\n // Listen for sign-in state changes.\r\n gapi.auth2.getAuthInstance().isSignedIn.listen(that.updateClientSigninStatus);\r\n\r\n // Handle the initial sign-in state.\r\n that.updateClientSigninStatus(gapi.auth2.getAuthInstance().isSignedIn.get());\r\n\r\n }, function (error) {\r\n console.log(JSON.stringify(error, null, 2));\r\n });\r\n });\r\n } else {\r\n console.log(\"auth2 failed -> \" + JSON.stringify(authResult));\r\n }\r\n }\r\n DISCOVERY_DOCS = [\"https://www.googleapis.com/discovery/v1/apis/drive/v3/rest\"];\r\n updateClientSigninStatus(isSignedIn) {\r\n console.log(\"client auth2 isSignedIn:\" + isSignedIn);\r\n if (isSignedIn) {\r\n } else {\r\n gapi.auth2.getAuthInstance().signIn();\r\n }\r\n }\r\n\r\n isPickerLoaded = false;\r\n // Create and render a Picker object for searching images.\r\n createPicker() {\r\n if (this.pickerApiLoaded && this.oauthToken) {\r\n console.log(\"picker -> loading.\" + this.isPickerLoaded);\r\n if (this.isPickerLoaded == false) {\r\n this.isPickerLoaded = true;\r\n //var view = new google.picker.View(google.picker.ViewId.DOCS);\r\n var view = new google.picker.View(google.picker.ViewId.PDFS);\r\n view.setMimeTypes(\"application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingm\");\r\n var picker = new google.picker.PickerBuilder()\r\n .enableFeature(google.picker.Feature.NAV_HIDDEN)\r\n .enableFeature(google.picker.Feature.MULTISELECT_ENABLED)\r\n .setAppId(this.appId)\r\n .setOAuthToken(this.oauthToken)\r\n .addView(view)\r\n .addView(new google.picker.DocsUploadView())\r\n .setDeveloperKey(this.developerKey)\r\n .setCallback((data) => {\r\n if (data.action == google.picker.Action.PICKED) {\r\n console.log(\"picker -> selected\");\r\n var type = \"anyone\";\r\n var role = \"reader\";\r\n var docs = data[google.picker.Response.DOCUMENTS];\r\n var that = this;\r\n that.JobApplication.paySlipfilesList = [];\r\n for (let a = 0; a < docs.length; a++) {\r\n if (this.JobApplication.googleDrivePaySlipsFiles.map(da => da.id).indexOf(docs[a].id) == -1) {\r\n\r\n let obj = { \"name\": docs[a].name, \"url\": docs[a].url, Type: docs[a].mimeType, id: docs[a].id, file: null };\r\n gapi.client.load('drive', 'v3', function () {\r\n const file = gapi.client.drive.files.get({ 'fileId': obj.id, alt: 'media' }, {\r\n responseType: 'arraybuffer',\r\n encoding: null\r\n });\r\n file.then(function (res) {\r\n // In this case, res.body is the binary data of the downloaded file.\r\n const charArray = new Array(res.body.length);\r\n for (let i = 0; i < res.body.length; i++) {\r\n charArray[i] = res.body.charCodeAt(i);\r\n }\r\n const typedArray = new Uint8Array(charArray);\r\n const blob = new Blob([typedArray], { type: res.headers['Content-Type'] });\r\n\r\n let fl = new File([blob], obj.name, { type: blob.type, lastModified: Date.now() });\r\n that.JobApplication.paySlipfilesList.push(fl);\r\n that.JobApplication.candidateProfileDetails.paySlips = that.JobApplication.paySlipfilesList;\r\n that.checkValidationFlag();\r\n that.changeDetectorRef.detectChanges();\r\n });\r\n that.isGoogleDriveEnabled = true;\r\n });\r\n //this.JobApplication.googleDrivePaySlipsFiles.push(obj);\r\n\r\n //var request1 = gapi.client.request({\r\n // 'path': '/drive/v3/files/' + docs[a].id + '/permissions',\r\n // 'method': 'POST',\r\n // 'headers': {\r\n // 'Content-Type': 'application/json',\r\n // 'Authorization': 'Bearer ' + that.oauthToken\r\n // },\r\n // 'body': {\r\n // 'role': role,\r\n // 'type': type\r\n // }\r\n //});\r\n\r\n ////Export only supports Docs Editors files.\r\n //let request1 = gapi.client.request({\r\n // 'path': '/drive/v3/files/' + docs[a].id + '/export?mimeType=' + docs[a].mimeType + '&alt=media&acknowledgeAbuse=true',\r\n // 'method': 'GET',\r\n // 'headers': {\r\n // 'Content-Type': 'application/json',\r\n // 'Authorization': 'Bearer ' + that.oauthToken\r\n // }\r\n //});\r\n\r\n //let request1 = gapi.client.request({\r\n // 'path': '/drive/v3/files/' + docs[a].id + '?acknowledgeAbuse=true',\r\n // 'method': 'GET',\r\n // 'headers': {\r\n // 'Content-Type': 'application/json',\r\n // 'Authorization': 'Bearer ' + that.oauthToken\r\n // },\r\n // params: { alt: 'media' }\r\n //});\r\n //request1.execute(function (resp, resp2, resp3) {\r\n // console.log(resp);\r\n // if (resp?.error != null) {\r\n // alert(resp.error.message);\r\n // }\r\n // else {\r\n // //obj.file = resp;\r\n // //this.JobApplication.googleDrivePaySlipsFiles.push(obj);\r\n\r\n // that.googleDriveService.getFile('Bearer ' + that.oauthToken, docs[a].id).subscribe((resp: any) => {\r\n // //obj.file = resp.body;\r\n // //this.JobApplication.googleDrivePaySlipsFiles.push(obj);\r\n // let fl = new File([Buffer.from(resp.body)], obj.name, { type: obj.Type });\r\n // that.JobApplication.paySlipfilesList.push(fl);\r\n // }, (error) => {\r\n // console.log(error);\r\n // if (error != null) {\r\n // //alert(error.error.error.message);\r\n // that.toastr.error('File permission failed');\r\n // }\r\n // });\r\n // }\r\n //});\r\n\r\n\r\n }\r\n }\r\n if (!(docs.length > 0)) {\r\n console.log(\"picker -> no file selected\");\r\n }\r\n this.checkValidationFlag();\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n this.payslips.nativeElement.value = \"\";\r\n })\r\n .build();\r\n picker.setVisible(true);\r\n }\r\n }\r\n else {\r\n console.log(\"picker -> pickerApiLoaded:\" + this.pickerApiLoaded + \", oauthToken:\" + (this.oauthToken ? true : false));\r\n }\r\n }\r\n}\r\n\r\n","
Compensation & Benefits
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Upload your last 3 months pay slips\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
0\">Uploaded Payslips From PC\r\n
\r\n
0\">\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"pdf\"\r\n

{{fil.name}}

\r\n
\r\n
\r\n
\r\n
0\">Uploaded Payslips From Google Drive\r\n
\r\n
0\">\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"pdf\"\r\n

{{fil.name}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n We accept all Payslips in one document in .pdf, .doc(x) format.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Required\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Please include the Salary credit SMS screenshots in a document or bank\r\n statement if payslips are not available.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { HttpClient } from '@angular/common/http';\nimport { User } from '../models/user';\nimport { environment } from '../../../environments/environment';\nimport { map } from 'rxjs/operators';\nimport { SignalrNotificationsService } from '../../shared/services/signalr-notifications.service';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticationService {\n\n signalrConnectionId: string = null;\n ipAddress: string = null;\n latitude: string = null;\n longitude: string = null;\n private localUser: User = null;\n\n private currentUserSubject: BehaviorSubject;\n public currentUser: Observable;\n\n constructor(\n private http: HttpClient,\n private srConnService: SignalrNotificationsService,\n private router: Router\n ) {\n this.localUser = JSON.parse(localStorage.getItem('piHireCpUser'));\n this.currentUserSubject = new BehaviorSubject(JSON.parse(localStorage.getItem('piHireCpUser')));\n this.currentUser = this.currentUserSubject.asObservable();\n this.srConnService.castlogout.subscribe((resp: boolean) => {\n if (resp) {\n this.srConnService.disconnectConnection();\n localStorage.removeItem('currentUser');\n this.localUser = null;\n this.currentUserSubject.next(null);\n this.router.navigate(['/login']);\n }\n }, (error) => {\n\n });\n //It is getting conflict with third party login(google)\n //this.loadIpAddress();\n this.getLocation();\n }\n\n public get currentUserValue(): User {\n this.localUser = JSON.parse(localStorage.getItem('piHireCpUser'));\n if (this.localUser == null) {\n this.currentUserSubject.next(null);\n }\n return this.currentUserSubject.value;\n }\n\n login(username: string, password: string) {\n return this.http.post(`${environment.baseUrl}/account/authenticate`, { username, password })\n .pipe(map(user => {\n // store user details and jwt token in local storage to keep user logged in between page refreshes\n localStorage.setItem('piHireCpUser', JSON.stringify(user));\n this.currentUserSubject.next(user);\n this.localUser = user;\n return user;\n }));\n }\n\n AuthenticateGoogle(username: string, token: string) {\n return this.http.post(`${environment.baseUrl}/account/authenticate/google`, { username, token })\n .pipe(map(user => {\n // store user details and jwt token in local storage to keep user logged in between page refreshes\n localStorage.setItem('piHireCpUser', JSON.stringify(user));\n this.currentUserSubject.next(user);\n return user;\n }));\n }\n\n AuthenticateFacebook(username: string, token: string) {\n return this.http.post(`${environment.baseUrl}/account/authenticate/facebook`, { username, token })\n .pipe(map(user => {\n // store user details and jwt token in local storage to keep user logged in between page refreshes\n localStorage.setItem('piHireCpUser', JSON.stringify(user));\n this.currentUserSubject.next(user);\n return user;\n }));\n }\n\n logoutFromDevices(token, email) {\n return this.http.post(`${environment.baseUrl}/account/LogoutDevices`, { token: token, email: email });\n }\n\n\n logout(isUnauth: boolean = false) {\n // remove user from local storage to log user out\n this.srConnService.disconnectConnection();\n if (isUnauth != true) {\n this.disconnectUser(this.srConnService.connectionId);\n }\n localStorage.removeItem('piHireCpUser');\n this.currentUserSubject.next(null);\n // this.router.navigate(['/pihire/home']);\n //window.location.href = environment.websiteUrl;\n this.router.navigate(['/login']);\n }\n\n disconnectUser(connectionId: string) {\n this.http.post(`${environment.baseUrl}/user/DisconnectUser`, { connectionId: connectionId })\n .subscribe((resp) => { }, (erro) => { });\n }\n\n register(model: any) {\n //register new candidate by using email and password\n return this.http.post(`${environment.baseUrl}/account/candidate/register`, model);\n }\n\n registerWithGoogle(model: any) {\n //register new candidate by using email and password\n return this.http.post(`${environment.baseUrl}/account/candidate/register/google`, model);\n }\n\n registerWithFacebook(model: any) {\n //register new candidate by using email and password\n return this.http.post(`${environment.baseUrl}/account/candidate/register/facebook`, model);\n }\n\n emailVarification(token: string) {\n return this.http.post(`${environment.baseUrl}/account/emailverify`, { token: token });\n }\n\n forgetPassword(email: string) {\n return this.http.post(`${environment.baseUrl}/account/ForgotPassword`, { email: email });\n }\n\n resetPassword(model: any) {\n return this.http.post(`${environment.baseUrl}/account/ResetPassword`, model);\n }\n\n loadSignalrConnectionId(conId: string) {\n this.signalrConnectionId = conId;\n }\n\n updateTxnLogs(loginStatus: boolean) {\n let model = {\n ipAddress: this.ipAddress,\n lat: this.latitude,\n longi: this.longitude,\n deviceUiId: this.signalrConnectionId,\n deviceType: this.loadDeviceType(),\n loginStatus: loginStatus\n };\n return this.http.post(`${environment.baseUrl}/user/updatetxnlog`, model);\n }\n\n loadIpAddress(): void {\n this.http.get(\"https://jsonip.com/\").subscribe((resp: any) => {\n this.ipAddress = resp.ip;\n }, (error) => {\n this.ipAddress = null;\n })\n }\n\n loadDeviceType(): number {\n const ua = navigator.userAgent;\n if (/(tablet|ipad|playbook|silk)|(android(?!.*mobi))/i.test(ua)) {\n return 3; // \"tab\";\n }\n if (\n /Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Kindle|Silk-Accelerated|(hpw|web)OS|Opera M(obi|ini)/.test(\n ua\n )\n ) {\n return 2; // \"mobile\";\n }\n return 1; //\"desktop\";\n }\n\n getLocation() {\n if (navigator.geolocation) {\n navigator.geolocation.getCurrentPosition((position) => {\n this.latitude = position?.coords?.latitude.toString();\n this.longitude = position?.coords?.longitude.toString();\n });\n } else {\n //this.latitude = null;\n //this.longitude = null;\n }\n }\n\n}\n","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\n\nimport { JobApplyComponent } from '../job-apply.component';\nimport { ToastrService } from 'ngx-toastr';\nimport { environment } from '../../../../environments/environment';\nimport { JobOpeningPreferenceTypes } from '../../../core/models/enums';\n\ndeclare var gapi: any;\ndeclare var google: any;\n\n@Component({\n selector: 'app-current-salary-expectations',\n templateUrl: './current-salary-expectations.component.html',\n styleUrls: ['./current-salary-expectations.component.scss']\n})\nexport class CurrentSalaryExpectationsComponent implements OnInit {\n @Input() application: any;\n @Input() currentOpeningPREF: any = {};\n @Input() fildOfCandidateDetails: any;\n @Input() currentPage:number;\n @Input() currentWizard:number;\n\n @Output() valueChange = new EventEmitter();\n validationFlag: boolean = false;\n developerKey;\n CLIENT_ID;\n appId;\n SCOPES;\n isPickerLoaded = false;\n pickerApiLoaded = false;\n oauthToken;\n isGoogleDriveEnabled: boolean = true;\n @ViewChild('payslips', { read: ElementRef })\n payslips: ElementRef;\n preferenceType:any = JobOpeningPreferenceTypes;\n\n constructor(\n public JobApplication: JobApplyComponent,\n private toastr: ToastrService,\n private changeDetectorRef: ChangeDetectorRef\n ) {\n // this.changeWizard = new EventEmitter();\n }\n \n prevoius() {\n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: false\n });\n }\n\n\n next() {\n if(this.application.candidatePrefPaySlp == this.preferenceType.ESSENTIAL && (this.JobApplication.paySlipfilesList.length == 0 && this.JobApplication.googleDrivePaySlipsFiles.length == 0)) {\n this.toastr.warning('Please Upload your 3 months payslips');\n return;\n } \n this.valueChange.emit({\n currentPage: this.currentPage,\n currentWizard: this.currentWizard,\n isForward: true\n });\n }\n \n \n\n requiredOrNotFlag: number = 1;\n ngOnInit(): void {\n // this.CheckVaribale = this.currentOpeningPREF;\n this.requiredOrNotFlag = this.currentOpeningPREF.displayFlag;\n this.developerKey = environment.google.picker.DeveloperKey ?? 'AIzaSyCITcpljUY9xOAaUy31-h_L8GR2NjFmoc8';\n this.CLIENT_ID = environment.google.picker.ClientId ?? \"433136606656-0t5vbq82i88hjjg7v8orri6dccfgqeec.apps.googleusercontent.com\";\n this.appId = environment.google.picker.AppId ?? \"433136606656\";\n this.SCOPES = environment.google.picker.Scope ?? 'https://www.googleapis.com/auth/drive.file';\n\n this.pickerApiLoaded = false;\n this.oauthToken = '';\n\n }\n loadPicker() {\n console.log(\"Loading auth2 & picker\");\n this.isPickerLoaded = false;\n gapi.load('auth2', {\n 'callback': () => {\n var auth = gapi.auth2.getAuthInstance();\n if (auth) {\n //auth.disconnect();\n var authResult = auth.currentUser.get().getAuthResponse();\n if (authResult) {\n this.authorizeResult(authResult);\n console.log(\"auth2 exist\");\n return;\n }\n }\n gapi.auth2.authorize(\n {\n 'client_id': this.CLIENT_ID,\n 'scope': this.SCOPES,\n 'immediate': false\n }, (authResult) => {\n this.authorizeResult(authResult);\n console.log(\"auth2 success\");\n });\n }\n });\n gapi.load('picker', {\n 'callback': () => {\n this.pickerApiLoaded = true;\n this.createPicker();\n }\n });\n }\n DISCOVERY_DOCS = [\"https://www.googleapis.com/discovery/v1/apis/drive/v3/rest\"];\n updateClientSigninStatus(isSignedIn) {\n console.log(\"client auth2 isSignedIn:\" + isSignedIn);\n if (isSignedIn) {\n } else {\n gapi.auth2.getAuthInstance().signIn();\n }\n }\n\n authorizeResult(authResult: any) {\n if (authResult && !authResult.error) {\n if (authResult.scope.indexOf(this.SCOPES) == -1) {\n console.log(\"auth2 success but drive scope missing(\" + authResult.scope + \"). Reintilize the scope.\");\n this.loadPicker();\n return;\n }\n console.log(\"auth2 success\");\n this.oauthToken = authResult.access_token;\n this.createPicker();\n gapi.load('client:auth2', () => {\n console.log(\"client auth2 loaded\");\n var that = this;\n gapi.client.init({\n //apiKey: API_KEY,\n clientId: that.CLIENT_ID,\n discoveryDocs: that.DISCOVERY_DOCS,\n scope: that.SCOPES\n }).then(function () {\n // Listen for sign-in state changes.\n gapi.auth2.getAuthInstance().isSignedIn.listen(that.updateClientSigninStatus);\n\n // Handle the initial sign-in state.\n that.updateClientSigninStatus(gapi.auth2.getAuthInstance().isSignedIn.get());\n\n }, function (error) {\n console.log(JSON.stringify(error, null, 2));\n });\n });\n } else {\n console.log(\"auth2 failed -> \" + JSON.stringify(authResult));\n }\n }\n\n // Create and render a Picker object for searching images.\n createPicker() {\n if (this.pickerApiLoaded && this.oauthToken) {\n console.log(\"picker -> loading.\" + this.isPickerLoaded);\n if (this.isPickerLoaded == false) {\n this.isPickerLoaded = true;\n //var view = new google.picker.View(google.picker.ViewId.DOCS);\n var view = new google.picker.View(google.picker.ViewId.PDFS);\n view.setMimeTypes(\"application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingm\");\n var picker = new google.picker.PickerBuilder()\n .enableFeature(google.picker.Feature.NAV_HIDDEN)\n .enableFeature(google.picker.Feature.MULTISELECT_ENABLED)\n .setAppId(this.appId)\n .setOAuthToken(this.oauthToken)\n .addView(view)\n .addView(new google.picker.DocsUploadView())\n .setDeveloperKey(this.developerKey)\n .setCallback((data) => {\n if (data.action == google.picker.Action.PICKED) {\n console.log(\"picker -> selected\");\n var type = \"anyone\";\n var role = \"reader\";\n var docs = data[google.picker.Response.DOCUMENTS];\n var that = this;\n that.JobApplication.paySlipfilesList = [];\n for (let a = 0; a < docs.length; a++) {\n if (this.JobApplication.googleDrivePaySlipsFiles.map(da => da.id).indexOf(docs[a].id) == -1) {\n\n let obj = { \"name\": docs[a].name, \"url\": docs[a].url, Type: docs[a].mimeType, id: docs[a].id, file: null };\n gapi.client.load('drive', 'v3', function () {\n const file = gapi.client.drive.files.get({ 'fileId': obj.id, alt: 'media' }, {\n responseType: 'arraybuffer',\n encoding: null\n });\n file.then(function (res) {\n // In this case, res.body is the binary data of the downloaded file.\n const charArray = new Array(res.body.length);\n for (let i = 0; i < res.body.length; i++) {\n charArray[i] = res.body.charCodeAt(i);\n }\n const typedArray = new Uint8Array(charArray);\n const blob = new Blob([typedArray], { type: res.headers['Content-Type'] });\n\n let fl = new File([blob], obj.name, { type: blob.type, lastModified: Date.now() });\n that.JobApplication.paySlipfilesList.push(fl);\n that.JobApplication.candidateProfileDetails.paySlips = that.JobApplication.paySlipfilesList;\n that.checkValidationFlag();\n that.changeDetectorRef.detectChanges();\n });\n that.isGoogleDriveEnabled = true;\n });\n //this.JobApplication.googleDrivePaySlipsFiles.push(obj);\n\n //var request1 = gapi.client.request({\n // 'path': '/drive/v3/files/' + docs[a].id + '/permissions',\n // 'method': 'POST',\n // 'headers': {\n // 'Content-Type': 'application/json',\n // 'Authorization': 'Bearer ' + that.oauthToken\n // },\n // 'body': {\n // 'role': role,\n // 'type': type\n // }\n //});\n\n ////Export only supports Docs Editors files.\n //let request1 = gapi.client.request({\n // 'path': '/drive/v3/files/' + docs[a].id + '/export?mimeType=' + docs[a].mimeType + '&alt=media&acknowledgeAbuse=true',\n // 'method': 'GET',\n // 'headers': {\n // 'Content-Type': 'application/json',\n // 'Authorization': 'Bearer ' + that.oauthToken\n // }\n //});\n\n //let request1 = gapi.client.request({\n // 'path': '/drive/v3/files/' + docs[a].id + '?acknowledgeAbuse=true',\n // 'method': 'GET',\n // 'headers': {\n // 'Content-Type': 'application/json',\n // 'Authorization': 'Bearer ' + that.oauthToken\n // },\n // params: { alt: 'media' }\n //});\n //request1.execute(function (resp, resp2, resp3) {\n // console.log(resp);\n // if (resp?.error != null) {\n // alert(resp.error.message);\n // }\n // else {\n // //obj.file = resp;\n // //this.JobApplication.googleDrivePaySlipsFiles.push(obj);\n\n // that.googleDriveService.getFile('Bearer ' + that.oauthToken, docs[a].id).subscribe((resp: any) => {\n // //obj.file = resp.body;\n // //this.JobApplication.googleDrivePaySlipsFiles.push(obj);\n // let fl = new File([Buffer.from(resp.body)], obj.name, { type: obj.Type });\n // that.JobApplication.paySlipfilesList.push(fl);\n // }, (error) => {\n // console.log(error);\n // if (error != null) {\n // //alert(error.error.error.message);\n // that.toastr.error('File permission failed');\n // }\n // });\n // }\n //});\n\n\n }\n }\n if (!(docs.length > 0)) {\n console.log(\"picker -> no file selected\");\n }\n this.checkValidationFlag();\n this.changeDetectorRef.detectChanges();\n }\n this.payslips.nativeElement.value = \"\";\n })\n .build();\n picker.setVisible(true);\n }\n }\n else {\n console.log(\"picker -> pickerApiLoaded:\" + this.pickerApiLoaded + \", oauthToken:\" + (this.oauthToken ? true : false));\n }\n }\n checkValidationFlag() {\n this.validationFlag =\n this.requiredOrNotFlag == 1 ?\n (((this.JobApplication.googleDrivePaySlipsFiles?.length ?? 0) + (this.JobApplication.paySlipfilesList?.length ?? 0)) == 0) : false;\n }\n uploadPayslips() {\n var files = (this.payslips.nativeElement as HTMLInputElement).files;\n if (files.length > 0) {\n var isValidFile = false;\n for (let i = 0; i < files.length; i++) {\n var file = files[i];\n if (file.size > 1048576 * 4) {\n var text = 'Payslip file size should be less then 4MB';\n this.toastr.error(text);\n isValidFile = true;\n }\n }\n if (isValidFile) {\n this.payslips.nativeElement.value = \"\";\n return;\n }\n }\n this.JobApplication.paySlipfilesList = [];\n for (let f = 0; f < files.length; f++) {\n this.JobApplication.paySlipfilesList.push(files[f])\n }\n this.JobApplication.candidateProfileDetails.paySlips = this.JobApplication.paySlipfilesList;\n this.payslips.nativeElement.value = \"\";\n this.checkValidationFlag();\n }\n removePayslips(index: number) {\n this.JobApplication.paySlipfilesList.splice(index, 1);\n this.checkValidationFlag();\n };\n\n removeGoogleDrivePayslips(index: number) {\n this.JobApplication.googleDrivePaySlipsFiles.splice(index, 1);\n this.checkValidationFlag();\n }\n\n downloadPayslips(file) {\n // console.log(file)\n // window.open(file.fileURL, '_blank');\n\n const fileUrl = URL.createObjectURL(file);\n window.open(fileUrl, '_blank');\n\n }\n\n \n}\n","
Compensation & Benefits
\n
\n\n
\n \n\n
Annual Salary
\n\n
\n
\n
\n
\n \n \n {{ c.rmvalue }}\n \n \n\n
\n
\n
\n
\n
\n
\n \n \n\n
\n
\n
\n
\n
\n
\n \n \n \n\n\n
\n
\n
\n
\n
\n
\n \n \n \n\n
\n
\n
\n
\n\n
\n
\n
Monthly Salary
\n\n\n \n \n
\n
\n \n \n \n \n
\n
\n \n \n\n \n
\n\n
\n \n \n\n \n \n
\n
\n \n \n \n \n \n
\n
\n
\n\n
\n \n\n \n
\n \n
\n
\n
\n
\n

\n Your current monthly salary in\n \n {{ JobApplication.candidateCountryName }}\n is\n

\n \n {{ JobApplication.candidateProfileDetails?.cpCurrency }}\n {{ ( JobApplication.candidateLocationRate | number:'.0-0' ) || '-' }}\n \n
\n
\n

\n Is equivalent in\n {{ JobApplication.application?.country }}\n monthly is\n

\n \n {{ JobApplication.application?.currencyName }}\n {{ (JobApplication.clientLocationRate | number:'.0-0' ) || 0 }}\n \n
\n
\n

\n Your monthly expected salary in\n \n {{ JobApplication.application?.country }}\n \n

\n \n {{ JobApplication.application?.currencyName }}\n {{ (JobApplication.candidateProfileDetails?.epTakeHomeSalPerMonth | number:'.0-0' ) || '0' }}\n \n
\n
\n Or\n {{ JobApplication.equivalentToInYear | number:'.0-0' }}\n {{ JobApplication.application?.currencyName }}\n
\n
\n

\n Which is {{ JobApplication.persentage > 0 ? 'more than' : '' }}\n \n {{ JobApplication.persentage }}%\n than your current salary\n

\n
\n
\n
\n

\n 1 {{ JobApplication.application?.currencyName }}={{ JobApplication.currentcConvertionRateTwoDecimal }}\n {{ JobApplication.candidateProfileDetails?.cpCurrency || 'N/A'}}\n

\n
Avg. conversion rate : {{ JobApplication.todaysDate | date:'dd MMM YYYY'}}
\n \n
\n
\n
\n
\n\n \n\n
\n
\n
\n

\n Upload your 3 months payslips below\n

\n Please upload the salary bank statement if payslips are not available.\n
\n
\n\n
\n\n \n \n
\n
\n
\n
\n
\n \n
\n \n \n\n  \n
\n PDF or Word document file format, file size no more than 3MB\n
\n
\n
\n
\n
\n \n \n \n\n\n
0\">Uploaded payslips from PC\n
\n\n
\n
\n
\n {{fil.name}}\n
\n\n\n
\n
\n \n\n \n
\n\n
\n\n
0\">Uploaded Payslips From Google Drive\n
\n\n
\n
\n
\n {{fil.name}}\n
\n\n\n
\n
\n \n
\n\n
\n
\n\n\n\n \n\n
\n \n
\n \n \n
\n
\n\n\n
","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"zn8P\";","import { Injectable } from '@angular/core';\nimport { Router, NavigationEnd, NavigationStart } from '@angular/router';\r\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CustomRouteService {\n\n private previousUrl: string = null;\n private currentUrl: string = null;\n\n\n constructor(\n private router: Router\n ) {\n this.currentUrl = this.router.url;\r\n router.events.subscribe(event => {\r\n if (event instanceof NavigationStart) {\r\n this.previousUrl = this.currentUrl;\r\n localStorage.setItem('pi_purl', this.previousUrl);\r\n this.currentUrl = event.url;\r\n };\r\n });\n }\n\n public getPreviousUrl() {\r\n let url = localStorage.getItem('pi_purl');\r\n if (url == null || url == \"/login\" || url == \"/\" || url == \"/forgot-password\" || url == \"/pihire/home\") {\r\n return \"/app/profile-active-applications\";\r\n }\r\n return url\r\n }\n}\n","import {\r\n animate,\r\n keyframes,\r\n style,\r\n transition,\r\n trigger,\r\n query,\r\n stagger,\r\n} from '@angular/animations';\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { JobApplicationComponent } from '../../job-application.component';\r\n@Component({\r\n selector: 'app-work-eligibility',\r\n templateUrl: './work-eligibility.component.html',\r\n styleUrls: ['./work-eligibility.component.scss'],\r\n})\r\nexport class WorkEligibilityComponent implements OnInit {\r\n //@Output() changeWizard: EventEmitter<{ 'buttonType': string, 'currentPage': number }>;\r\n @Input() application: any;\r\n @Input() currentOpeningPREF: any = {};\r\n @Output() valueChange = new EventEmitter();\r\n @Input() fildOfCandidateDetails: any;\r\n validationFlag: boolean = false;\r\n constructor(public JobApplication: JobApplicationComponent) {\r\n // this.changeWizard = new EventEmitter();\r\n }\r\n next() {\r\n setTimeout(() => {\r\n this.checkOpeningPREF();\r\n }, 500);\r\n }\r\n\r\n CheckVaribale: any = {};\r\n checkOpeningPREF() {\r\n this.validationFlag = true;\r\n if (this.JobApplication.candidateProfileDetails.validPpflag !== false) {\r\n if (\r\n this.JobApplication.candidateProfileDetails.validPpflag == null ||\r\n this.JobApplication.candidateProfileDetails.validPpflag == ''\r\n ) {\r\n // this.toastr.warning('Please provide all information requested');\r\n return false;\r\n }\r\n }\r\n var AvailindexIs = this.fildOfCandidateDetails\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(this.CheckVaribale.fieldCode);\r\n var fieldCode = this.fildOfCandidateDetails[AvailindexIs + 1].fieldCode;\r\n if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == false) {\r\n this.currentOpeningPREF = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.CheckVaribale = this.CheckVaribale =\r\n this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else if (this.fildOfCandidateDetails[AvailindexIs + 1].dynamic == true) {\r\n var ExistindexIs = this.application.openingPREFViewModel\r\n .map(function (e) {\r\n return e.fieldCode;\r\n })\r\n .indexOf(fieldCode);\r\n if (ExistindexIs != -1) {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF =\r\n this.application.openingPREFViewModel[ExistindexIs];\r\n this.valueChange.emit(this.currentOpeningPREF);\r\n } else {\r\n this.CheckVaribale = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.currentOpeningPREF = this.fildOfCandidateDetails[AvailindexIs + 1];\r\n this.checkOpeningPREF();\r\n }\r\n }\r\n //var nextKey = this.application.openingPREFViewModel[indexIs + 1];\r\n }\r\n\r\n save() {}\r\n ngOnInit(): void {\r\n this.CheckVaribale = this.currentOpeningPREF;\r\n }\r\n ngOnChanges() {}\r\n}\r\n","
Work Eligibility
\r\n
\r\n
\r\n
\r\n
\r\n

Passport Validity\r\n\r\n \r\n Your passport must be valid for at least 6 months.\r\n \r\n

\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n Required\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Please provide all information\r\n requested. A partially filled application may not be considered for\r\n review.\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n"]}