{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./src/app/Admin/IPR/history/history.component.html","./src/app/Admin/IPR/update-import/update-import.component.html","./src/app/Admin/IPR/updates/manageupdate.component.html","./src/app/Admin/IPR/updates/updates.component.html","./src/app/Admin/access-denied/access-denied.component.html","./src/app/Admin/action-item/action-item-list/action-item-list.component.html","./src/app/Admin/action-item/action-item-list/manage-action-item.component.html","./src/app/Admin/action-item/action-item-type/action-item-type.component.html","./src/app/Admin/action-item/action-item-type/manege-action-type.component.html","./src/app/Admin/action-item/carrier-category/carrier-category.component.html","./src/app/Admin/action-item/carrier-category/manage-carrier-category.component.html","./src/app/Admin/action-item/general-alerts/general-alerts.component.html","./src/app/Admin/action-item/general-alerts/manage-general-alerts.component.html","./src/app/Admin/action-item/landing-page/landing-page.component.html","./src/app/Admin/admin-login/admin-login.component.html","./src/app/Admin/dashboard/dashboard.component.html","./src/app/Admin/inteserra-users/inteserra-manage-users.component.html","./src/app/Admin/inteserra-users/inteserra-users.component.html","./src/app/Admin/profile/profile.component.html","./src/app/Admin/redirect-live/redirect-live.component.html","./src/app/Admin/reports/reports.component.html","./src/app/Admin/state-fund-preview/state-fund-preview.component.html","./src/app/Admin/state-matrixsetup/state-manangesetup.component.html","./src/app/Admin/state-matrixsetup/state-matrixsetup.component.html","./src/app/Admin/states/states.component.html","./src/app/Admin/updates/manageupdate.component.html","./src/app/Admin/updates/updates.component.html","./src/app/Admin/users/manageuser.component.html","./src/app/Admin/users/users.component.html","./src/app/Front/ActionItem/action-updates/action-updates.component.html","./src/app/Front/ActionItem/aiaction-calendar/aiaction-calendar.component.html","./src/app/Front/ActionItem/aihome/aihome.component.html","./src/app/Front/ActionItem/dashboard/dashboard.component.html","./src/app/Front/ActionItem/my-favorites/my-favorites.component.html","./src/app/Front/IPCS/fund-details/fund-details.component.html","./src/app/Front/IPCS/matrix/matrix.component.html","./src/app/Front/IPCS/my-favorites/my-favorites.component.html","./src/app/Front/IPCS/update/update.component.html","./src/app/Front/IPR/carriers/carriers.component.html","./src/app/Front/IPR/home/home.component.html","./src/app/Front/IPR/my-favorites/my-favorites.component.html","./src/app/Front/IPR/updates/updates.component.html","./src/app/Front/RMD/carriers/rmdcarriers.component.html","./src/app/Front/RMD/my-favorites/rmdmy-favorites.component.html","./src/app/Front/RMD/updates/rmdupdates.component.html","./src/app/Front/access-denied/access-denied.component.html","./src/app/Front/admin-by-pass-client-login/admin-by-pass-client-login.component.html","./src/app/Front/by-pass-login/by-pass-login.component.html","./src/app/Front/client-login/client-login.component.html","./src/app/Front/email-login/email-login.component.html","./src/app/Front/front-landing-page/front-landing-page.component.html","./src/app/Front/home/home.component.html","./src/app/Front/matrix/matrix.component.html","./src/app/Front/privacy/privacy.component.html","./src/app/Front/site-state-fund-priview/site-state-fund-priview.component.html","./src/app/Front/update/update.component.html","./src/app/Front/wireless-voip-my-favorites/wireless-voip-my-favorites.component.html","./src/app/Layout/admin-layout/admin-layout.component.html","./src/app/Layout/site-layout/site-layout.component.html","./src/app/Shared/action-item-details-popup/action-item-details-popup.component.html","./src/app/Shared/action-item-details/action-item-details.component.html","./src/app/Shared/action-status-popup/action-status-popup.component.html","./src/app/Shared/add-new-action-popup/add-new-action-popup.component.html","./src/app/Shared/edit-action-popup/edit-action-popup.component.html","./src/app/Shared/fund-details/fund-details.component.html","./src/app/Shared/notes-popup/notes-popup.component.html","./src/app/Shared/search-panel/search-panel.component.html","./src/app/app.component.html","./node_modules/tslib/tslib.es6.js","./src/Models/ActionCompanySpecificCategoryModel.ts","./src/Models/ActionDashboardCountModel.ts","./src/Models/ActionGetByIdModel.ts","./src/Models/ActionItemSaveNoteModel.ts","./src/Models/ActionItemSearchModel.ts","./src/Models/ActionItemTypeModel.ts","./src/Models/ActionItemUpdateStatusModel.ts","./src/Models/AddNewActionModel.ts","./src/Models/CarrierCategoryAdminModel.ts","./src/Models/Common.ts","./src/Models/DashboardCountModel.ts","./src/Models/FavoriteModel.ts","./src/Models/GeneralAlertsModel.ts","./src/Models/LoginPasswordModel.ts","./src/Models/RMDClientFavouriteCarriersModel.ts","./src/Models/RMDProviderFilterModel.ts","./src/Models/UserTokenModel.ts","./src/Models/actionCalendarSearchModel.ts","./src/Models/applicationActivityModel.ts","./src/Models/filterModel.ts","./src/Models/landingPageModel.ts","./src/Models/updatesPageModel.ts","./src/Models/usersModel.ts","./src/Services/RouterExtService.ts","./src/Services/SafePipe.ts","./src/Services/action-company-specific-category.service.ts","./src/Services/actionitem.service.ts","./src/Services/adminByPassClientLogin.service.ts","./src/Services/app.config.ts","./src/Services/application-activity.service.ts","./src/Services/bypass.service.ts","./src/Services/carriercategory.service.ts","./src/Services/country-master.service.ts","./src/Services/emaillogin.service.ts","./src/Services/history.service.ts","./src/Services/htmlToPdf.ts","./src/Services/ip.service.ts","./src/Services/ipr-update-import.service.ts","./src/Services/iprupdatesService.ts","./src/Services/matrix-fund-details.service.ts","./src/Services/matrix.service.ts","./src/Services/matrixfund.service.ts","./src/Services/products.service.ts","./src/Services/rmdupdates.service.ts","./src/Services/state-master.service.ts","./src/Services/token.service.ts","./src/Services/updatesService.ts","./src/Services/users.service.ts","./src/Services/utility.service.ts","./src/app/Admin/IPR/history/history.component.css","./src/app/Admin/IPR/history/history.component.ts","./src/app/Admin/IPR/update-import/update-import.component.ts","./src/app/Admin/IPR/updates/manageupdate.component.css","./src/app/Admin/IPR/updates/manageupdate.component.ts","./src/app/Admin/IPR/updates/updates.component.css","./src/app/Admin/IPR/updates/updates.component.ts","./src/app/Admin/access-denied/access-denied.component.css","./src/app/Admin/access-denied/access-denied.component.ts","./src/app/Admin/action-item/action-item-list/action-item-list.component.css","./src/app/Admin/action-item/action-item-list/action-item-list.component.ts","./src/app/Admin/action-item/action-item-list/manage-action-item.component.css","./src/app/Admin/action-item/action-item-list/manage-action-item.component.ts","./src/app/Admin/action-item/action-item-type/action-item-type.component.css","./src/app/Admin/action-item/action-item-type/action-item-type.component.ts","./src/app/Admin/action-item/action-item-type/manege-action-type.component.css","./src/app/Admin/action-item/action-item-type/manege-action-type.component.ts","./src/app/Admin/action-item/carrier-category/carrier-category.component.css","./src/app/Admin/action-item/carrier-category/carrier-category.component.ts","./src/app/Admin/action-item/carrier-category/manage-carrier-category.component.css","./src/app/Admin/action-item/carrier-category/manage-carrier-category.component.ts","./src/app/Admin/action-item/general-alerts/general-alerts.component.css","./src/app/Admin/action-item/general-alerts/general-alerts.component.ts","./src/app/Admin/action-item/general-alerts/manage-general-alerts.component.css","./src/app/Admin/action-item/general-alerts/manage-general-alerts.component.ts","./src/app/Admin/action-item/landing-page/landing-page.component.css","./src/app/Admin/action-item/landing-page/landing-page.component.ts","./src/app/Admin/admin-login/admin-login.component.css","./src/app/Admin/admin-login/admin-login.component.ts","./src/app/Admin/dashboard/dashboard.component.css","./src/app/Admin/dashboard/dashboard.component.ts","./src/app/Admin/inteserra-users/inteserra-manage-users.component.css","./src/app/Admin/inteserra-users/inteserra-manage-users.component.ts","./src/app/Admin/inteserra-users/inteserra-users.component.css","./src/app/Admin/inteserra-users/inteserra-users.component.ts","./src/app/Admin/profile/profile.component.css","./src/app/Admin/profile/profile.component.ts","./src/app/Admin/redirect-live/redirect-live.component.css","./src/app/Admin/redirect-live/redirect-live.component.ts","./src/app/Admin/reports/reports.component.css","./src/app/Admin/reports/reports.component.ts","./src/app/Admin/state-fund-preview/state-fund-preview.component.css","./src/app/Admin/state-fund-preview/state-fund-preview.component.ts","./src/app/Admin/state-matrixsetup/state-manangesetup.component.css","./src/app/Admin/state-matrixsetup/state-manangesetup.component.ts","./src/app/Admin/state-matrixsetup/state-matrixsetup.component.css","./src/app/Admin/state-matrixsetup/state-matrixsetup.component.ts","./src/app/Admin/states/states.component.css","./src/app/Admin/states/states.component.ts","./src/app/Admin/updates/manageupdate.component.css","./src/app/Admin/updates/manageupdate.component.ts","./src/app/Admin/updates/updates.component.css","./src/app/Admin/updates/updates.component.ts","./src/app/Admin/users/manageuser.component.css","./src/app/Admin/users/manageuser.component.ts","./src/app/Admin/users/users.component.css","./src/app/Admin/users/users.component.ts","./src/app/Front/ActionItem/action-updates/action-updates.component.css","./src/app/Front/ActionItem/action-updates/action-updates.component.ts","./src/app/Front/ActionItem/aiaction-calendar/aiaction-calendar.component.css","./src/app/Front/ActionItem/aiaction-calendar/aiaction-calendar.component.ts","./src/app/Front/ActionItem/aihome/aihome.component.css","./src/app/Front/ActionItem/aihome/aihome.component.ts","./src/app/Front/ActionItem/dashboard/dashboard.component.css","./src/app/Front/ActionItem/dashboard/dashboard.component.ts","./src/app/Front/ActionItem/my-favorites/my-favorites.component.css","./src/app/Front/ActionItem/my-favorites/my-favorites.component.ts","./src/app/Front/IPCS/fund-details/fund-details.component.css","./src/app/Front/IPCS/fund-details/fund-details.component.ts","./src/app/Front/IPCS/matrix/matrix.component.css","./src/app/Front/IPCS/matrix/matrix.component.ts","./src/app/Front/IPCS/my-favorites/my-favorites.component.css","./src/app/Front/IPCS/my-favorites/my-favorites.component.ts","./src/app/Front/IPCS/update/update.component.css","./src/app/Front/IPCS/update/update.component.ts","./src/app/Front/IPR/carriers/carriers.component.css","./src/app/Front/IPR/carriers/carriers.component.ts","./src/app/Front/IPR/home/home.component.css","./src/app/Front/IPR/home/home.component.ts","./src/app/Front/IPR/my-favorites/my-favorites.component.css","./src/app/Front/IPR/my-favorites/my-favorites.component.ts","./src/app/Front/IPR/updates/updates.component.css","./src/app/Front/IPR/updates/updates.component.ts","./src/app/Front/RMD/carriers/rmdcarriers.component.css","./src/app/Front/RMD/carriers/rmdcarriers.component.ts","./src/app/Front/RMD/my-favorites/rmdmy-favorites.component.css","./src/app/Front/RMD/my-favorites/rmdmy-favorites.component.ts","./src/app/Front/RMD/updates/rmdupdates.component.css","./src/app/Front/RMD/updates/rmdupdates.component.ts","./src/app/Front/access-denied/access-denied.component.css","./src/app/Front/access-denied/access-denied.component.ts","./src/app/Front/admin-by-pass-client-login/admin-by-pass-client-login.component.css","./src/app/Front/admin-by-pass-client-login/admin-by-pass-client-login.component.ts","./src/app/Front/by-pass-login/by-pass-login.component.css","./src/app/Front/by-pass-login/by-pass-login.component.ts","./src/app/Front/client-login/client-login.component.css","./src/app/Front/client-login/client-login.component.ts","./src/app/Front/email-login/email-login.component.css","./src/app/Front/email-login/email-login.component.ts","./src/app/Front/front-landing-page/front-landing-page.component.css","./src/app/Front/front-landing-page/front-landing-page.component.ts","./src/app/Front/home/home.component.css","./src/app/Front/home/home.component.ts","./src/app/Front/matrix/matrix.component.css","./src/app/Front/matrix/matrix.component.ts","./src/app/Front/privacy/privacy.component.css","./src/app/Front/privacy/privacy.component.ts","./src/app/Front/site-state-fund-priview/site-state-fund-priview.component.css","./src/app/Front/site-state-fund-priview/site-state-fund-priview.component.ts","./src/app/Front/update/update.component.css","./src/app/Front/update/update.component.ts","./src/app/Front/wireless-voip-my-favorites/wireless-voip-my-favorites.component.css","./src/app/Front/wireless-voip-my-favorites/wireless-voip-my-favorites.component.ts","./src/app/Layout/admin-layout/admin-layout.component.css","./src/app/Layout/admin-layout/admin-layout.component.ts","./src/app/Layout/site-layout/site-layout.component.css","./src/app/Layout/site-layout/site-layout.component.ts","./src/app/Shared/action-item-details-popup/action-item-details-popup.component.css","./src/app/Shared/action-item-details-popup/action-item-details-popup.component.ts","./src/app/Shared/action-item-details/action-item-details.component.css","./src/app/Shared/action-item-details/action-item-details.component.ts","./src/app/Shared/action-status-popup/action-status-popup.component.css","./src/app/Shared/action-status-popup/action-status-popup.component.ts","./src/app/Shared/add-new-action-popup/add-new-action-popup.component.css","./src/app/Shared/add-new-action-popup/add-new-action-popup.component.ts","./src/app/Shared/edit-action-popup/edit-action-popup.component.css","./src/app/Shared/edit-action-popup/edit-action-popup.component.ts","./src/app/Shared/fund-details/fund-details.component.css","./src/app/Shared/fund-details/fund-details.component.ts","./src/app/Shared/notes-popup/notes-popup.component.css","./src/app/Shared/notes-popup/notes-popup.component.ts","./src/app/Shared/search-panel/search-panel.component.css","./src/app/Shared/search-panel/search-panel.component.ts","./src/app/app.component.css","./src/app/app.component.ts","./src/app/app.module.ts","./src/common/commonFunction.ts","./src/environments/environment.ts","./src/interceptors/cache-interceptor.ts","./src/main.ts"],"names":[],"mappings":"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","file":"main.js","sourcesContent":["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 = \"./$$_lazy_route_resource lazy recursive\";","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

History

\\r\\n
\\r\\n
\\r\\n \\r\\n  Back\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n File Name \\r\\n \\r\\n \\r\\n Upload Date \\r\\n \\r\\n Uploaded By \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
{{history.importFileName}}{{history.createdDate | date: 'MM/dd/yyyy HH:mm'}}{{history.importedBy}}
\\r\\n No records 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\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Import Updates

\\r\\n
\\r\\n
\\r\\n \\r\\n  Back\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n Importing data from selected CSV file is failed due to:

\\r\\n {{ImportError}}

\\r\\n [Note: Please click on help icon to know about CSV file format.]\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n To import Intermediate Provider Registry data, please download CSV file from: \\r\\n https://fccprod.service-now.com/ipr_ext?id=ipr_welcome\\r\\n

\\r\\n

\\r\\n
\\r\\n CSV file must include all columns mentioned below and in same sequence.
\\r\\n Contact administrator/developer, if you have different CSV file structure.\\r\\n


\\r\\n

\\r\\n Business Name
\\r\\n Business Address
\\r\\n Previous Business Names\\t
\\r\\n States Serviced\\t
\\r\\n Regulatory Contact Name
\\r\\n Regulatory Contact Title
\\r\\n Regulatory Contact Address
\\r\\n Regulatory Contact Telephone
\\r\\n Regulatory Contact Email
\\r\\n Rural Call Completion Contact Name
\\r\\n Rural Call Completion Contact Title
\\r\\n Rural Call Completion Contact Address
\\r\\n Rural Call Completion Contact Telephone
\\r\\n Rural Call Completion Contact Email
\\r\\n Rural Call Completion Contact Department\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Manage Provider Detail

\\r\\n
\\r\\n
\\r\\n \\r\\n  Back\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

States Registration Detail

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Registered ({{listOfActiveStatesCount}})\\r\\n
\\r\\n
\\r\\n No Longer Registered ({{listOfDeActiveStatesCount}})\\r\\n
\\r\\n
\\r\\n Not Registered ({{listOfNotRegisteredStatesCount}})\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Loading states...\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Provider Updates

\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n {{lastModifiedDetails}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Provider \\r\\n \\r\\n \\r\\n State \\r\\n \\r\\n Updates \\r\\n Action
\\r\\n Loading...\\r\\n \\r\\n
{{update.businessName}}\\r\\n {{update.activeStates}}\\r\\n {{update.deActiveStates}}\\r\\n \\r\\n \\r\\n
\\r\\n {{update.carrierCount == '0' ? 'No Updates' : update.carrierCount == '1' ? '1 Update' : update.carrierCount + ' Updates'}}\\r\\n\\r\\n
\\r\\n
\\r\\n {{update.carrierCount == '0' ? 'No Updates' : update.carrierCount == '1' ? '1 Update' : update.carrierCount + ' Updates'}}\\r\\n
\\r\\n {{update.carrierLastUpdateDate | date: 'MM/dd/yyyy'}}\\r\\n
\\r\\n \\r\\n  \\r\\n
\\r\\n Active\\r\\n
\\r\\n
\\r\\n Inactive\\r\\n
\\r\\n  \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n No records 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
Updates
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n State \\r\\n \\r\\n Date \\r\\n \\r\\n Description \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
{{update.stateName}}{{update.updateDate | date: 'MM/dd/yyyy HH:mm'}} {{update.status == 1 ? 'Registered' : 'No Longer Registered'}}
\\r\\n No updates available\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Replace Provider 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 Provider Name
{{merge.businessName}}
Previous Name
{{merge.previousName}}
\\r\\n \\r\\n Provider Name
{{merge.businessName1}}
\\r\\n Previous Name
{{merge.previousName1}}

\\r\\n  Discard\\r\\n  Replace\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{selectedMergeCarrierName}}
\\r\\n
\\r\\n
\\r\\n

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

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Replace with:\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n


\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Replace
\\r\\n
\\r\\n

\\r\\n \\r\\n Are you sure you want to replace \\\"{{selectedMergeCarrierName}}\\\" provider with \\\"{{selectedMergeNewCarrierName}}\\\"?\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Replace
\\r\\n
\\r\\n

\\r\\n Are you sure you want to discard selected provider from replace?\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Access Denied

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n You do not have access of {{AccessDeniedTool == 'actionitem' ? 'Trac-It' : AccessDeniedTool}} tool. Please call us at 407-740-8575 for more information.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Trac-It Entries

\\r\\n
\\r\\n
\\r\\n Add\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Deadline Date \\r\\n \\r\\n \\r\\n Subject \\r\\n \\r\\n \\r\\n Category \\r\\n \\r\\n \\r\\n Company Name \\r\\n \\r\\n \\r\\n State(s) \\r\\n \\r\\n \\r\\n Carrier Types \\r\\n \\r\\n \\r\\n Charges \\r\\n \\r\\n \\r\\n Action Required \\r\\n \\r\\n \\r\\n Informative Only \\r\\n \\r\\n Action
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n {{action.deadlineDate | date: 'MM/dd/yyyy'}}\\r\\n \\r\\n {{action.subject}}\\r\\n \\r\\n {{action.typeName}}\\r\\n \\r\\n {{action.companyName}}\\r\\n \\r\\n {{action.stateName}}  1\\\">,{{action.actionStateCount-1}}\\r\\n more..\\r\\n \\r\\n {{action.carrierName}}  1\\\">,{{action.actionCarrierCount-1}}\\r\\n more..\\r\\n \\r\\n ${{action.actionCharges | number : '1.2-2'}}\\r\\n \\r\\n {{action.isAction ? 'Yes' : 'No'}}\\r\\n \\r\\n {{action.isInformationOnly ? 'Yes' : 'No'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n No record 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

State(s)

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  {{state.stateName}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Carrier Types

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{carrier.carrierName}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Delete

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Are you sure you want to delete this record ?\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{ addNewActionModel.actionItemId > 0 ? isClone ? 'Clone' : 'Edit' : 'Add' }}\\r\\n Trac-It Entry\\r\\n

\\r\\n
\\r\\n
\\r\\n Back\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Pricing of JSI services are Confidential: Not for use/disclosure\\r\\n except under written\\r\\n agreement.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n    \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Categories

\\r\\n
\\r\\n
\\r\\n Add\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Category Name \\r\\n \\r\\n \\r\\n Color \\r\\n \\r\\n \\r\\n Created \\r\\n \\r\\n \\r\\n Modified \\r\\n \\r\\n Action
\\r\\n Loading...\\r\\n \\r\\n
{{action.typeName}}\\r\\n
 
\\r\\n   \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{action.createdDate | date:'MM/dd/yyyy HH:mm'}}\\r\\n \\r\\n By {{action.createdUser}}\\r\\n \\r\\n \\r\\n {{action.modifiedDate | date:'MM/dd/yyyy HH:mm'}}\\r\\n \\r\\n By {{action.modifiedUser}}\\r\\n \\r\\n \\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 record 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

Delete

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Are you sure you want to delete this record ?\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Reference Error

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n You can not delete category, It is being used by other module.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Manage Category

\\r\\n
\\r\\n
\\r\\n \\r\\n  Back\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n   \\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 ? 'Update' : 'Save'}}\\\" /> \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Carrier Types

\\r\\n
\\r\\n
\\r\\n Add\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Carrier Type \\r\\n \\r\\n \\r\\n Created \\r\\n \\r\\n \\r\\n Modified \\r\\n \\r\\n \\r\\n Active \\r\\n \\r\\n Action
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n {{carrierCategory.carrierCatName}}\\r\\n \\r\\n {{carrierCategory.createdDate | date : 'MM/dd/yyyy'}}\\r\\n \\r\\n By {{carrierCategory.createdUser}}\\r\\n \\r\\n \\r\\n {{carrierCategory.modifiedDate | date : 'MM/dd/yyyy'}}\\r\\n \\r\\n By {{carrierCategory.modifiedUser}}\\r\\n \\r\\n \\r\\n {{carrierCategory.isActive ? 'Yes' : 'No'}} \\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 record 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

Delete

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Are you sure you want to delete this record ?\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Reference Error

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n You can not delete carrier type, It is being used by other module.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{ CarrierCatId > 0 ? 'Edit' : 'Add' }} Carrier Type\\r\\n

\\r\\n
\\r\\n
\\r\\n Back\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n   \\r\\n Cancel\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

i360 Alerts

\\r\\n
\\r\\n
\\r\\n Add\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Alert Date \\r\\n \\r\\n \\r\\n Subject \\r\\n \\r\\n \\r\\n Product(s) \\r\\n \\r\\n \\r\\n Status \\r\\n \\r\\n \\r\\n Created \\r\\n \\r\\n \\r\\n Modified \\r\\n \\r\\n Action
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n {{general.alertDate | date: 'MM/dd/yyyy'}}\\r\\n \\r\\n {{general.subject}}\\r\\n \\r\\n \\r\\n {{product.displayName}}
\\r\\n
\\r\\n
\\r\\n {{general.emailStatus}}\\r\\n {{general.emailStatus}}\\r\\n \\r\\n {{general.createdDate | date: 'MM/dd/yyyy'}}\\r\\n By {{general.createdUser}}\\r\\n \\r\\n {{general.modifiedDate | date: 'MM/dd/yyyy'}} By {{general.modifiedUser}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n No record 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
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{ generalAlertsModel.generalAlertsId > 0 ? isViewMode ? 'View' : 'Edit' : 'Add' }}\\r\\n i360 Alert\\r\\n

\\r\\n
\\r\\n
\\r\\n Back\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n       \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n    \\r\\n Cancel\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

IRIS Home

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"Inteserra\\\"\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

 

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\\"
\\r\\n \\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Manage Admin

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n  Back\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Admins

\\r\\n
\\r\\n
\\r\\n \\r\\n  Add\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Username \\r\\n \\r\\n \\r\\n Name \\r\\n \\r\\n \\r\\n Email \\r\\n \\r\\n \\r\\n Phone \\r\\n \\r\\n \\r\\n Active \\r\\n \\r\\n Products\\r\\n User Type \\r\\n \\r\\n \\r\\n Created \\r\\n \\r\\n \\r\\n Modified \\r\\n \\r\\n Action
\\r\\n Loading...\\r\\n \\r\\n
{{user.userName}}{{user.firstName + ' ' + user.lastName}}{{user.email}}{{user.phone}}{{user.isActive ? 'Yes' : 'No'}}\\r\\n \\r\\n {{product.displayName}}
\\r\\n
\\r\\n
\\r\\n {{user.adminUserName}}\\r\\n {{user.createdDate | date: 'MM/dd/yyyy'}}{{user.modifiedDate | date: 'MM/dd/yyyy'}}\\r\\n \\r\\n
\\r\\n No record 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

Subscription

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n   {{state.name}}\\r\\n
\\r\\n
\\r\\n No subscription found\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

User Details

\\r\\n
\\r\\n
\\r\\n \\r\\n  Back\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n {{userModel.userName}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n {{userModel.firstName}}\\r\\n
\\r\\n
\\r\\n \\r\\n {{userModel.lastName}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n {{userModel.email}}\\r\\n
\\r\\n
\\r\\n \\r\\n {{userModel.phone}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Change Password

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Updates

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Coming soon!\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Preview

\\r\\n
\\r\\n
\\r\\n \\r\\n  Back\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{statename}}

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Title \\r\\n \\r\\n \\r\\n Assessment \\r\\n \\r\\n \\r\\n Created \\r\\n \\r\\n \\r\\n Modified \\r\\n \\r\\n Action
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n {{fund.title}}{{fund.assementCatName}}{{fund.createdDate | date:'MM/dd/yyyy'}} By {{fund.createdByName}}\\r\\n {{fund.modifiedDate | date:'MM/dd/yyyy'}} By {{fund.modifiedByName}}\\r\\n N/A\\r\\n \\r\\n  \\r\\n
\\r\\n \\r\\n
\\r\\n  \\r\\n
\\r\\n Active\\r\\n
\\r\\n
\\r\\n Inactive\\r\\n
\\r\\n
\\r\\n No records 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
Delete
\\r\\n
\\r\\n

\\r\\n Are you sure you want to delete?\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{statename}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n  Back\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n  Add\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Delete
\\r\\n
\\r\\n

\\r\\n Are you sure you want to delete?\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Add - Other Requirement
\\r\\n
0\\\">Update - Other Requirement
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

States

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Name \\r\\n \\r\\n \\r\\n Short Name \\r\\n \\r\\n Action
\\r\\n Loading...\\r\\n \\r\\n
{{item.name}}{{item.shortName}}\\r\\n \\r\\n  \\r\\n \\r\\n
\\r\\n No record found.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Manage Updates

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n  Back\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n Pricing of JSI services are Confidential: Not for use/disclosure except under\\r\\n written\\r\\n agreement.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{updateid > 0 ? 'Update' : 'Save'}}  \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Updates

\\r\\n
\\r\\n
\\r\\n \\r\\n  Add\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Update Category \\r\\n \\r\\n \\r\\n Company Name \\r\\n \\r\\n \\r\\n State \\r\\n \\r\\n \\r\\n Update Type \\r\\n \\r\\n \\r\\n Created \\r\\n \\r\\n \\r\\n Modified \\r\\n \\r\\n \\r\\n Charges \\r\\n \\r\\n \\r\\n Action Require \\r\\n \\r\\n Action
\\r\\n Loading...\\r\\n \\r\\n
{{update.updateCategoryName}}{{update.companyName}}\\r\\n \\r\\n {{update.stateName}}({{update.stateShortName}}){{update.updateType}}\\r\\n {{update.createdDate | date:'MM/dd/yyyy'}} By {{update.createdByName}}\\r\\n \\r\\n {{update.modifiedDate | date:'MM/dd/yyyy' }} By {{update.modifiedByName}}\\r\\n N/A\\r\\n ${{update.actionCharges | number : '1.2-2' }}\\r\\n \\r\\n {{update.isAction ? 'Yes' : 'No' }}\\r\\n \\r\\n \\r\\n  \\r\\n
\\r\\n \\r\\n
\\r\\n  \\r\\n
\\r\\n Active\\r\\n
\\r\\n
\\r\\n Inactive\\r\\n
\\r\\n
\\r\\n No records 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
Delete
\\r\\n
\\r\\n

\\r\\n Are you sure you want to delete?\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Manage Client

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n  Back\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Loading states...\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n -1\\\">\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n -1\\\">\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n -1\\\">\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n -1\\\">\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Clients

\\r\\n
\\r\\n
\\r\\n \\r\\n  Add\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Username \\r\\n \\r\\n \\r\\n Name \\r\\n \\r\\n \\r\\n Company Name \\r\\n \\r\\n \\r\\n Email \\r\\n \\r\\n \\r\\n Subscription \\r\\n \\r\\n \\r\\n Products\\r\\n \\r\\n Active \\r\\n \\r\\n \\r\\n Created \\r\\n \\r\\n \\r\\n Modified \\r\\n \\r\\n Action
\\r\\n Loading...\\r\\n \\r\\n
{{user.userName}}{{user.firstName + ' ' + user.lastName}}{{user.companyName}}{{user.email}}\\r\\n \\r\\n \\r\\n Subscription\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{product.displayName}}
\\r\\n
\\r\\n
{{user.isActive ? 'Yes' : 'No'}}{{user.createdDate | date: 'MM/dd/yyyy'}}{{user.modifiedDate | date: 'MM/dd/yyyy'}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n No record 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 Subscription

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n {{sub.displayName}},  \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n State subscriptions not found.\\r\\n \\r\\n 0\\\">\\r\\n
\\r\\n   {{state.name}}\\r\\n
\\r\\n
\\r\\n 0\\\">\\r\\n
\\r\\n   {{state.name}}\\r\\n
\\r\\n
\\r\\n 0\\\">\\r\\n
\\r\\n   {{state.name}}\\r\\n
\\r\\n
\\r\\n 0\\\">\\r\\n
\\r\\n   {{state.name}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n   {{state.name}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
 Jurisdiction\\r\\n Target Date\\r\\n Description\\r\\n Update Date\\r\\n
 \\r\\n {{update.state}}\\r\\n ALL\\r\\n \\r\\n {{update.deadlineDate | date:'MM/dd/yyyy'}}\\r\\n \\r\\n
\\r\\n
\\r\\n {{update.modifiedDate | date:'MM/dd/yyyy'}}\\r\\n \\r\\n -\\r\\n
\\r\\n Loading...\\r\\n \\r\\n \\r\\n
\\r\\n No records found\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\" class=\\\"box-footer text-center\\\">\\r\\n View All Updates\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Add New Trac-It\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\\"\\\"\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{headerString\\r\\n == null ? '' : headerString }}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
 \\r\\n Deadline Date\\r\\n StateCategory Carrier TypeStatusNotes
 \\r\\n {{update.deadlineDate | date:'MM/dd/yyyy'}}\\r\\n \\r\\n {{update.state}}\\r\\n ALL\\r\\n \\r\\n {{update.type}}\\r\\n {{update.category}}\\r\\n ALL\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{update.title}}\\r\\n \\r\\n   \\r\\n   \\r\\n \\r\\n \\r\\n \\r\\n {{update.title}}\\r\\n \\r\\n   \\r\\n   \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n      Handled by CRS\\r\\n
\\r\\n
\\r\\n\\r\\n {{update.title}}\\r\\n \\r\\n   \\r\\n   \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n {{update.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 Loading...\\r\\n \\r\\n
\\r\\n No records 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

Delete

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n 0\\\">\\r\\n Are you sure you want to delete this record and recurrence record ?\\r\\n \\r\\n \\r\\n Are you sure you want to delete this record?\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n 0\\\">\\r\\n \\r\\n  \\r\\n \\r\\n \\r\\n  \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n

Welcome to IRIS for Action Item!

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

\\r\\n COMING SOON…Citations and source links!\\r\\n

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

\\r\\n
\\r\\n Your last login information:
\\r\\n {{lastLogin | date:'EEEE, MMMM d, y, HH:MM'}}\\r\\n\\r\\n

\\r\\n
\\r\\n
\\r\\n COMING SOON\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n Add New Trac-It\\r\\n
\\r\\n
\\r\\n
\\r\\n My\\r\\n Favorites\\r\\n
\\r\\n
\\r\\n My\\r\\n Trac-Its\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Trac-Its Requiring Attention

\\r\\n
\\r\\n
\\r\\n
\\r\\n 0\\\" id=\\\"mytable\\\"\\r\\n width=\\\"100%\\\" border=\\\"0\\\" align=\\\"center\\\" cellpadding=\\\"5\\\" cellspacing=\\\"0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
 \\r\\n Deadline Date\\r\\n Jurisdiction Carrier\\r\\n TypeStatusNotes
 \\r\\n {{update.deadlineDate | date:'MM/dd/yyyy'}}\\r\\n \\r\\n {{update.state}}\\r\\n ALL\\r\\n \\r\\n {{update.category}}\\r\\n ALL\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{update.title}}\\r\\n
\\r\\n
\\r\\n      Handled by CRS\\r\\n
\\r\\n
\\r\\n {{update.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 Loading...\\r\\n \\r\\n \\r\\n
\\r\\n No records found\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Upcoming Reminders

\\r\\n
\\r\\n
\\r\\n 0\\\" id=\\\"mytable\\\" width=\\\"100%\\\" border=\\\"0\\\" align=\\\"center\\\"\\r\\n cellpadding=\\\"5\\\" cellspacing=\\\"0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Deadline Date\\r\\n State\\r\\n Category\\r\\n \\r\\n Status\\r\\n
\\r\\n {{update.deadlineDate | date:'MM/dd/yyyy'}}\\r\\n \\r\\n {{update.state}}\\r\\n ALL\\r\\n \\r\\n {{update.category}}\\r\\n \\r\\n
\\r\\n
\\r\\n {{update.title}}\\r\\n
\\r\\n
\\r\\n {{update.reminder}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Loading...\\r\\n \\r\\n \\r\\n
\\r\\n No records found\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\"","export default \"
\\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 Favorite Jurisdictions for Trac-It update alerts. Click on to remove it from your\\r\\n favorites list.\\r\\n
No Jurisdiction available in your\\r\\n favorites\\r\\n list.
\\r\\n
\\r\\n
\\r\\n {{state.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 Your Favorite Category for Trac-It update alerts. Click on to remove it from your\\r\\n favorites list.\\r\\n
No Category available\\r\\n in\\r\\n your favorites list.
\\r\\n
\\r\\n
\\r\\n {{actionItem.itemName}} \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Your Favorite Carrier Type for Trac-It update alerts. Click on to remove it from your\\r\\n favorites list.\\r\\n
No Carrier Type available\\r\\n in\\r\\n your favorites list.
\\r\\n
\\r\\n
\\r\\n {{carrier.carrierCatName}} \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Favorite
\\r\\n
\\r\\n {{ValidationMessage}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
0\\\">\\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
\\r\\n
\\r\\n

{{fund.stateName}}\\r\\n
0 && adminUserType\\\" style=\\\"cursor: pointer;display: inline;\\\"\\r\\n data-toggle=\\\"modal\\\" data-target=\\\"#showUnreadupdates\\\" (click)=\\\"openpopup(fund.stateId,fund.stateName)\\\">\\r\\n \\\"\\\"\\r\\n
\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n 0 && fund.regTitle + ' - Registration' == fundReference ? 'bgApply' : ''\\\"\\r\\n id=\\\"{{fund.regTitle}} - Registration\\\" *ngIf=\\\"fund.registration != ''\\\" class=\\\"border-box\\\">\\r\\n
\\r\\n
\\r\\n

{{fund.regTitle}}

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

58 ? 'nopad' : ''\\\">\\r\\n {{details.title}}\\r\\n

\\r\\n
\\r\\n
Applicable:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Current Amount:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Administrative Recovery:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Remit:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Bill To Customer:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Separate Line Item:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Additional Info:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Registration :
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
Rule Text:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
Handled by :
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\"\\r\\n class=\\\"col-md-6 box_blue_bg\\\">\\r\\n

58 ? 'nopad' : ''\\\">\\r\\n {{details.title}}\\r\\n

\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n 0\\\" class=\\\"border-box\\\">\\r\\n
\\r\\n
\\r\\n

Other Requirements\\r\\n

\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\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 records found.\\r\\n

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

\\r\\n No records found.\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n No records 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
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
 
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

{{statenamepopup}} - Updates

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
 TypeDateDescription
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{update.updateType}}{{update.updateDate | date:'MM/dd/yyyy'}}\\r\\n
\\r\\n
\\r\\n No records 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
PDF Download Alert
\\r\\n
\\r\\n

\\r\\n The PDF will include only 1st state. If you want to download for\\r\\n any other state, please select that state only from the Select States Option.\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Commission\\r\\n Registration or Certification\\r\\n Registration\\r\\n or Certification
Required
\\r\\n
\\r\\n \\r\\n Agency Assessments\\r\\n \\r\\n \\r\\n \\r\\n 911\\r\\n \\r\\n \\r\\n \\r\\n 988\\r\\n \\r\\n \\r\\n \\r\\n USF\\r\\n \\r\\n \\r\\n \\r\\n TRS\\r\\n \\r\\n \\r\\n \\r\\n Agency Assessments\\r\\n \\r\\n \\r\\n \\r\\n Other Fees\\r\\n \\r\\n \\r\\n \\r\\n Other Requirement\\r\\n \\r\\n \\r\\n Customer Complaints Handled By\\r\\n \\r\\n \\r\\n Agency Regulation Restricted\\r\\n \\r\\n \\r\\n \\r\\n Registration Required\\r\\n \\r\\n \\r\\n \\r\\n IPCS Rules\\r\\n \\r\\n \\r\\n \\r\\n Tariff\\r\\n \\r\\n \\r\\n \\r\\n Audio rate cap\\r\\n \\r\\n \\r\\n \\r\\n Video rate cap\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n {{mData.name}}\\r\\n \\r\\n 0\\\"\\r\\n src=\\\"assets/images/lamp-icon.png\\\" width=\\\"17\\\" alt=\\\"\\\">\\r\\n \\r\\n \\r\\n {{mData.commissionRegistrationorCertification}}\\r\\n No\\r\\n \\r\\n {{mData.agencyAssessments}}\\r\\n No\\r\\n \\r\\n {{mData.nineOneOne}}\\r\\n No\\r\\n \\r\\n {{mData.nineEightEight}}\\r\\n No\\r\\n \\r\\n {{mData.usf}}\\r\\n No\\r\\n \\r\\n {{mData.trs}}\\r\\n No\\r\\n \\r\\n {{mData.agencyAssessments}}\\r\\n No\\r\\n \\r\\n {{mData.otherFees}}\\r\\n No\\r\\n \\r\\n {{mData.otherRequirement}}\\r\\n No\\r\\n \\r\\n {{mData.customerComplaintsHandledBy}}\\r\\n -\\r\\n \\r\\n {{mData.agencyRegulationRestricted}}\\r\\n No\\r\\n \\r\\n {{mData.registrationRequired}}\\r\\n No\\r\\n \\r\\n {{mData.ipcsRules}}\\r\\n \\r\\n \\r\\n {{mData.tariff}}\\r\\n No\\r\\n \\r\\n {{mData.audioratecap}}\\r\\n No\\r\\n \\r\\n {{mData.videoratecap}}\\r\\n No\\r\\n
\\r\\n No record 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
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
 
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

{{statenamepopup}} - Updates

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
 TypeDateDescription
\\r\\n Loading...\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{update.updateType}}\\r\\n {{update.updateDate | date:'MM/dd/yyyy'}}\\r\\n
\\r\\n
\\r\\n No records 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
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Your Favorite states for update alerts. Click on to remove it\\r\\n from your\\r\\n favorites list.\\r\\n
No state available in\\r\\n your\\r\\n favorites list.
\\r\\n
\\r\\n \\r\\n {{state.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
Favorite
\\r\\n
\\r\\n {{ValidationMessage}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n |\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n |\\r\\n
\\r\\n
\\r\\n \\r\\n \\\"\\\"\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
  StateTypeDateDescription
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{update.stateName}}\\r\\n \\r\\n {{update.updateType}}{{update.updateDate | date:'MM/dd/yyyy'}}\\r\\n
\\r\\n
\\r\\n No records 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 Trac It\\r\\n
x
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Oops! You do not have Trac It subscription yet\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Please contact client Services by phone at 407-740-8575 to know more\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n |\\r\\n My\\r\\n Favorites\\r\\n \\r\\n \\\"\\\"\\r\\n \\r\\n
\\r\\n \\r\\n \\\"\\\"\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n State Registration 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
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{lastModifiedDetails}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
ProviderPrevious Name\\r\\n Update DateStates
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n {{update.businessName}}\\r\\n \\r\\n {{update.previousName}}{{update.carrierLastUpdateDate | date:'MM/dd/yyyy'}}\\r\\n {{update.activeStates}}\\r\\n {{update.deActiveStates}}\\r\\n \\r\\n
\\r\\n No records 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
{{CarrierName}}
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n Provider Name: {{carrier.businessName}}\\r\\n \\r\\n Business Address: {{carrier.businessAddress}}\\r\\n
\\r\\n Previous Business Names: {{carrier.previousName}}\\r\\n \\r\\n Regulatory Contact Name: {{carrier.regContactName}}\\r\\n
\\r\\n Regulatory Contact Title: {{carrier.regContactTitle}}\\r\\n \\r\\n Regulatory Contact Address: {{carrier.regContantAddress}}\\r\\n
\\r\\n Regulatory Contact Telephone: {{carrier.regContactTelephone}}\\r\\n \\r\\n Regulatory Contact Email: {{carrier.regContactEmailId}}\\r\\n
\\r\\n Rural Call Completion Contact Name: {{carrier.rccContactName}}\\r\\n \\r\\n Rural Call Completion Contact Title: {{carrier.rccContactTitle}}\\r\\n
\\r\\n Rural Call Completion Contact Address: {{carrier.rccContactAddress}}\\r\\n \\r\\n Rural Call Completion Contact Telephone: {{carrier.rccContactTelephone}}\\r\\n
\\r\\n Rural Call Completion Contact Email: {{carrier.rccContactEmail}}\\r\\n \\r\\n Rural Call Completion Contact Department: {{carrier.rccContactDepartment}}\\r\\n
\\r\\n States Registration Detail: \\r\\n \\r\\n {{ActiveStates}}\\r\\n \\r\\n \\r\\n {{DeActiveStates}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Favorite
\\r\\n
\\r\\n Are you sure you want to remove selected provider from favorite list?\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n

Welcome to IRIS for the Intermediate Provider Registry

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

\\r\\n
\\r\\n Your last login information:
\\r\\n {{lastLogin | date:'EEEE, MMMM d, y, HH:MM'}}\\r\\n\\r\\n

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

\\r\\n The Intermediate Provider (IP) Registry contains a summary of Intermediate Providers and their state registration status as posted in the FCC’s IP Registry.\\r\\n

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

The “Providers” page allows the user to quickly sort and identify provider specific information including:

\\r\\n
    \\r\\n
  • Business name, address and contacts
  • \\r\\n
  • Registered States
  • \\r\\n
  • No Longer Registered States
  • \\r\\n
\\r\\n

\\r\\n

\\r\\n Users can add particular providers and/or states to their “favorites” list and receive email notification when changes affect the favorites list.\\r\\n

\\r\\n

\\r\\n Track changes to the Registry under \\\"Updates\\\". Updates may be sorted by state, provider, date or status description.
Provider information can be downloaded as a pdf file.\\r\\n

\\r\\n

For more information on IP requirements, please watch our webinar.

\\r\\n

Click here to watch a short video demonstration of the IP Registry alert service.

\\r\\n

Questions regarding the Registry may be directed to Inteserra using the Support link below.

\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\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 Favorite states for update alerts. Click on to remove it from your\\r\\n favorites list.\\r\\n
No state available in your\\r\\n favorites list.
\\r\\n
\\r\\n
\\r\\n {{state.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 Your Favorite providers for update alerts. Click on to remove it from your\\r\\n favorites list.\\r\\n
No provider available in your\\r\\n favorites list.
\\r\\n
\\r\\n
\\r\\n {{carrier.businessName}} \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Favorite
\\r\\n
\\r\\n {{ValidationMessage}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n |\\r\\n My Favorites\\r\\n
\\r\\n \\r\\n \\\"\\\"\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n State Registration 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

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
StateProviderDateDescription
StateProviderDateDescription
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
{{update.stateName}}\\r\\n {{update.businessName}}\\r\\n {{update.modifiedDate | date:'MM/dd/yyyy'}}\\r\\n

No Longer Registered

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

Registered

\\r\\n
\\r\\n No records 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
{{CarrierName}}
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n Provider Name: {{carrier.businessName}}\\r\\n \\r\\n Business Address: {{carrier.businessAddress}}\\r\\n
\\r\\n Previous Business Names: {{carrier.previousName}}\\r\\n \\r\\n Regulatory Contact Name: {{carrier.regContactName}}\\r\\n
\\r\\n Regulatory Contact Title: {{carrier.regContactTitle}}\\r\\n \\r\\n Regulatory Contact Address: {{carrier.regContantAddress}}\\r\\n
\\r\\n Regulatory Contact Telephone: {{carrier.regContactTelephone}}\\r\\n \\r\\n Regulatory Contact Email: {{carrier.regContactEmailId}}\\r\\n
\\r\\n Rural Call Completion Contact Name: {{carrier.rccContactName}}\\r\\n \\r\\n Rural Call Completion Contact Title: {{carrier.rccContactTitle}}\\r\\n
\\r\\n Rural Call Completion Contact Address: {{carrier.rccContactAddress}}\\r\\n \\r\\n Rural Call Completion Contact Telephone: {{carrier.rccContactTelephone}}\\r\\n
\\r\\n Rural Call Completion Contact Email: {{carrier.rccContactEmail}}\\r\\n \\r\\n Rural Call Completion Contact Department: {{carrier.rccContactDepartment}}\\r\\n
\\r\\n States Registration Detail: \\r\\n \\r\\n {{ActiveStates}}\\r\\n \\r\\n \\r\\n {{DeActiveStates}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Favorite
\\r\\n
\\r\\n Are you sure you want to remove selected state from favorite list?\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Manage Favorites
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{state.name}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n |\\r\\n \\r\\n My\\r\\n Favorites\\r\\n \\r\\n \\\"\\\"\\r\\n \\r\\n
\\r\\n \\r\\n \\\"\\\"\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Implementation Status:\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Complete STIR/SHAKEN

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

Partial STIR/SHAKEN

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

No STIR/SHAKEN

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

{{lastModifiedDetails}}

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Provider\\r\\n \\r\\n Frn\\r\\n \\r\\n Previous Name\\r\\n \\r\\n Other DBA Name(s)\\r\\n \\r\\n Foreign Voice Service Provider?\\r\\n \\r\\n Implementation\\r\\n \\r\\n Gateway Provider\\r\\n \\r\\n Intermediate Provider\\r\\n\\r\\n \\r\\n Imported\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n {{update.business_name}}\\r\\n \\r\\n {{update.frn}}{{update.previous_dba_names}}{{update.other_dba_names}}{{update.foreign_voice_provider}}{{update.implementation}}\\r\\n {{update.gateway_provider=='true'?'Yes':update.gateway_provider=='false'?'No':''}}{{update.intermediate_provider == 'true' ?\\r\\n 'Yes' : 'No'}}{{update.ipr_imported == 'true' ?\\r\\n 'Yes' : 'No'}}\\r\\n \\r\\n
\\r\\n No records 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
{{carrier.business_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 \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n Provider Name: {{carrier.business_name}}\\r\\n \\r\\n Business Address: {{carrier.business_address}}\\r\\n
\\r\\n Other DBA Name(s): {{carrier.other_dba_names}}\\r\\n \\r\\n Previous Business Names: {{carrier.previous_dba_names}}\\r\\n
\\r\\n Number: {{carrier.number}}\\r\\n \\r\\n Country: {{carrier.country}}\\r\\n
\\r\\n Implementation: {{carrier.implementation}}\\r\\n \\r\\n Foreign Voice Service Provider?: {{carrier.foreign_voice_provider}}\\r\\n
\\r\\n Contact Title: {{carrier.contact_title}}\\r\\n \\r\\n Contact International Additional: {{carrier.contact_international_additional}}\\r\\n
\\r\\n Contact Business Address: {{carrier.contact_business_address}}
\\r\\n Contact Street: {{carrier.contact_street}}\\r\\n
\\r\\n Contact Department: {{carrier.contact_department}}\\r\\n
\\r\\n Contact Telephone: {{carrier.contact_telephone_number}}\\r\\n \\r\\n Contact Email: {{carrier.contact_email}}\\r\\n
\\r\\n Contact Country: {{carrier.contact_country}}\\r\\n \\r\\n Contact State: {{carrier.contact_state}}\\r\\n
\\r\\n Contact City: {{carrier.contact_city}}\\r\\n \\r\\n Contact Zipcode: {{carrier.contact_zip_code}}\\r\\n
\\r\\n Declaration Date: {{carrier.declaration_date}}\\r\\n \\r\\n Declaration: {{carrier.declaration == 'true' ? 'Yes' : 'No'}}\\r\\n
\\r\\n Created By: {{carrier.sys_created_by}}\\r\\n \\r\\n Created on: {{carrier.sys_created_on | date: 'MM/dd/yyyy' }}\\r\\n
\\r\\n Updated By: {{carrier.sys_updated_by}}\\r\\n \\r\\n Updated on: {{carrier.sys_updated_on | date: 'MM/dd/yyyy'}}\\r\\n
\\r\\n Partial Stir Shaken: {{carrier.partial_stir_shaken == 'true' ? 'Yes' : 'No'}}\\r\\n \\r\\n No Stir Shaken: {{carrier.no_stir_shaken == 'true' ? 'Yes' : 'No'}}\\r\\n
\\r\\n Intermediate Provider: {{carrier.intermediate_provider == 'true' ? 'Yes' : 'No'}}\\r\\n \\r\\n Robocall Mitigation Contact Name: {{carrier.robocall_mitigation_contact_name}}\\r\\n
\\r\\n Frn: {{carrier.frn}}\\r\\n \\r\\n E_signature: {{carrier.e_signature}}\\r\\n
\\r\\n Complete Stir Shaken: {{carrier.complete_stir_shaken == 'true' ? 'Yes' : 'No'}}\\r\\n \\r\\n Gateway Provider: {{carrier.gateway_provider== 'true' ?'Yes':carrier.gateway_provider==\\r\\n 'false'? 'No' : ''}}\\r\\n
\\r\\n Gateway Provider Choice: {{carrier.gateway_provider_choice}}\\r\\n \\r\\n Last Updated: {{carrier.last_updated}}\\r\\n
\\r\\n Filing Url: {{carrier.filing_url}}\\r\\n
\\r\\n Gateway Complete Stir Shaken: {{carrier.gateway_complete_stir_shaken== 'true'\\r\\n ?'Yes':carrier.gateway_complete_stir_shaken== 'false'? 'No' : ''}}\\r\\n \\r\\n Gateway Partial Stir Shaken: {{carrier.gateway_partial_stir_shaken== 'true'\\r\\n ?'Yes':carrier.gateway_partial_stir_shaken== 'false'? 'No' : ''}}\\r\\n
\\r\\n Gateway no Stir Shaken: {{carrier.gateway_no_stir_shaken== 'true'\\r\\n ?'Yes':carrier.gateway_no_stir_shaken== 'false'? 'No' : ''}}\\r\\n \\r\\n Combined Gateway: {{carrier.combined_gateway== 'true' ?'Yes':carrier.combined_gateway==\\r\\n 'false'? 'No' : ''}}\\r\\n
\\r\\n Ipr Imported: {{carrier.ipr_imported== 'true' ?'Yes':carrier.ipr_imported== 'false'? 'No' :\\r\\n ''}}\\r\\n \\r\\n Contact Street 2: {{carrier.contact_street_2}}\\r\\n
\\r\\n Number of Other Frns: {{carrier.number_of_other_frns== 'true'\\r\\n ?'Yes':carrier.number_of_other_frns== 'false'? 'No' : ''}}\\r\\n \\r\\n Contact Address Same as Business Address: \\r\\n {{carrier.contact_address_same_as_business_address== 'true'\\r\\n ?'Yes':carrier.contact_address_same_as_business_address== 'false'? 'No' : ''}}\\r\\n
\\r\\n Other Frns: {{carrier.other_frns}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Favorite
\\r\\n
\\r\\n Are you sure you want to remove selected provider from favorite list?\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Provider\\r\\n \\r\\n Previous Name\\r\\n \\r\\n Other DBA Name(s)\\r\\n \\r\\n Foreign Voice Service Provider?\\r\\n \\r\\n Implementation\\r\\n \\r\\n Update Date\\r\\n
\\r\\n {{update.business_name}}\\r\\n \\r\\n {{update.previous_dba_names}}{{update.other_dba_names}}{{update.foreign_voice_provider}}{{update.implementation}}{{update.sys_updated_on | date: 'MM/dd/yyyy'}}
\\r\\n No records found\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{stirShakenType}} STIR/SHAKEN
\\r\\n
\\r\\n {{stirShakenText}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\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\\\">Your Favorite providers\\r\\n for update alerts. Click on to remove it from your\\r\\n favorites list.\\r\\n
No\\r\\n provider available in\\r\\n your\\r\\n favorites list.
\\r\\n
\\r\\n
\\r\\n {{carrier.business_name}} \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Favorite
\\r\\n
\\r\\n Are you sure you want to remove selected provider from favorite list?\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n |\\r\\n \\r\\n My\\r\\n Favorites\\r\\n \\r\\n \\\"\\\"\\r\\n \\r\\n
\\r\\n \\r\\n \\\"\\\"\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

{{lastModifiedDetails}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Provider\\r\\n \\r\\n Update Date\\r\\n \\r\\n Implementation\\r\\n \\r\\n Description\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n {{update.business_name}}\\r\\n \\r\\n {{update.sys_updated_on | date: 'MM/dd/yyyy'}}{{update.implementation}}{{update.description}}
\\r\\n No records 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
{{carrier.business_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 \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n Provider Name: {{carrier.business_name}}\\r\\n \\r\\n Business Address: {{carrier.business_address}}\\r\\n
\\r\\n Other DBA Name(s): {{carrier.other_dba_names}}\\r\\n \\r\\n Previous Business Names: {{carrier.previous_dba_names}}\\r\\n
\\r\\n Number: {{carrier.number}}\\r\\n \\r\\n Country: {{carrier.country}}\\r\\n
\\r\\n Implementation: {{carrier.implementation}}\\r\\n \\r\\n Foreign Voice Service Provider?: {{carrier.foreign_voice_provider}}\\r\\n
\\r\\n Contact Title: {{carrier.contact_title}}\\r\\n \\r\\n Contact International Additional: {{carrier.contact_international_additional}}\\r\\n
\\r\\n Contact Business Address: {{carrier.contact_business_address}}
\\r\\n Contact Street: {{carrier.contact_street}}\\r\\n
\\r\\n Contact Department: {{carrier.contact_department}}\\r\\n
\\r\\n Contact Telephone: {{carrier.contact_telephone_number}}\\r\\n \\r\\n Contact Email: {{carrier.contact_email}}\\r\\n
\\r\\n Contact Country: {{carrier.contact_country}}\\r\\n \\r\\n Contact State: {{carrier.contact_state}}\\r\\n
\\r\\n Contact City: {{carrier.contact_city}}\\r\\n \\r\\n Contact Zipcode: {{carrier.contact_zip_code}}\\r\\n
\\r\\n Declaration Date: {{carrier.declaration_date}}\\r\\n \\r\\n Declaration: {{carrier.declaration}}\\r\\n
\\r\\n Created By: {{carrier.sys_created_by}}\\r\\n \\r\\n Created on: {{carrier.sys_created_on | date: 'MM/dd/yyyy' }}\\r\\n
\\r\\n Updated By: {{carrier.sys_updated_by}}\\r\\n \\r\\n Updated on: {{carrier.sys_updated_on | date: 'MM/dd/yyyy'}}\\r\\n
\\r\\n Partial Stir Shaken: {{carrier.partial_stir_shaken}}\\r\\n \\r\\n No Stir Shaken: {{carrier.no_stir_shaken}}\\r\\n
\\r\\n intermediate_provider: {{carrier.intermediate_provider}}\\r\\n \\r\\n Robocall Mitigation Contact Name: {{carrier.robocall_mitigation_contact_name}}\\r\\n
\\r\\n Frn: {{carrier.frn}}\\r\\n \\r\\n E_signature: {{carrier.e_signature}}\\r\\n
\\r\\n Complete Stir Shaken: {{carrier.complete_stir_shaken}}\\r\\n \\r\\n Gateway Provider: {{carrier.gateway_provider== 'true' ?'Yes':carrier.gateway_provider==\\r\\n 'false' ? 'No' : ''}}\\r\\n
\\r\\n Gateway Provider Choice: {{carrier.gateway_provider_choice}}\\r\\n \\r\\n Last Updated: {{carrier.last_updated}}\\r\\n
\\r\\n Filing Url: {{carrier.filing_url}}\\r\\n
\\r\\n Gateway Complete Stir Shaken: {{carrier.gateway_complete_stir_shaken== 'true'\\r\\n ?'Yes':carrier.gateway_complete_stir_shaken== 'false'? 'No' : ''}}\\r\\n \\r\\n Gateway Partial Stir Shaken: {{carrier.gateway_partial_stir_shaken== 'true'\\r\\n ?'Yes':carrier.gateway_partial_stir_shaken== 'false'? 'No' : ''}}\\r\\n
\\r\\n Gateway no Stir Shaken: {{carrier.gateway_no_stir_shaken== 'true'\\r\\n ?'Yes':carrier.gateway_no_stir_shaken== 'false'? 'No' : ''}}\\r\\n \\r\\n Combined Gateway: {{carrier.combined_gateway== 'true' ?'Yes':carrier.combined_gateway==\\r\\n 'false'? 'No' : ''}}\\r\\n
\\r\\n Ipr Imported: {{carrier.ipr_imported== 'true' ?'Yes':carrier.ipr_imported== 'false'? 'No' :\\r\\n ''}}\\r\\n \\r\\n Contact Street 2: {{carrier.contact_street_2}}\\r\\n
\\r\\n Number of Other Frns: {{carrier.number_of_other_frns== 'true'\\r\\n ?'Yes':carrier.number_of_other_frns== 'false'? 'No' : ''}}\\r\\n \\r\\n Contact Address Same as Business Address: \\r\\n {{carrier.contact_address_same_as_business_address== 'true'\\r\\n ?'Yes':carrier.contact_address_same_as_business_address== 'false'? 'No' : ''}}\\r\\n
\\r\\n Other Frns: {{carrier.other_frns}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Favorite
\\r\\n
\\r\\n Are you sure you want to remove selected provider from favorite list?\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Provider\\r\\n \\r\\n Update Date\\r\\n \\r\\n Implementation\\r\\n \\r\\n Description\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{update.business_name}}\\r\\n \\r\\n {{update.sys_updated_on | date: 'MM/dd/yyyy'}}{{update.implementation}}{{update.description}}
\\r\\n No records found\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Access Denied

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n You do not have access of {{AccessDeniedTool}} tool. Please call us at 407-740-8575 for more information.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n

\\r\\n Processing...\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n

\\r\\n Processing...\\r\\n

\\r\\n
\\r\\n \\r\\n
\\r\\n
\"","export default \"\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"Inteserra\\\"\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

 

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\\"
\\r\\n \\r\\n
\\r\\n\\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n

{{title}}

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n

Welcome to IRIS for Wireless!

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

\\r\\n COMING SOON…Citations and source links!\\r\\n

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

\\r\\n
\\r\\n Your last login information:
\\r\\n {{lastLogin | date:'EEEE, MMMM d, y, HH:MM'}}\\r\\n\\r\\n

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

\\r\\n The Wireless Requirements Guide contains state and federal regulations applicable to MVNOs and Prepaid\\r\\n Wireless providers.\\r\\n

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

The at-a-glance matrix allows the user to quickly sort and identify requirements pertaining to:

\\r\\n
    \\r\\n
  • Commission Registration or Certification
  • \\r\\n
  • Agency Assessments
  • \\r\\n
  • 911, USF and TRS Funds
  • \\r\\n
  • Other Fees and Requirements
  • \\r\\n
  • Who Handles Customer Complaints
  • \\r\\n
\\r\\n

\\r\\n

\\r\\n Use “Select States” to customize the view to specific states only. Hyperlinks in the matrix take the user to\\r\\n regulatory details for each state, such as required billing language, recurring customer notices, or record\\r\\n retention requirements. Information may be downloaded as a pdf file.\\r\\n

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

Track changes made to the Guide under “Updates”. Updates may be sorted by state, date, or type of change.

\\r\\n

Questions regarding the Guide may be directed to Inteserra using the Support link below.

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

Welcome to IRIS for VoIP!

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

\\r\\n COMING SOON…Citations and source links!\\r\\n

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

\\r\\n
\\r\\n Your last login information:
\\r\\n {{lastLogin | date:'EEEE, MMMM d, y, HH:MM'}}\\r\\n\\r\\n

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

\\r\\n The VoIP Requirements Guide contains state and federal regulations applicable to VoIP providers.\\r\\n

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

The at-a-glance matrix allows the user to quickly sort and identify requirements pertaining to:

\\r\\n
    \\r\\n
  • Commission Registration or Certification
  • \\r\\n
  • Agency Assessments
  • \\r\\n
  • 911, USF and TRS Funds
  • \\r\\n
  • Other Fees and Requirements
  • \\r\\n
  • Agency Regulation Restrictions
  • \\r\\n
\\r\\n

\\r\\n

\\r\\n Use “Select States” to customize the view to specific states only. Hyperlinks in the matrix take the user to\\r\\n regulatory details for each state, such as required billing language, recurring customer notices, or record\\r\\n retention requirements. Information may be downloaded as a pdf file.\\r\\n

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

Track changes made to the Guide under “Updates”. Updates may be sorted by state, date, or type of change.

\\r\\n

Click here to watch a short video demonstration of the VoIP Requirements Guide.

\\r\\n

Questions regarding the Guide may be directed to Inteserra using the Support link below.

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Commission\\r\\n Registration or Certification\\r\\n Registration\\r\\n or Certification
Required
\\r\\n
\\r\\n \\r\\n Agency Assessments\\r\\n \\r\\n \\r\\n \\r\\n 911\\r\\n \\r\\n \\r\\n \\r\\n 988\\r\\n \\r\\n \\r\\n \\r\\n USF\\r\\n \\r\\n \\r\\n \\r\\n TRS\\r\\n \\r\\n \\r\\n \\r\\n Agency Assessments\\r\\n \\r\\n \\r\\n \\r\\n Other Fees\\r\\n \\r\\n \\r\\n \\r\\n Other Requirement\\r\\n \\r\\n \\r\\n Customer Complaints Handled By\\r\\n \\r\\n \\r\\n Agency Regulation Restricted\\r\\n \\r\\n \\r\\n \\r\\n Registration Required\\r\\n \\r\\n \\r\\n \\r\\n IPCS Rules\\r\\n \\r\\n \\r\\n \\r\\n Tariff\\r\\n \\r\\n \\r\\n \\r\\n Audio rate cap\\r\\n \\r\\n \\r\\n \\r\\n Video rate cap\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n {{mData.name}}\\r\\n \\r\\n 0\\\"\\r\\n src=\\\"assets/images/lamp-icon.png\\\" width=\\\"17\\\" alt=\\\"\\\">\\r\\n \\r\\n \\r\\n {{mData.commissionRegistrationorCertification}}\\r\\n No\\r\\n \\r\\n {{mData.agencyAssessments}}\\r\\n No\\r\\n \\r\\n {{mData.nineOneOne}}\\r\\n No\\r\\n \\r\\n {{mData.nineEightEight}}\\r\\n No\\r\\n \\r\\n {{mData.usf}}\\r\\n No\\r\\n \\r\\n {{mData.trs}}\\r\\n No\\r\\n \\r\\n {{mData.agencyAssessments}}\\r\\n No\\r\\n \\r\\n {{mData.otherFees}}\\r\\n No\\r\\n \\r\\n {{mData.otherRequirement}}\\r\\n No\\r\\n \\r\\n {{mData.customerComplaintsHandledBy}}\\r\\n -\\r\\n \\r\\n {{mData.agencyRegulationRestricted}}\\r\\n No\\r\\n \\r\\n {{mData.registrationRequired}}\\r\\n No\\r\\n \\r\\n {{mData.ipcsRules}}\\r\\n \\r\\n \\r\\n {{mData.tariff}}\\r\\n No\\r\\n \\r\\n {{mData.audioratecap}}\\r\\n No\\r\\n \\r\\n {{mData.videoratecap}}\\r\\n No\\r\\n
\\r\\n No record 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
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
 
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

{{statenamepopup}} - Updates

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
 TypeDateDescription
\\r\\n Loading...\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{update.updateType}}\\r\\n {{update.updateDate | date:'MM/dd/yyyy'}}\\r\\n
\\r\\n
\\r\\n No records 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
\"","export default \"
\\r\\n
\\r\\n

Privacy Policy

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

John Staurulakis, LLC Company publications are not intended to be used in lieu of legal counsel or as the\\r\\n sole basis to determine a business strategy. Information is based upon relevant state statutes, and/or\\r\\n commission rules, orders, and telephone discussions with responsible state commission staff members. Regulatory\\r\\n Requirements change rapidly and are subject to differing interpretations. While the information contained\\r\\n herein is considered by the John Staurulakis, LLC Company to be generally reliable it is not guaranteed.

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

This publication is copyrighted by the John Staurulakis, LLC Company, who has the sole and exclusive copyrights\\r\\n therein. It is intended for the sole use of our clients and may not be shared with any third parties, including\\r\\n without limitation any affiliates, agents, contractors or other consultants. By purchasing this publication,\\r\\n you are agreeing that you will not, and will not permit any employees to copy, distribute, publish, transmit,\\r\\n broadcast, sell or license the publication outside of your company without the prior express written consent of\\r\\n the John Staurulakis, LLC Company.

\\r\\n\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\"","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n |\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n |\\r\\n
\\r\\n
\\r\\n \\r\\n \\\"\\\"\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
  StateTypeDateDescription
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{update.stateName}}\\r\\n \\r\\n {{update.updateType}}{{update.updateDate | date:'MM/dd/yyyy'}}\\r\\n
\\r\\n
\\r\\n No records 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 Trac It\\r\\n
x
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Oops! You do not have Trac It subscription yet\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Please contact client Services by phone at 407-740-8575 to know more\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Your Favorite states for update alerts. Click on to remove it\\r\\n from your\\r\\n favorites list.\\r\\n
No state available in\\r\\n your\\r\\n favorites list.
\\r\\n
\\r\\n \\r\\n {{state.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
Favorite
\\r\\n
\\r\\n {{ValidationMessage}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"\\r\\n
\\r\\n
\\r\\n \\r\\n \\\"Inteserra\\\"\\r\\n \\\"Inteserra\\\"\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n {{loginName}} | {{companyName}}\\r\\n
\\r\\n
\\r\\n \\r\\n  \\r\\n \\r\\n Logout\\r\\n
\\r\\n
\\r\\n \\r\\n Matrix\\r\\n Updates 0\\\">{{unread}}\\r\\n My\\r\\n Favorites\\r\\n Logout\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n Providers\\r\\n Updates 0\\\">{{iprUnread}}\\r\\n My\\r\\n Favorites\\r\\n Logout\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n Matrix\\r\\n Updates 0\\\">{{unread}}\\r\\n My\\r\\n Favorites\\r\\n Logout\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n Providers\\r\\n Updates 0\\\">{{rmdUnread}}\\r\\n My\\r\\n Favorites\\r\\n Logout\\r\\n
\\r\\n
\\r\\n Logout\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
© {{dt | date : 'yyyy'}}, John Staurulakis, LLC.
\\r\\n
Privacy | Support
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n

Trac-It Detail

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n Deadline Date: {{this.actionItem.deadlineDate | date :'MM/dd/yyyy'}}\\r\\n
\\r\\n
\\r\\n Jurisdiction: {{sArray}}\\r\\n ,\\r\\n \\r\\n\\r\\n  \\r\\n 3\\\"> more...\\r\\n {{this.actionItem.stateName}} \\r\\n \\r\\n
\\r\\n
\\r\\n Category: {{this.actionItem.actionTypeName}}\\r\\n
\\r\\n
\\r\\n Carrier Type: {{cArray}}\\r\\n ,\\r\\n  \\r\\n 3\\\">\\r\\n more...\\r\\n {{this.actionItem.carrierNames}} \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n   \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n {{this.actionItem.title}}\\r\\n \\r\\n
\\r\\n
\\r\\n {{this.actionItem.title}}\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Handled by CRS\\r\\n
\\r\\n
\\r\\n Status: \\r\\n {{this.actionItem.statusName}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Briefing Date: {{(actionItem.briefingDate!=\\\"0001-01-01T00:00:00\\\" ? actionItem.briefingDate:\\r\\n actionItem.briefingDate) | date: 'MM/dd/yyyy'}}\\r\\n
\\r\\n
\\r\\n Briefing: \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Delete

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
This will delete this Trac-It for ALL users in the company. Are you sure you want to delete this Trac-It ?
\\r\\n
\\r\\n 0\\\">\\r\\n Are you sure you want to delete this record and recurrence record ?\\r\\n \\r\\n \\r\\n Are you sure you want to delete this Trac-It ?\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n

Trac-It 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
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\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 Charges:  ${{actionItemSearchModel.actionCharges}}  \\r\\n \\r\\n \\r\\n
\\r\\n
0 || actionItemSearchModel.actionNotes != '')\\\">\\r\\n
\\r\\n Pricing of JSI services are Confidential:\\r\\n Not for use/disclosure\\r\\n except under written\\r\\n agreement.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Date\\r\\n \\r\\n Status\\r\\n \\r\\n Notes\\r\\n \\r\\n AssignTo\\r\\n \\r\\n Handle By\\r\\n
\\r\\n {{model.createdDate | date:'MM/dd/yyyy' }}\\r\\n \\r\\n \\r\\n {{model.statusName}}\\r\\n \\r\\n {{model.note}}\\r\\n \\r\\n {{model.assignName}}\\r\\n \\r\\n \\r\\n I acknowledge this action and will handle this Internally\\r\\n \\r\\n \\r\\n I acknowledge this action and would like JSI to process this for me.\\r\\n \\r\\n
\\r\\n Status update log not available.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Select Reminder user alert

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

\\r\\n You can't select more then one user because trac-it visibility is Visible to me only.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n

{{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 \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Select Reminder user alert

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

\\r\\n Please change the trac-it visibility to either Visible to all company users or Visible to specific users to select multiple users.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n

{{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 \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Select Reminder user alert

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

\\r\\n Please change the trac-it visibility to either Visible to all company users\\r\\n or Visible to specific users to select multiple users.\\r\\n

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

Edit recurring reminder

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

\\r\\n Edit individual\\r\\n   \\r\\n Edit series\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"\\r\\n\\r\\n\\r\\n
0\\\">\\r\\n
\\r\\n  \\r\\n
\\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
\\r\\n
\\r\\n
\\r\\n

{{fund.stateName}}\\r\\n
0 && adminUserType\\\" style=\\\"cursor: pointer;display: inline;\\\"\\r\\n data-toggle=\\\"modal\\\" data-target=\\\"#showUnreadupdates\\\" (click)=\\\"openpopup(fund.stateId,fund.stateName)\\\">\\r\\n \\\"\\\"\\r\\n
\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n 0 && fund.regTitle + ' - Registration' == fundReference ? 'bgApply' : ''\\\"\\r\\n id=\\\"{{fund.regTitle}} - Registration\\\" *ngIf=\\\"fund.registration != ''\\\" class=\\\"border-box\\\">\\r\\n
\\r\\n
\\r\\n

{{fund.regTitle}}

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

58 ? 'nopad' : ''\\\">\\r\\n {{details.title}}\\r\\n

\\r\\n
\\r\\n
Applicable:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Current Amount:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Administrative Recovery:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Remit:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Bill To Customer:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Separate Line Item:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Additional Info:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Registration :
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
Rule Text:
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
Handled by :
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\"\\r\\n class=\\\"col-md-6 box_blue_bg\\\">\\r\\n

58 ? 'nopad' : ''\\\">\\r\\n {{details.title}}\\r\\n

\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n 0\\\" class=\\\"border-box\\\">\\r\\n
\\r\\n
\\r\\n

Other Requirements\\r\\n

\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\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 records found.\\r\\n

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

\\r\\n No records found.\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n No records 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 \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
 
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

{{statenamepopup}} - Updates

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
 TypeDateDescription
\\r\\n Loading...\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{update.updateType}}{{update.updateDate | date:'MM/dd/yyyy'}}\\r\\n
\\r\\n
\\r\\n No records 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
PDF Download Alert
\\r\\n
\\r\\n

\\r\\n The PDF will include only 1st state. If you want to download for\\r\\n any other state, please select that state only from the Select States Option.\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n

Notes

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Date\\r\\n \\r\\n Note\\r\\n
\\r\\n {{ notes.createdDate | date:'MM/dd/yyyy' }}\\r\\n \\r\\n {{ notes.note }}\\r\\n \\r\\n  \\r\\n \\r\\n
\\r\\n Notes log not available.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Delete Confirmation

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

Are you sure, you want to delete this record.?

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\"","export default \"\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n   iCal\\r\\n
Subscribe to Inteserra's iCal to get updates right on\\r\\n your favorite calendar application.\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
 
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n My\\r\\n Favorites\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n My Trac-Its\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
 
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n Inteserra iCal URL

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n {{webCalAppUrl}}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n  \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n Edit

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Delete\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Are you sure you want to delete this record ?\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"\"","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","export class ActionCompanySpecificCategoryModel {\r\n actionCompanySpecificCategoryId: number;\r\n name: string;\r\n companyId: number;\r\n createdBy: number;\r\n }","export class ActionDashboardCountModel {\r\n actionCount: number = 0;\r\n generalAlertsCount: number = 0;\r\n actionItemTypeCount: number = 0;\r\n carrierCategoryCount: number = 0;\r\n}\r\n","import { CarrierCategoryModel } from './ActionCarrierModel';\r\nimport { ActionStateModel } from './ActionStateModel';\r\n\r\nexport class ActionGetByIdModel {\r\n actionId: number = 0;\r\n deadlineDate: Date;\r\n subject: string;\r\n description: string;\r\n actionItemTypeId: number;\r\n assignToId: number;\r\n isForAllUsers: boolean;\r\n listOfCarrierCategory: CarrierCategoryModel[];\r\n listOfState: ActionStateModel[];\r\n visibleTrackIt: number\r\n visibleUserIds = [];\r\n country: number\r\n recurrance: string\r\n reminder: string\r\n reminderUsers = [];\r\n category: number;\r\n recurranceId:number;\r\n alertText:string;\r\n}","export class ActionItemSaveNoteModel {\r\n userID: number;\r\n actionNoteId: number;\r\n updateId: number;\r\n actionId: number;\r\n notes: string; \r\n briefingId: number;\r\n}\r\n","export class ActionItemSearchModel {\r\n deadlineDate: Date;\r\n title: string;\r\n colorCode: string;\r\n description: string;\r\n neworChanged: string;\r\n stateName: string;\r\n actionTypeName: string;\r\n carrierNames: string;\r\n statusName: string;\r\n actionId: string;\r\n updateId: string;\r\n actionItemTypeId: string;\r\n createdBy: string;\r\n createdDate: string;\r\n modifiedBy: string;\r\n modifiedDate: string;\r\n actionLinkId: string;\r\n assignToId: string;\r\n actionCreatedBy: string;\r\n actionCreatedDate: string;\r\n handleType: string;\r\n actionModifiedBy: string;\r\n actionModifiedDate: string;\r\n status: string;\r\n statusColorCode: string;\r\n isHideAssignToUser: string;\r\n isHideRadioOption: string;\r\n actionCharges: number = 0;\r\n actionNotes: string = '';\r\n isInformationOnly: any;\r\n isAllVisible: any;\r\n briefingId: string;\r\n briefingDocPath:string;\r\n briefingDate:Date;\r\n displayBriefingDocName:string;\r\n recurranceId: number;\r\n CompanyUser:boolean\r\n internalNotes:string\r\n reminder: string\r\n reminderUsers = [];\r\n visibleTrackIt:number\r\n alertText:string\r\n}\r\n","export class ActionItemTypeModel{\r\n actionItemTypeId: number ;\r\n typeName: string;\r\n colorCode: string;\r\n isDefaultChecked: boolean;\r\n isHoliday: boolean;\r\n isPersonal: boolean;\r\n createdDate: string;\r\n createdBy: number;\r\n modifiedDate: string;\r\n modifiedBy: number;\r\n totalRecordCount: number;\r\n isEdit: boolean = false;\r\n createdUser: string;\r\n modifiedUser: string;\r\n isUserCanDelete?: boolean;\r\n}\r\n\r\n","export class ActionItemUpdateStatusModel {\r\n userID: number;\r\n updateId: number;\r\n actionId: number;\r\n statusId: number;\r\n assignToId: number;\r\n handleType: number;\r\n note: string;\r\n productId?: number = 0;\r\n previousAssingId?: number = 0;\r\n previousStatus?: number = 0;\r\n briefingId: number;\r\n reminder: string;\r\n reminderUsers = [];\r\n}\r\n","export class AddNewActionModel {\r\n actionId:number;\r\n actionItemId: number;\r\n assignToUser: string;\r\n deadLineDate: string;\r\n subject: string;\r\n description: string;\r\n state: string;\r\n carrierCategories: string;\r\n visibleToAllCompanyUsers: boolean;\r\n createdBy: number;\r\n companyId: number;\r\n isNeworChanged: any\r\n actionType: string;\r\n isAction: boolean;\r\n actionCharges: string\r\n actionNotes: string;\r\n previousAssingId: string;\r\n productId: string;\r\n isSendEmailNotification: any\r\n isInformationOnly: any\r\n visibleTrackIt: number\r\n visibleUserIds = [];\r\n country: number\r\n recurrance: string\r\n reminder: string\r\n reminderUsers = []\r\n category: number;\r\n assignToId:number;\r\n recurranceId:number;\r\n selectedItems:number;\r\n notes:string;\r\n alertText:string;\r\n}","export class CarrierCategoryAdminModel {\r\n carrierCatId: number;\r\n carrierCatName: string; \r\n createdDate: string;\r\n createdBy: string;\r\n modifiedDate: string;\r\n modifiedBy: string;\r\n isReadOnly: boolean\r\n createdUser: string; \r\n modifiedUser: string;\r\n totalRowCount: number;\r\n isDeleteActive: boolean;\r\n isActive: boolean;\r\n }\r\n ","export enum ToolEnum {\r\n 'wireless' = 1,\r\n 'ipr' = 2,\r\n 'voip' = 3,\r\n 'actionitem' = 4,\r\n 'generalalert' = 5,\r\n 'rmd' = 6,\r\n 'actualrmd' = 21,\r\n 'ipcs' = 41\r\n}\r\n\r\nexport enum ActionStatusList {\r\n 'pending' = 1,\r\n 'notapplicable' = 2,\r\n 'acknowledged' = 3,\r\n 'done' = 4,\r\n 'informativeonly' = 5\r\n}\r\n\r\nexport enum AdminUserType {\r\n 'systemadmin' = 1,\r\n 'systemuser' = 2\r\n}\r\n\r\nexport enum ActionActivity {\r\n 'Briefing Services' = 7,\r\n 'Carrier Tariffs' = 11,\r\n 'Commission Websites' = 12,\r\n 'Tax Documents' = 18,\r\n 'CPCN Certificates' = 15,\r\n 'CRRA' = 8,\r\n 'Exemption Certificates' = 14,\r\n 'Home' = 23,\r\n // 'I360' = 6,\r\n //'I360 Alert' = 5, \r\n 'IPR' = 2,\r\n 'Local Rate Information' = 13,\r\n 'My Library' = 24,\r\n 'News' = 20,\r\n 'Rates Management System' = 19,\r\n //'Red Light Status' = 10,\r\n 'REMS' = 25,\r\n 'Robocall Mitigation Database' = 52,\r\n 'Secretary of States Authorization' = 16,\r\n 'Special Report' = 28,\r\n 'Tariffs.net' = 17,\r\n 'Trac It' = 4,\r\n 'TRFA' = 9,\r\n 'VoIP' = 3,\r\n 'Webinar Libary' = 21,\r\n 'White Papers' = 30,\r\n 'Wireless' = 1,\r\n 'Inroll ACP' = 51, //Done\r\n 'Training' = 29, //Done\r\n 'State911' = 50, //Done\r\n 'Seminars' = 26, //Done\r\n 'My Files' = 43, //Done\r\n 'Company Directory' = 32, //Done\r\n 'Change Password' = 45, //Done\r\n 'Logout' = 53, //Done\r\n 'Transactional Tax Login' = 41, //Done \r\n 'Inteserra Internal Use Only' = 44, //Done \r\n 'Inroll Lifeline' = 54, //Done\r\n 'Manage Customer Resources' = 55,\r\n 'TRS Customer Notice' = 33,\r\n 'IPCS' = 59,\r\n}\r\n","import { DashboardCountSummartModel } from './DashboardCountSummartModel';\r\n\r\nexport class DashboardCountModel {\r\n actionTypeSummary: DashboardCountSummartModel[];\r\n carrierCategoriesSummary: DashboardCountSummartModel[];\r\n actionStatusSummary: DashboardCountSummartModel[];\r\n}\r\n","import { CarrierCategoryModel } from './carrierCategoryModel';\r\nimport { ActionItemTypeModel } from './ActionItemTypeModel';\r\nimport { stateMasterModel } from './stateMasterModel';\r\n\r\nexport class FavoriteModel {\r\n carrierCategoryFavorite: CarrierCategoryModel[];\r\n actionItemTypesFavorite: ActionItemTypeModel[];\r\n stateFavorite: stateMasterModel[];\r\n}\r\n","export class GeneralAlertsModel {\r\n generalAlertsId: number;\r\n alertDate: string;\r\n subject: string;\r\n message: string;\r\n productId: string;\r\n isGeneralAlerts: boolean;\r\n wirelessStateOp: string;\r\n wirelessStates: string;\r\n voipStateOp: string;\r\n voipStates: string;\r\n iprStateOp: string;\r\n iprStates: string;\r\n iprProviderOp: string;\r\n iprProviders: string;\r\n actionStateOp: string;\r\n actionStates: string;\r\n actionTypeOp: string;\r\n actionTypes: string;\r\n actionCategoryOp: string;\r\n actionCategories: string;\r\n createdBy: number;\r\n createdDate: string;\r\n modifiedBy: number;\r\n modifiedDate: string;\r\n emailStatus: string;\r\n createdUser: string;\r\n modifiedUser: string;\r\n totalRowCount: string;\r\n}","export class LoginPasswordModel {\r\n username: any;\r\n password: any;\r\n}","export class RMDClientFavouriteCarriersModel {\r\n favouriteId: number;\r\n clientId: number;\r\n carrierId: number;\r\n business_name: string;\r\n isFavourite: boolean;\r\n}","export class RMDProviderFilterModel {\r\n pageNumber: number;\r\n pageSize: number;\r\n orderBy: string;\r\n keywordFilter: string;\r\n providerSearch: string;\r\n fromDate: string;\r\n todate: string;\r\n isFavorite: boolean;\r\n userId: number;\r\n unreadonly: boolean;\r\n carrierIds: string;\r\n}","export class UserTokenModel {\r\n ClientID: string = '';\r\n ClientSecret: string = '';\r\n}","export class ActionCalendarSearch {\r\n userId: number;\r\n dateFrom: string;\r\n toDate: string;\r\n isNeworChanged: boolean = false;\r\n actionTypeIds: string;\r\n carrierCatIds: string;\r\n stateIds: string;\r\n statusIds: string;\r\n emailActionId: string;\r\n emailUpdateId: string;\r\n emailDeadlineDate: string;\r\n listOfActionID: string;\r\n listOfUpdateID: string;\r\n isFavorite?: boolean = false; \r\n isMyTracIt?: boolean = false;\r\n emailBriefingId: string;\r\n listOfBriefingId: string;\r\n companySpecificIds:string;\r\n productId:number;\r\n Search:string;\r\n pageNumber:number;\r\n pageSize:number;\r\n}\r\n","export class ApplicationActivityModel {\r\n applicationActivityId?: number;\r\n pageName: string;\r\n pageUrl: string;\r\n actionName: string;\r\n ipAddress?: string;\r\n userId?: number;\r\n dataId?: number;\r\n dataType: number;\r\n actionUrl: string;\r\n fullName: string;\r\n totalRecordCount: number;\r\n companyName: string;\r\n stateName: string;\r\n}\r\n","export class filterModel {\r\n pageNumber?: string;\r\n pageSize?: string;\r\n whereCondition?: string;\r\n orderBy?: string;\r\n keywordFilter?: string;\r\n stateID?: string;\r\n userID?: string;\r\n columnIndex?: string;\r\n productId?: number;\r\n actionTypes?: string;\r\n carrierCategories?: string;\r\n actionSatus?: string;\r\n listOfProduct?: string;\r\n emailKey?: string;\r\n isActionRequired?: boolean; \r\n oprator?: string;\r\n fromDate?: string;\r\n toDate?: string;\r\n listOfType?: string;\r\n systemUserCondition?: string;\r\n}\r\n\r\nexport class carrierFilterModel {\r\n orderBy: string;\r\n keywordFilter: string;\r\n fromDate: string;\r\n todate: string;\r\n updateStatus: string;\r\n userID: number;\r\n ID: number;\r\n Status: number;\r\n filterFavourite: number;\r\n newCarrierID: number;\r\n carrierFilter: string;\r\n}\r\n\r\nexport class carrierFilterModelV2 {\r\n orderBy: string;\r\n keywordFilter: string;\r\n fromDate: string;\r\n todate: string;\r\n updateStatus: string;\r\n userID: number;\r\n ID: number;\r\n Status: number;\r\n filterFavourite: number;\r\n newCarrierID: number;\r\n carrierFilter: string;\r\n pageNumber:number;\r\n pageSize:number;\r\n}","export class LandingPageModel {\r\n userid: number;\r\n title: string;\r\n description: string;\r\n}\r\n","export class updatesPageModel {\r\n pageIndex: any;\r\n pageSize: any;\r\n whereCondition: string;\r\n orderBy: string;\r\n keywordFilter: string;\r\n fromupdatesDateFilter: string;\r\n toupdatesDateFilter: string;\r\n userID: string;\r\n unreadonly: string;\r\n updatetype: string;\r\n productId: string;\r\n}\r\n\r\nexport class updatesPageModelV2 {\r\n pageNumber:number;\r\n pageSize: number;\r\n whereCondition: string;\r\n orderBy: string;\r\n keywordFilter: string;\r\n fromupdatesDateFilter: string;\r\n toupdatesDateFilter: string;\r\n userID: string;\r\n unreadonly: string;\r\n updatetype: string;\r\n productId: string;\r\n}\r\n\r\nexport class IPCSupdatesPageModel {\r\n pageIndex: any;\r\n pageSize: any;\r\n whereCondition: string;\r\n orderBy: string;\r\n keywordFilter: string;\r\n fromupdatesDateFilter: string;\r\n toupdatesDateFilter: string;\r\n userID: string;\r\n unreadonly: string;\r\n updatetype: string;\r\n}\r\n","import { stateMasterModel } from \"./stateMasterModel\";\r\nexport class userModel {\r\n userId: string;\r\n userName: string;\r\n password?: string;\r\n firstName: string;\r\n lastName: string;\r\n email: string;\r\n companyName?: string;\r\n city?: string;\r\n state?: string;\r\n phone: string;\r\n userTypeId?: string;\r\n isActive: string;\r\n lastLogin?: string;\r\n createdDate?: string;\r\n createdBy?: string;\r\n modifiedDate?: string;\r\n modifiedBy?: string;\r\n wirelessStates?: stateMasterModel[];\r\n voIPStates?: stateMasterModel[];\r\n iprStates?: stateMasterModel[];\r\n actionStates?: stateMasterModel[];\r\n subscriptionStateName?: string;\r\n subscriptionCount?: string;\r\n token?: string;\r\n companyId?: string;\r\n isICalSubscription?: string;\r\n encyUserId?: string;\r\n deadlineDateFromAction?: string;\r\n deadlineDateFromUpdate?: string;\r\n adminTypeId?: number;\r\n adminUserName?: string;\r\n adminUserId?: number;\r\n deadlineDateFromBriefing?: string;\r\n}\r\n","//Service\r\nimport { Injectable } from '@angular/core';\r\nimport { Router, RouterEvent, NavigationEnd } from '@angular/router';\r\n\r\n /** A router wrapper, adding extra functions. */\r\n @Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RouterExtService {\r\n\r\n private previousUrl: string = undefined;\r\n private currentUrl: string = undefined;\r\n\r\n constructor(private router: Router) {\r\n this.currentUrl = this.router.url;\r\n router.events.subscribe(event => {\r\n if (event instanceof NavigationEnd) {\r\n this.previousUrl = this.currentUrl;\r\n this.currentUrl = event.url;\r\n }\r\n });\r\n }\r\n\r\n public getPreviousUrl() {\r\n return this.previousUrl;\r\n }\r\n}","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({ name: 'safe' })\r\nexport class SafePipe implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer) { }\r\n transform(url) {\r\n \r\n return this.sanitizer.bypassSecurityTrustResourceUrl(url);\r\n }\r\n} ","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { ActionCompanySpecificCategoryModel } from 'src/Models/ActionCompanySpecificCategoryModel';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ActionCompanySpecificCategoryService {\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n GetAllActionCompanySpecificCategory(TokenKey: string, companyId: number): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/ActionCompanySpecificCategory/GetAllActionCompanySpecificCategory/' + companyId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n ActionCompanySpecificCategoryAddUpdate(TokenKey: string, category: ActionCompanySpecificCategoryModel): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/ActionCompanySpecificCategory/ActionCompanySpecificCategoryAddUpdate/';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + data, category, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n ActionCompanySpecificCategoryDelete(TokenKey: string, categoryId: number): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/ActionCompanySpecificCategory/ActionCompanySpecificCategoryDelete/'+categoryId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","import { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { filterModel } from 'src/Models/filterModel';\r\nimport { ActionCalendarSearch } from 'src/Models/actionCalendarSearchModel';\r\nimport { AddNewActionModel } from 'src/Models/AddNewActionModel';\r\nimport { carrierFilterModel } from 'src/Models/filterModel';\r\nimport { LandingPageModel } from '../Models/landingPageModel';\r\nimport { Http, Response, Headers, URLSearchParams, RequestOptions, ResponseContentType, RequestMethod } from '@angular/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ActionItemService {\r\n AppUrl: string = \"\";\r\n carrierFilterModel = new carrierFilterModel();\r\n filterModel = new filterModel();\r\n constructor(private _http: HttpClient,private _httpdownload: Http, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n getCalendarData(TokenKey: string, searchModel: ActionCalendarSearch): Observable {\r\n this.setAPIUrl();\r\n //this.filterModel.actionTypes = ActionTypes;\r\n //this.filterModel.carrierCategories = CarrierCategories;\r\n //this.filterModel.actionSatus = ActionSatus;\r\n\r\n let URL = this.AppUrl + 'api/ActionItem/GetCalendarData';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, searchModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n getDashboardCalendarData(TokenKey: string, searchModel: ActionCalendarSearch): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/GetDashboardCalendarData';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, searchModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n getListViewData(TokenKey: string, orderBy: any, searchModel: ActionCalendarSearch): Observable {\r\n this.setAPIUrl();\r\n // this.filterModel.pageNumber = pagaNo;\r\n // this.filterModel.pageSize = pageSize;\r\n // this.filterModel.whereCondition = whereCondition;\r\n // this.filterModel.orderBy = orderBy;\r\n\r\n let URL = this.AppUrl + 'api/ActionItem/GetListViewData?orderBy=' + orderBy;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, searchModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n populateActionItems(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/GetActionItems';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(URL, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n populateCarrierCategory(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/GetCarrierCategories';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(URL, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n populateActionStatus(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/GetActionStatus';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(URL, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetCarrierCategories(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetCarrierCategories';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n AddUpdateNewActionItem(TokenKey: string, addNewActionModel: AddNewActionModel): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/AddUpdateNewActionItem';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, addNewActionModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionStatus(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionStatus';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n ActionItemSearchByIds(TokenKey: string, userId: string, updateId: string, actionId: string, briefingId: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/ActionItemSearchByIds/' + userId + '/' + updateId + '/' + actionId + '/' + briefingId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n ActionItemUpdateStatus(TokenKey: string, actionItemUpdateStatusModel: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/ActionItemUpdateStatus';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, actionItemUpdateStatusModel, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemSearchStatusHistory(TokenKey: string, userId: string, updateId: string, actionId: string, briefingId: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionItemSearchStatusHistory/' + userId + '/' + updateId + '/' + actionId + '/' + briefingId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n ActionItemSaveNote(TokenKey: string, notesModel: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/ActionItemSaveNote';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, notesModel, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemSearchNotes(TokenKey: string, userId: string, updateId: string, actionId: string, orderBy: string, briefingId: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionItemSearchNotes/' + userId + '/' + updateId + '/' + actionId + '/' + orderBy + '/' + briefingId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n ActionNotesDeleteByIds(TokenKey: string, actionNoteId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/ActionNotesDeleteByIds/' + actionNoteId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemDashboardCounts(TokenKey: string, userId: any, fromDate: any, toDate: any, isFavorite: any, isMyTracIt: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionItemDashboardCounts';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, { 'userId': userId, 'fromDate': fromDate, 'toDate': toDate, 'isFavorite': isFavorite, 'isMyTracIt': isMyTracIt }, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemDashboardNotes(TokenKey: string, userId: any, fromDate: any, toDate: any, isFavorite: any, isMyTracIt: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionItemDashboardNotes';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, { 'userId': userId, 'fromDate': fromDate, 'toDate': toDate, 'isFavorite': isFavorite, 'isMyTracIt': isMyTracIt }, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n ActionItemStateFavouriteAdd(TokenKey: string, userId: number, stateIds: string, isFavourite: number,): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModel.userID = userId;\r\n this.carrierFilterModel.keywordFilter = stateIds;\r\n this.carrierFilterModel.Status = isFavourite;\r\n\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/ActionItem/ActionItemStateFavouriteAdd', this.carrierFilterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemTypesFavoriteData(TokenKey: string, userId: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionItemTypesFavoriteData/' + userId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n ActionItemTypeFavouriteAdd(TokenKey: string, userId: number, stateIds: string, isFavourite: number): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModel.userID = userId;\r\n this.carrierFilterModel.keywordFilter = stateIds;\r\n this.carrierFilterModel.Status = isFavourite;\r\n\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/ActionItem/ActionItemTypeFavouriteAdd', this.carrierFilterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetCarrierCategoryFavoriteData(TokenKey: string, userId: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetCarrierCategoryFavoriteData/' + userId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n CarrierCategoryFavouriteAdd(TokenKey: string, userId: number, stateIds: string, isFavourite: number): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModel.userID = userId;\r\n this.carrierFilterModel.keywordFilter = stateIds;\r\n this.carrierFilterModel.Status = isFavourite;\r\n\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/ActionItem/CarrierCategoryFavouriteAdd', this.carrierFilterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetDashboardActionItemsReuiredAttention(TokenKey: string, orderBy: string, searchModel: ActionCalendarSearch): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/GetDashboardActionItemsReuiredAttention?orderBy=' + orderBy;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, searchModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetLandingPageDetails(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/GetLandingPageDetails';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(URL, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n SaveLandingPageDetails(TokenKey: string, postModel: LandingPageModel): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/SaveUpdateLandingPageDetails';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, postModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetClientFavorite(TokenKey: string, userId: any, productId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetClientFavorite/' + userId + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionTypesByPages(TokenKey: string, model: filterModel): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionTypesByPages';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, model, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemTypeById(TokenKey: string, actionTypeId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionItemTypeById/' + actionTypeId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n AddUpdateActionItemType(TokenKey: string, actionTypeModel: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/AddUpdateActionItemType';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, actionTypeModel, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemsType(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionItemsType';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n AdminAddUpdateActionItem(TokenKey: string, addNewActionModel: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/AdminAddUpdateActionItem';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, addNewActionModel, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n AdminActionItemFindByPages(TokenKey: string, filterModel: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/AdminActionItemFindByPages';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, filterModel, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionSearchById(TokenKey: string, actionId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionSearchById/' + actionId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionStateByActionId(TokenKey: string, actionId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionStateByActionId/' + actionId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionCarrierByActionId(TokenKey: string, actionId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionCarrierByActionId/' + actionId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n DeleteActionItemAdmin(TokenKey: string, actionId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/DeleteActionItemAdmin/' + actionId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemProvider(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionItemProvider';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n AddUpdateGeneralAlerts(TokenKey: string, generalAlertsModel: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/AddUpdateGeneralAlerts';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, generalAlertsModel, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetGeneralAlertsFindByPages(TokenKey: string, filterModel: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetGeneralAlertsFindByPages';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, filterModel, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetGeneralAlertsByIds(TokenKey: string, generalAlertsId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetGeneralAlertsByIds/' + generalAlertsId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetAdminActionItemDashboardCounts(TokenKey: string, systemUserCondition: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetAdminActionItemDashboardCounts/' + systemUserCondition;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemSearchListForUpdateCount(TokenKey: string, userId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/GetActionItemSearchListForUpdateCount/' + userId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemSearchListForUpdate(TokenKey: string, orderBy: string, searchModel: ActionCalendarSearch): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/GetActionItemSearchListForUpdate?orderBy=' + orderBy;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, searchModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n DeleteActionTypes(TokenKey: string, actionTypeId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/DeleteActionTypes/' + actionTypeId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n DeleteAction(TokenKey: string, actionId: any, recurranceId: number, userId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/DeleteAction/' + actionId + '/' + userId + '/' + recurranceId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n ActionGetById(TokenKey: string, actionId: any): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/ActionGetById/' + actionId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(URL, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n EditActionItem(TokenKey: string, addNewActionModel: AddNewActionModel): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/EditActionItem';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, addNewActionModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n DownloadDocument(TokenKey: string, docPath: any): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Inteserra360/DownloadDocument';\r\n //const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._httpdownload.post(this.AppUrl + data, docPath, {\r\n method: RequestMethod.Post, responseType: ResponseContentType.Blob,\r\n headers: new Headers({ 'Token': TokenKey })\r\n }).pipe(\r\n map(\r\n (res) => {\r\n return new Blob([res.blob()], { type: 'application/octet-stream' });\r\n }));\r\n }\r\n\r\n ActionItemForReminderDashbaord(TokenKey: string, orderBy, searchModel: ActionCalendarSearch): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/ActionItem/ActionItemForReminderDashbaord?orderBy=' + orderBy;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, searchModel, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n\r\n GetActionItemSearchListForAllUpdates(TokenKey: string, orderBy: string, searchModel: ActionCalendarSearch): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/GetActionItemSearchListForAllUpdates?orderBy=' + orderBy;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, searchModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n\r\n GetActionItemSearchListForAllUpdatesV2(TokenKey: string, orderBy: string, searchModel: ActionCalendarSearch): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/v2/GetActionItemSearchListForAllUpdates?orderBy=' + orderBy;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, searchModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetActionItemSearchListForUpdateV2(TokenKey: string, orderBy: string, searchModel: ActionCalendarSearch): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ActionItem/v2/GetActionItemSearchListForUpdate?orderBy=' + orderBy;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, searchModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n}\r\n","\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AdminByPassClientLoginService {\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n AddNewUserForAdmin(adminUserId: any, userId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/AdminByPassClientLogin/AddNewUserForAdmin/' + adminUserId + '/' + userId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json' }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetAdminByPassUserLoginData(TokenKey: string, userId: string): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/AdminByPassClientLogin/GetAdminByPassUserLoginData/' + userId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + data, data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Http, Response } from '@angular/http';\r\nimport { environment } from '../environments/environment';\r\nimport { IAppConfig } from '../models/app-config.model';\r\n\r\n@Injectable()\r\nexport class AppConfig {\r\n\r\n static settings: IAppConfig;\r\n\r\n constructor(private http: Http) { }\r\n\r\n load() { \r\n const jsonFile = `${environment.clientAppBaseURL}/assets/config/config.${environment.name}.json`; \r\n return new Promise((resolve, reject) => {\r\n this.http.get(jsonFile).toPromise().then((response: Response) => {\r\n AppConfig.settings = response.json();\r\n resolve();\r\n }).catch((response: any) => {\r\n reject('Could not load file');\r\n });\r\n });\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { throwError as observableThrowError, Observable, Subscriber } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { ApplicationActivityModel } from 'src/Models/applicationActivityModel';\r\nimport { filterModel } from 'src/Models/filterModel';\r\nimport { IpService } from './ip.service';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ApplicationActivityService {\r\n\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n ApplicationActivityAdd(TokenKey: string, data: ApplicationActivityModel): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ApplicationActivity/ApplicationActivityAdd';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n ApplicationActivityGet(TokenKey: string, data: filterModel): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ApplicationActivity/ApplicationActivityGet';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n ApplicationActivityExports(TokenKey: string, data: filterModel): Observable {\r\n this.setAPIUrl();\r\n let URL = this.AppUrl + 'api/ApplicationActivity/ApplicationActivityExports';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BypassService {\r\n\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) { \r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n checkByPassAuthentication(userName: any, hashKey: any): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/ByPass/checkByPassAuthentication/' + userName + '/' + hashKey;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json' }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CarrierCategoryService {\r\n\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) { \r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n GetCarrierCategoryByPage(TokenKey: any, filterModel: any): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/ActionItem/GetCarrierCategoryByPage';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + data, filterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n CarrierCategoryAdminDelete(TokenKey: any, CarrierCatId: any): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/ActionItem/CarrierCategoryAdminDelete/' + CarrierCatId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetCarrierCategorySearchById(TokenKey: any, CarrierCatId: any): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/ActionItem/GetCarrierCategorySearchById/' + CarrierCatId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n CarrierCategoryAddUpdate(TokenKey: any, model: any): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/ActionItem/CarrierCategoryAddUpdate';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + data, model, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { catchError } from 'rxjs/operators';\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CountryMasterService {\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n getCountry(TokenKey: string): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/CountryMaster/GetCountryMaster/';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EmailLoginService {\r\n\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n DecryptEmailKey(filterModel: any): Observable {\r\n this.setAPIUrl();\r\n let url = this.AppUrl + 'api/EmailLogin/DecryptEmailKey';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json' }) };\r\n return this._http.post(url, filterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { HistoryModel } from '../Models/historyModel';\r\nimport { filterModel } from 'src/Models/filterModel';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HistoryService {\r\n AppUrl: string = \"\";\r\n filterModel = new filterModel();\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n GetIPRHistory(TokenKey: string, PageNumber: string, PageSize: string, WhereCondition: string, OrderBy: string, keywordFilter: string): Observable {\r\n this.setAPIUrl();\r\n this.filterModel.pageNumber = PageNumber;\r\n this.filterModel.pageSize = PageSize;\r\n this.filterModel.whereCondition = WhereCondition;\r\n this.filterModel.orderBy = OrderBy;\r\n this.filterModel.keywordFilter = keywordFilter;\r\n\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/GetIPRHistoryFilter';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, this.filterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n \r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Http, Response, Headers, URLSearchParams, RequestOptions, ResponseContentType } from '@angular/http';\r\nimport { map, catchError } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class htmlToPdf {\r\n AppUrl: string = \"\";\r\n constructor(private _http: Http, private http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n CreatePDF(TokenKey: string, HTMLContent: string, Orientation: any,productId:number,name:string=\"\"): Observable { \r\n this.setAPIUrl();\r\n let data = HTMLContent;\r\n this.AppUrl = this.AppUrl + 'api/MyPdf/GetPDF';\r\n let input: FormData = new FormData();\r\n input.append('HTMLContent', HTMLContent);\r\n input.append('Orientation', Orientation);\r\n input.append('Token', TokenKey);\r\n input.append('productId', productId.toString());\r\n input.append('statename', name);\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this.http.post(this.AppUrl, input)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n DeletePDF(TokenKey: string, FileName: string): Observable { \r\n this.setAPIUrl(); \r\n this.AppUrl = this.AppUrl + 'api/MyPdf/DeletePDFFile';\r\n let input: FormData = new FormData();\r\n input.append('FileName', FileName); \r\n input.append('Token', TokenKey);\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this.http.post(this.AppUrl, input)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n public downloadPdf(url): Observable {\r\n return this._http.get(url, { responseType: ResponseContentType.Blob }).pipe(map(\r\n (res) => {\r\n return new Blob([res.blob()], { type: 'application/pdf' });\r\n }));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Http } from '@angular/http';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { throwError as observableThrowError } from 'rxjs';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IpService {\r\n\r\n constructor(private http: Http) { }\r\n public getIPAddress() {\r\n return this.http.get(\"https://jsonip.com\")\r\n .pipe(catchError(this.handleError));;\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IprUpdateImportService {\r\n\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n IPRImportUpdates(iprUpdates, fupdImportUpdates: File, TokenKey: string): Observable {\r\n let formData = new FormData();\r\n formData.append('file', fupdImportUpdates, fupdImportUpdates.name);\r\n formData.append('createdBy', iprUpdates.value[\"createdBy\"]); \r\n const httpOptions = { headers: new HttpHeaders({ 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/IPRUpdates/IPRImportUpdates', formData, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { IPRUpdatesModel } from '../Models/IPRUpdatesModel';\r\nimport { carrierFilterModelV2, filterModel } from 'src/Models/filterModel';\r\nimport { carrierFilterModel } from 'src/Models/filterModel';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class iprupdatesService {\r\n AppUrl: string = \"\";\r\n filterModel = new filterModel();\r\n carrierFilterModel = new carrierFilterModel();\r\n carrierFilterModelV2 = new carrierFilterModelV2();\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n GetUpdatesFilterByPage(TokenKey: string, PageNumber: string, PageSize: string, WhereCondition: string, OrderBy: string, keywordFilter: string): Observable {\r\n this.setAPIUrl();\r\n this.filterModel.pageNumber = PageNumber;\r\n this.filterModel.pageSize = PageSize;\r\n this.filterModel.whereCondition = WhereCondition;\r\n this.filterModel.orderBy = OrderBy;\r\n this.filterModel.keywordFilter = keywordFilter;\r\n\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/GetIPRUpdatesFilter';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, this.filterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetIPRUpdatesFindByCarrierID(TokenKey: string, carrierID: number, productId: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/GetIPRUpdatesFindByCarrierID/' + carrierID + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n ActiveInactiveIPRUpdates(TokenKey: string, updateId: string, isactive: string): Observable {\r\n let data = '/' + updateId;\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/ActiveInActiveUpdate' + data + '/' + isactive;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetIPRUpdateHistoryByCarrierID(TokenKey: string, updateId: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/GetIPRUpdateHistoryByCarrierID/' + updateId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n addupdateupdates(user, TokenKey: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/IPRUpdates/AddUpdateIPRUpdates', user, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetCarriers(TokenKey: string, FromDate: string, ToDate: string, UpdateType: string, OrderBy: string, keywordFilter: string, userID: number, filterFavourite: number, carrierFilter: string): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModel.fromDate = FromDate;\r\n this.carrierFilterModel.todate = ToDate;\r\n this.carrierFilterModel.updateStatus = UpdateType;\r\n this.carrierFilterModel.orderBy = OrderBy;\r\n this.carrierFilterModel.keywordFilter = keywordFilter;\r\n this.carrierFilterModel.userID = userID;\r\n this.carrierFilterModel.filterFavourite = filterFavourite;\r\n this.carrierFilterModel.carrierFilter = carrierFilter;\r\n\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/GetIPRCarriersFilter';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, this.carrierFilterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetCarriersV2(TokenKey: string, FromDate: string, ToDate: string, UpdateType: string, OrderBy: string, keywordFilter: string, userID: number, filterFavourite: number, carrierFilter: string,pageNumber:number,pageSize:number): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModelV2.fromDate = FromDate;\r\n this.carrierFilterModelV2.todate = ToDate;\r\n this.carrierFilterModelV2.updateStatus = UpdateType;\r\n this.carrierFilterModelV2.orderBy = OrderBy;\r\n this.carrierFilterModelV2.keywordFilter = keywordFilter;\r\n this.carrierFilterModelV2.userID = userID;\r\n this.carrierFilterModelV2.filterFavourite = filterFavourite;\r\n this.carrierFilterModelV2.carrierFilter = carrierFilter;\r\n this.carrierFilterModelV2.pageNumber = pageNumber;\r\n this.carrierFilterModelV2.pageSize = pageSize;\r\n\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/v2/GetIPRCarriersFilter';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, this.carrierFilterModelV2, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetIPRUpdates(TokenKey: string, FromDate: string, ToDate: string, UpdateType: string, OrderBy: string, keywordFilter: string, userID: number, filterFavourite: number, carrierFilter: string): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModel.fromDate = FromDate;\r\n this.carrierFilterModel.todate = ToDate;\r\n this.carrierFilterModel.updateStatus = UpdateType;\r\n this.carrierFilterModel.orderBy = OrderBy;\r\n this.carrierFilterModel.keywordFilter = keywordFilter;\r\n this.carrierFilterModel.userID = userID;\r\n this.carrierFilterModel.filterFavourite = filterFavourite;\r\n this.carrierFilterModel.carrierFilter = carrierFilter;\r\n\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/GetIPRUpdatesList';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, this.carrierFilterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetIPRUpdatesV2(TokenKey: string, FromDate: string, ToDate: string, UpdateType: string, OrderBy: string, keywordFilter: string, userID: number, filterFavourite: number, carrierFilter: string,pageNumber:number,pageSize:number): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModelV2.fromDate = FromDate;\r\n this.carrierFilterModelV2.todate = ToDate;\r\n this.carrierFilterModelV2.updateStatus = UpdateType;\r\n this.carrierFilterModelV2.orderBy = OrderBy;\r\n this.carrierFilterModelV2.keywordFilter = keywordFilter;\r\n this.carrierFilterModelV2.userID = userID;\r\n this.carrierFilterModelV2.filterFavourite = filterFavourite;\r\n this.carrierFilterModelV2.carrierFilter = carrierFilter;\r\n this.carrierFilterModelV2.pageNumber = pageNumber;\r\n this.carrierFilterModelV2.pageSize = pageSize;\r\n\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/V2/GetIPRUpdatesList';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, this.carrierFilterModelV2, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n ClientStateFavouriteAdd(TokenKey: string, userId: number, stateIds: string, isFavourite: number): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModel.userID = userId;\r\n this.carrierFilterModel.keywordFilter = stateIds;\r\n this.carrierFilterModel.Status = isFavourite;\r\n\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/IPRUpdates/ClientStateFavouriteAdd', this.carrierFilterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n ClientCarrierFavouriteAdd(TokenKey: string, userId: number, carrierId: number, isFavourite: number): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModel.userID = userId;\r\n this.carrierFilterModel.ID = carrierId;\r\n this.carrierFilterModel.Status = isFavourite;\r\n\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/IPRUpdates/ClientCarrierFavouriteAdd', this.carrierFilterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetIPRUpdatesUnread(TokenKey: string, userID: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/GetIPRUpdatesUnreadList/' + userID;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n addNotification(userID: number, updateId: string, TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModel.userID = userID;\r\n this.carrierFilterModel.updateStatus = updateId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/IPRUpdates/AddNotification', this.carrierFilterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetCarrierMergeSuggestionList(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/GetCarrierMergeSuggestionList'\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n GetAllCarriersForMerge(TokenKey: string, CarrierID: number): Observable {\r\n this.setAPIUrl();\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/IPRUpdates/GetAllCarriersForMerge/' + CarrierID;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n MergeCarrier(userID: number, oldCarrierID: number, newCarrierID: number, TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModel.userID = userID;\r\n this.carrierFilterModel.ID = oldCarrierID;\r\n this.carrierFilterModel.newCarrierID = newCarrierID;\r\n\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/IPRUpdates/MergeCarrier', this.carrierFilterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n DiscardCarrierMerge(oldCarrierID: number, newCarrierID: number, TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n this.carrierFilterModel.ID = oldCarrierID;\r\n this.carrierFilterModel.newCarrierID = newCarrierID;\r\n\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/IPRUpdates/DiscardCarrierMerge', this.carrierFilterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetStatesByUserID(TokenKey: any, UserID: any, productId: number): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/IPRUpdates/GetStatesByUserID/' + UserID + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetClientFavorites(TokenKey: any, UserID: any): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/IPRUpdates/UserFavoriteStatesCarriers/' + UserID;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetMatrixStatesByUserID(TokenKey: any, UserID: any, productId: number): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/IPRUpdates/GetMatrixStatesByUserID/' + UserID + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n RemoveMatrixFavoriteByUserID(TokenKey: any, UserID: any, productId: number, DeSelectedFavoriteId: any): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/IPRUpdates/RemoveMatrixFavoriteByUserID/' + UserID + '/' + productId + '/' + DeSelectedFavoriteId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetIPCSMatrixStatesByUserID(TokenKey: any, UserID: any): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/IPRUpdates/GetIPCSMatrixStatesByUserID/' + UserID;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MatrixFundDetailsService {\r\n\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n GetMatrixFindByStateID(TokenKey: string, UserID: string, StateId: any, ProductId: number): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/MatrixFundDetails/GetMatrixFindByStateID/' + UserID + '/' + StateId + '/' + ProductId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetMatrixFundState(TokenKey: any, userId: number, productId: number): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/MatrixFundDetails/GetMatrixFundFindByStateID/' + userId + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n \r\n\r\n GetIPCSMatrixFindByStateID(TokenKey: string, UserID: string, StateId: any): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/MatrixFundDetails/GetIPCSMatrixFindByStateID/' + UserID + '/' + StateId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetIPCSMatrixFundState(TokenKey: any, userId: number): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/MatrixFundDetails/GetIPCSMatrixFundFindByStateID/' + userId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { filterModel } from 'src/Models/filterModel';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MatrixService {\r\n\r\n AppUrl: string = \"\";\r\n filterModel = new filterModel();\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n getMatrix(TokenKey: string, StateID: string, UserID: any, ColumnIndex: any, OrderBy: any, WhereCondition: any, productId: number): Observable {\r\n this.setAPIUrl(); \r\n this.filterModel.stateID = StateID;\r\n this.filterModel.userID = UserID;\r\n this.filterModel.columnIndex = ColumnIndex;\r\n this.filterModel.orderBy = OrderBy;\r\n this.filterModel.whereCondition = WhereCondition;\r\n this.filterModel.productId = productId;\r\n\r\n let URL = this.AppUrl + 'api/Matrix/GetMatrix';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, this.filterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n getState(TokenKey: string, userId: number, productId: number): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Matrix/GetState/' + userId + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n SaveUserPrefrences(TokenKey: string, ListofID: any, UserID: any, productId: number): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Matrix/SaveUserPrefrences/' + ListofID + '/' + UserID + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetfundRefrence(TokenKey: string, StateID: string, AssementCatId: any, LoginUser: any, productId: number): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Matrix/GetfundRefrence/' + StateID + '/' + AssementCatId + '/' + LoginUser + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetIPCSMatrix(TokenKey: string, StateID: string, UserID: any, ColumnIndex: any, OrderBy: any, WhereCondition: any): Observable {\r\n this.setAPIUrl(); \r\n this.filterModel.stateID = StateID;\r\n this.filterModel.userID = UserID;\r\n this.filterModel.columnIndex = ColumnIndex;\r\n this.filterModel.orderBy = OrderBy;\r\n this.filterModel.whereCondition = WhereCondition;\r\n\r\n let URL = this.AppUrl + 'api/Matrix/GetIPCSMatrix';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(URL, this.filterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetIPCSfundRefrence(TokenKey: string, StateID: string, AssementCatId: any, LoginUser: any): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Matrix/GetIPCSfundRefrence/' + StateID + '/' + AssementCatId + '/' + LoginUser;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { matrixfundModel } from '../Models/matrixfundModel';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class matrixfundService {\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n GetMatrixByStateId(TokenKey: string, StateId: string, userID: string, ProductId: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/MatrixFund/GetMatrixByStateId/' + StateId + '/' + userID + '/' + ProductId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetMatrixFundFilterByPage(TokenKey: string, PageNumber: string, PageSize: string, WhereCondition: string, OrderBy: string, keywordFilter: string, productId: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/MatrixFund/GetMatrixFundFilterByPage/' + PageNumber + '/' + PageSize + '/' + WhereCondition + '/' + OrderBy + '/' + keywordFilter + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetAssessmentCategoryAll(TokenKey: string, productId: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/MatrixFund/GetMatrixFundFilterByPage/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n addupdatematrixfund(matrixfund, TokenKey: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/MatrixFund/AddUpdateMatrixFund', matrixfund, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n updatematrixfundDisplayOrder(TokenKey: string, matrixfund): Observable {\r\n let fullAPIPath = this.AppUrl + 'api/MatrixFund/UpdateMatrixFundDisplayOrder';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, matrixfund, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n deletefund(TokenKey: string, matrixfundId: number): Observable {\r\n let data = '/' + matrixfundId;\r\n let fullAPIPath = this.AppUrl + 'api/MatrixFund/DeleteFund' + data;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n activeinactivefund(TokenKey: string, matrixfundId: string, isactive: string): Observable {\r\n let data = '/' + matrixfundId;\r\n let fullAPIPath = this.AppUrl + 'api/MatrixFund/ActiveInActiveFund' + data + '/' + isactive;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n addupdateotherrequirment(user, TokenKey: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/MatrixFund/AddUpdateOtherRequirements', user, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n updateotherrequirmentDisplayOrder(TokenKey: string, matrixfund): Observable {\r\n let fullAPIPath = this.AppUrl + 'api/MatrixFund/UpdateOtherRequirementsDisplayOrder';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, matrixfund, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n deleteotherreq(TokenKey: string, deleteotherreqId: number): Observable {\r\n let data = '/' + deleteotherreqId;\r\n let fullAPIPath = this.AppUrl + 'api/MatrixFund/DeleteOtherRequirements' + data;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ProductsService {\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n GetProductList(TokenKey: any, UserID: any): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Product/GetProducts';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n\r\n}\r\n","import { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { filterModel } from 'src/Models/filterModel';\r\nimport { carrierFilterModel } from 'src/Models/filterModel';\r\nimport { RMDClientFavouriteCarriersModel } from 'src/Models/RMDClientFavouriteCarriersModel';\r\nimport { RMDProviderFilterModel } from 'src/Models/RMDProviderFilterModel';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RmdupdatesService {\r\n\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n GetRMDClientFavouriteCarriers(TokenKey: string, clientId: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/RMDUpdates/GetRMDClientFavouriteCarriers/' + clientId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n RMDClientCarrierFavouriteAddRemove(TokenKey: string, favouriteCarriersModel: RMDClientFavouriteCarriersModel): Observable {\r\n this.setAPIUrl();\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/RMDUpdates/RMDClientCarrierFavouriteAddRemove', favouriteCarriersModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n\r\n GetRMDUpdatesFindByCarrierID(TokenKey: string, carrierID: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/RMDUpdates/GetRMDUpdatesFindByCarrierID/' + carrierID;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetFrontCarrierFilter(TokenKey: string, filterModel: RMDProviderFilterModel): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/RMDUpdates/GetFrontCarrierFilter';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, filterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetFrontCarrierForPDF(TokenKey: string, filterModel: RMDProviderFilterModel): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/RMDUpdates/GetFrontCarrierForPDF';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, filterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n\r\n GetRMDUpdatesUnread(TokenKey: string, filterModel: RMDProviderFilterModel): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/RMDUpdates/GetRMDUpdatesFilterUnread/';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, filterModel, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n GetRMDUpdatesUnreadCount(TokenKey: string, clientId:number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/RMDUpdates/GetRMDUpdatesFilterUnreadCount/'+clientId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n addNotification(TokenKey: string, filterModel: RMDProviderFilterModel): Observable {\r\n this.setAPIUrl();\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/RMDUpdates/AddNotification', filterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StateMasterService {\r\n\r\n AppUrl: string = \"\";\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n getState(TokenKey: string,productId: number): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/StateMaster/GetStateMaster/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetStateMasterFindByClientId(TokenKey: string, ClientID: any, productId : number): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/StateMaster/GetStateMasterFindByClientId/' + ClientID + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetStateMasterFindByPaged(TokenKey: string, PageNumber: any, PageSize: any, WhereCondition: any, OrderBy: any, StateName: any,productId: number): Observable { \r\n this.setAPIUrl();\r\n let data = 'api/StateMaster/GetStateMasterFindByPaged/' + PageNumber + '/' + PageSize + '/' + WhereCondition + '/' + OrderBy + '/' + StateName + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n } \r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport {throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { Response } from '@angular/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { tokenDetailModel } from '../Models/tokenDetailModel';\r\nimport { UserTokenModel } from '../Models/UserTokenModel'\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppConfig } from '../Services/app.config';\r\n\r\n\r\n@Injectable()\r\nexport class TokenService {\r\n apiURL: string = \"\";\r\n userToken = new UserTokenModel();\r\n appModel: any;\r\n \r\n constructor(private http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n sessionStorage.setItem('BaseURL', this.appModel.BaseURL); \r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.apiURL = sessionStorage.getItem(\"BaseURL\") || '';\r\n this.apiURL = this.apiURL + 'api';\r\n }\r\n }\r\n\r\n setTokenCredential() {\r\n this.userToken.ClientID = this.appModel.ClientID;\r\n this.userToken.ClientSecret = this.appModel.ClientSecret;\r\n }\r\n\r\n getAuthentication(): Observable { \r\n this.setTokenCredential();\r\n let fullAPIPath = this.apiURL + '/Token/Authentication';\r\n let formData: FormData = new FormData();\r\n formData.append(\"ClientID\", this.userToken.ClientID);\r\n formData.append(\"ClientSecret\", this.userToken.ClientSecret);\r\n return this.http.post(fullAPIPath, formData)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private extractData(res: Response) {\r\n let body = res.json(); \r\n return body;\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { updatesModel } from '../Models/updatesModel';\r\nimport { filterModel } from 'src/Models/filterModel';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class updatesService {\r\n AppUrl: string = \"\";\r\n filterModel = new filterModel();\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n\r\n GetUpdatesFilterByPage(TokenKey: string, PageNumber: string, PageSize: string, WhereCondition: string, OrderBy: string, keywordFilter: string, productId: number, isActionRequired: boolean, systemUserCondition: string): Observable {\r\n this.setAPIUrl();\r\n this.filterModel.pageNumber = PageNumber;\r\n this.filterModel.pageSize = PageSize;\r\n this.filterModel.whereCondition = WhereCondition;\r\n this.filterModel.orderBy = OrderBy;\r\n this.filterModel.keywordFilter = keywordFilter;\r\n this.filterModel.productId = productId;\r\n this.filterModel.isActionRequired = isActionRequired;\r\n this.filterModel.systemUserCondition = systemUserCondition;\r\n\r\n let fullAPIPath = this.AppUrl + 'api/Updates/GetUpdatesFilterByPage';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, this.filterModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n deleteupdates(TokenKey: string, updateId: number): Observable {\r\n let data = '/' + updateId;\r\n let fullAPIPath = this.AppUrl + 'api/Updates/DeleteUpdate' + data;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n activeinactiveupdates(TokenKey: string, updateId: string, isactive: string): Observable {\r\n let data = '/' + updateId;\r\n let fullAPIPath = this.AppUrl + 'api/Updates/ActiveInActiveUpdate' + data + '/' + isactive;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetMatrixFundbyStateId(TokenKey: string, StateId: string, productId: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/Updates/GetMatrixFundByStateId/' + StateId + \"/\" + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n getFundFields(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Updates/GetFundFieldAll';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n getUpdateCategory(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Updates/GetUpdateCategoryGetAll';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n addupdateupdates(user, TokenKey: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/Updates/AddUpdateUpdates', user, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n getupdatesfindByID(TokenKey: string, UpdateId: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/Updates/GetUpdatesFindByID/' + UpdateId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n //getupdatesfindByUserID(TokenKey: string, Userid: string, PageNumber: string, PageSize: string, WhereCondition: string, OrderBy: string, keywordFilter: string, Unreadonly: string): Observable {\r\n getupdatesfindByUserID(TokenKey: string, parameter): Observable {\r\n this.setAPIUrl();\r\n //let fullAPIPath = this.AppUrl + 'api/Updates/GetUpdatesFindByUserID/' + Userid + '/' + PageNumber + '/' + PageSize + '/' + WhereCondition + '/' + OrderBy + '/' + keywordFilter + '/' + Unreadonly;\r\n let fullAPIPath = this.AppUrl + 'api/Updates/GetUpdatesFindByUserID';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, parameter, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n getupdatesfindByUserIDByCount(TokenKey: string, parameter): Observable {\r\n this.setAPIUrl();\r\n //let fullAPIPath = this.AppUrl + 'api/Updates/GetUpdatesFindByUserID/' + Userid + '/' + PageNumber + '/' + PageSize + '/' + WhereCondition + '/' + OrderBy + '/' + keywordFilter + '/' + Unreadonly;\r\n let fullAPIPath = this.AppUrl + 'api/Updates/GetUpdatesFindByUserIDByCount';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, parameter, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n addNotification(updates, TokenKey: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/Updates/AddNotification', updates, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetClientCompany(TokenKey: string, productId: any, whereCondition: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + 'api/Updates/GetClientCompany/' + productId + '/' + whereCondition, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n // GetUpdateModelCompanyList(TokenKey: string, updateId: string): Observable {\r\n // this.setAPIUrl();\r\n // let fullAPIPath = this.AppUrl + 'api/Updates/GetUpdateModelCompanyList/' + updateId;\r\n // const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n // return this._http.get(fullAPIPath, httpOptions)\r\n // .pipe(catchError(this.handleError));\r\n // }\r\n\r\n getIPCSupdatesfindByUserID(TokenKey: string, parameter): Observable {\r\n this.setAPIUrl();\r\n //let fullAPIPath = this.AppUrl + 'api/Updates/GetUpdatesFindByUserID/' + Userid + '/' + PageNumber + '/' + PageSize + '/' + WhereCondition + '/' + OrderBy + '/' + keywordFilter + '/' + Unreadonly;\r\n let fullAPIPath = this.AppUrl + 'api/Updates/GetIPCSUpdatesFindByUserID';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, parameter, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n AddIIPCSNotification(updates, TokenKey: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/Updates/AddIPCSNotification', updates, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n ActiveinactiveIPCSupdates(TokenKey: string, updateId: string, isactive: string): Observable {\r\n let data = '/' + updateId;\r\n let fullAPIPath = this.AppUrl + 'api/Updates/ActiveInActiveIPCSUpdate' + data + '/' + isactive;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetIPCSupdatesfindByUserIDByCount(TokenKey: string, parameter): Observable {\r\n this.setAPIUrl(); \r\n let fullAPIPath = this.AppUrl + 'api/Updates/GetIPCSUpdatesFindByUserIDByCount';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(fullAPIPath, parameter, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { LoginPasswordModel } from 'src/Models/LoginPasswordModel';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UsersService {\r\n AppUrl: string = \"\";\r\n loginModel = new LoginPasswordModel();\r\n constructor(private _http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n this.setAPIUrl();\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.AppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n }\r\n }\r\n checkUserLogin(TokenKey: string, username: string, password: string): Observable {\r\n this.setAPIUrl();\r\n this.loginModel.username = username;\r\n this.loginModel.password = password;\r\n let data = 'api/Users/CheckUserLogin'; \r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + data, this.loginModel, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n checkAdminUserLogin(TokenKey: string, username: string, password: string): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Users/CheckAdminUserLogin/' + username + '/' + password;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + data, data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetUserFindByUserID(TokenKey: string, UserID: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/Users/GetUserFindByUserID/' + UserID;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n GetStateFindByUserID(TokenKey: string, UserID: number): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/Users/GetStateFindByUserID/' + UserID;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n addupdateuser(user, TokenKey: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/Users/AddUpdateUser', user, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n GetUsers(TokenKey: string, PageNumber: any, PageSize: any, WhereCondition: any, OrderBy: any, keywordFilter: string, loginUser: any,listOfProduct: string, selectedcompany: string): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Users/GetUsers/' + PageNumber + '/' + PageSize + '/' + WhereCondition + '/' + OrderBy + '/' + keywordFilter + '/' + loginUser + '/' + (listOfProduct == \"\" ? \"null\" : listOfProduct) + '/' + (selectedcompany == \"\" ? \"null\" : selectedcompany);\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n updatepassword(user, TokenKey: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + 'api/Users/UpdatePassword', user, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n checkUserbyusernamewithhash(TokenKey: string, username: string, hash: string): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Users/CheckUsernamewithhash/' + username + '/' + hash;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + data, data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n UserLogout(TokenKey: string, UserID: any): Observable {\r\n this.setAPIUrl();\r\n let data = 'api/Users/UserLogout/' + UserID;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.post(this.AppUrl + data, data, httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetCompanyList(TokenKey: string): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/Users/GetClientCompanyList';\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetUsersFindByCompanyId(TokenKey: string, companyId: any, productId: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/Users/GetUsersFindByCompanyId/' + companyId + '/' + productId;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetUsersFindByCompanyIdRemoveLoginUser(TokenKey: string, companyId: any, productId: any, loginUser: any): Observable {\r\n this.setAPIUrl();\r\n let fullAPIPath = this.AppUrl + 'api/Users/GetUsersFindByCompanyIdRemoveLoginUser/' + companyId + '/' + productId + '/' + loginUser;\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(fullAPIPath, httpOptions).pipe(catchError(this.handleError));\r\n }\r\n\r\n GetAdminUserType(TokenKey: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + 'api/Users/GetAdminUserType', httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n GetClientCompanyList(TokenKey: string): Observable {\r\n const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Token': TokenKey }) };\r\n return this._http.get(this.AppUrl + 'api/Users/GetCompanyList', httpOptions)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n console.error(error.message || error);\r\n return observableThrowError(error.status)\r\n }\r\n}\r\n","import { Injectable} from '@angular/core';\r\nimport { TokenService } from '../Services/token.service';\r\nimport { tokenDetailModel } from '../Models/tokenDetailModel';\r\n\r\n@Injectable()\r\nexport class UtilityService {\r\n isSession(): Promise {\r\n if (typeof (Storage) !== 'undefined') {\r\n if (sessionStorage.getItem['User']) {\r\n return Promise.resolve(true);\r\n }\r\n }\r\n return Promise.resolve(false);\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class CheckAuth {\r\n moonLanding: Date;\r\n currentTime: Date;\r\n\r\n constructor(private tokenService: TokenService) {\r\n\r\n }\r\n\r\n GetToken(): void { \r\n this.tokenService.getAuthentication().subscribe(t => { \r\n this.moonLanding = new Date(); \r\n sessionStorage.setItem('tokenValue', t[\"tokenDetail\"].token);\r\n sessionStorage.setItem('tokenExpiryValue', t[\"tokenDetail\"].tokenExpiry);\r\n sessionStorage.setItem('appStartTime', this.moonLanding.toString());\r\n }\r\n );\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) { \r\n if (startDate != null) { \r\n this.currentTime = new Date();\r\n let time = this.currentTime.getTime() - (new Date(startDate).getTime());\r\n time = time / 1000;\r\n time = time / 60;\r\n time = Math.round(Math.abs(time));\r\n if (parseInt(time.toString()) > (parseInt(tokenExpiry) - 2)) {\r\n this.GetToken();\r\n }\r\n }\r\n else {\r\n this.GetToken();\r\n }\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL0lQUi9oaXN0b3J5L2hpc3RvcnkuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit, ElementRef } from '@angular/core';\r\nimport { HistoryModel } from '../../../../Models/historyModel';\r\nimport { HistoryService } from '../../../../Services/history.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { AppConfig } from '../../../../Services/app.config';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-history',\r\n templateUrl: './history.component.html',\r\n styleUrls: ['./history.component.css']\r\n})\r\nexport class HistoryComponent implements OnInit {\r\n userID: number = 0;\r\n totalPageSize: number = 0;\r\n pageSize: number = 0;\r\n pageIndex: number = 0;\r\n orderBy: string = 'null';\r\n keywordFilter: string = '';\r\n whereCondition: string = 'null';\r\n isAscending: boolean; \r\n appModel: any;\r\n statusCode: number = 0;\r\n upDowUpdateFileNameCSS: string = '';\r\n isloading: boolean = false;\r\n tokenKey: string = '';\r\n historyModel: HistoryModel[] = [];\r\n isRecords: boolean = false;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n totalRecordsCount: number = -1; \r\n SelectedTool: string;\r\n constructor(private historyService: HistoryService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth\r\n , private router: Router) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('AdminUserId');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.titleService.setTitle('IPR History');\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() {\r\n this.movetotop();\r\n this.pageSize = this.appModel.PageSize;\r\n this.totalPageSize = 1;\r\n this.pageIndex = 1;\r\n this.keywordFilter = 'null';\r\n this.whereCondition = 'null';\r\n this.orderBy = 'IL.CreatedDate DESC';\r\n this.GetIPRHistory();\r\n }\r\n GetIPRHistory(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.historyService.GetIPRHistory(this.tokenKey, this.pageIndex.toString(), this.pageSize.toString(), this.whereCondition, this.orderBy, this.keywordFilter).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.historyModel = data[\"history\"];\r\n if (this.historyModel.length > 0) {\r\n this.isRecords = true;\r\n this.totalPageSize = parseInt(this.historyModel[0].totalRecordCount);\r\n this.totalRecordsCount = this.historyModel.length; \r\n }\r\n else {\r\n this.totalRecordsCount = 0;\r\n this.isRecords = false;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n sort(sortBy: string) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"ImportFileName\") {\r\n this.upDowUpdateFileNameCSS = 'fa fa-arrow-down'; \r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.orderBy = sortBy;\r\n\r\n if (sortBy === \"ImportFileName\") {\r\n this.upDowUpdateFileNameCSS = 'fa fa-arrow-up'; \r\n }\r\n\r\n }\r\n this.GetIPRHistory();\r\n }\r\n pageChanged($event) {\r\n this.pageIndex = parseInt($event.page);\r\n this.GetIPRHistory();\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20);\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n keywordFilters($event) {\r\n this.pageIndex = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.keywordFilter = $event.target.value;\r\n else\r\n this.keywordFilter = 'null';\r\n\r\n this.GetIPRHistory();\r\n } \r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup, FormBuilder, FormControl } from '@angular/forms';\r\nimport { IprUpdateImportService } from '../../../../Services/ipr-update-import.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-update-import',\r\n templateUrl: './update-import.component.html', \r\n styles: [`\r\n .popover {color: #000;max-width: 100%;}\r\n .fileupload {height:auto !important;}\r\n .info {margin-top:25px;}\r\n .importerror{margin-top: 50px;border: 1px solid #0039BF;padding: 12px;}\r\n .importerror b{color:#949494;}\r\n `]\r\n})\r\nexport class UpdateImportComponent implements OnInit {\r\n fileToUpload: File = null;\r\n updateForm: FormGroup;\r\n loginuserID: number = 0;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n tokenKey: string = '';\r\n SelectedTool: string;\r\n ImportDisable: string = '';\r\n ImportError: string = '';\r\n constructor(private _service: IprUpdateImportService, private _fb: FormBuilder, private toastr: ToastrService, private router: Router) {\r\n this.loginuserID = +sessionStorage.getItem('AdminUserId');\r\n this.updateForm = this._fb.group({\r\n createdBy: this.loginuserID,\r\n fupdImportUpdates: null\r\n });\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n }\r\n ngOnInit() {\r\n }\r\n public uploadFile = (files) => {\r\n if (files.length === 0) {\r\n return;\r\n }\r\n let fileToUpload = files[0];\r\n const formData = new FormData();\r\n formData.append('file', fileToUpload, fileToUpload.name);\r\n }\r\n\r\n SaveIPRUpdates(updateForm: any, files) {\r\n this.ImportError = '';\r\n updateForm.value[\"createdBy\"] = this.loginuserID;\r\n if (files.length === 0) {\r\n this.showMessage('Please select file to import', 'Import Updates', 'error');\r\n return;\r\n }\r\n\r\n if (!this.ValidateCSVExtension(files[0].name)) {\r\n this.showMessage('Please upload .CSV file only', 'Import Updates', 'error');\r\n return;\r\n }\r\n this.ImportDisable = 'disabled';\r\n this._service.IPRImportUpdates(this.updateForm, files[0], this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n this.showMessage('Updates imported successfully', 'Import Updates', 'success');\r\n this.unblockDocument();\r\n this.ImportDisable = '';\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/updates']);\r\n }\r\n else if (data.status == 'Failure') {\r\n this.ImportError = data.message; \r\n this.unblockDocument();\r\n this.ImportDisable = '';\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n this.ImportDisable = '';\r\n });\r\n }\r\n cancelupdates() {\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/updates']);\r\n }\r\n ValidateCSVExtension(FileName) {\r\n var allowedFiles = [\".csv\"];\r\n var regex = new RegExp(\"([a-zA-Z0-9\\s_() \\\\.\\-:])+(\" + allowedFiles.join('|') + \")$\"); \r\n if (!regex.test(FileName.toLowerCase())) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n}\r\n","export default \"\\r\\n.ehslabelscoll label {\\r\\n display: block;\\r\\n padding-bottom: 5px;\\r\\n font-weight: normal;\\r\\n}\\r\\n\\r\\n.ehslabelscoll input {\\r\\n margin-right: 3px;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #0039BF;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.statescroll {\\r\\n height:500px;\\r\\n overflow-x:hidden;\\r\\n overflow-y:auto;\\r\\n border:1px solid #e0e0e0;\\r\\n padding-top:10px;\\r\\n}\\r\\n\\r\\n.text-center {\\r\\n text-align: center\\r\\n}\\r\\n\\r\\n.lightpink {\\r\\n color: #f5898e;\\r\\n}\\r\\n\\r\\n.gray {\\r\\n color: #7F7F7F;\\r\\n}\\r\\n\\r\\n.lightblue {\\r\\n color: #0039BF;\\r\\n}\\r\\n\\r\\n.switch {\\r\\n position: relative;\\r\\n display: inline-block;\\r\\n width: 60px;\\r\\n height: 34px;\\r\\n}\\r\\n\\r\\n.switch input {\\r\\n opacity: 0;\\r\\n width: 0;\\r\\n height: 0;\\r\\n }\\r\\n\\r\\n.slider {\\r\\n position: absolute;\\r\\n cursor: pointer;\\r\\n top: 0;\\r\\n left: 0;\\r\\n right: 0;\\r\\n bottom: 0;\\r\\n background-color: #ccc;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n}\\r\\n\\r\\n.slider:before {\\r\\n position: absolute;\\r\\n content: \\\"\\\";\\r\\n height: 26px;\\r\\n width: 26px;\\r\\n left: 4px;\\r\\n bottom: 4px;\\r\\n background-color: white;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n\\r\\ninput:checked + .slider {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\ninput:focus + .slider {\\r\\n box-shadow: 0 0 1px #0039BF;\\r\\n}\\r\\n\\r\\ninput:checked + .slider:before {\\r\\n -webkit-transform: translateX(26px);\\r\\n transform: translateX(26px);\\r\\n}\\r\\n\\r\\n/* Rounded sliders */\\r\\n\\r\\n.slider.round {\\r\\n border-radius: 34px;\\r\\n}\\r\\n\\r\\n.slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vSVBSL3VwZGF0ZXMvbWFuYWdldXBkYXRlLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBO0VBQ0UsY0FBYztFQUNkLG1CQUFtQjtFQUNuQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsV0FBVztBQUNiOztBQUdBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0FBQ2I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsV0FBVztBQUNiOztBQUNBO0VBQ0UsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixlQUFlO0VBQ2Ysd0JBQXdCO0VBQ3hCLGdCQUFnQjtBQUNsQjs7QUFHQTtFQUNFO0FBQ0Y7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUU7SUFDRSxVQUFVO0lBQ1YsUUFBUTtJQUNSLFNBQVM7RUFDWDs7QUFFRjtFQUNFLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsTUFBTTtFQUNOLE9BQU87RUFDUCxRQUFRO0VBQ1IsU0FBUztFQUNULHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsZUFBZTtBQUNqQjs7QUFFRTtJQUNFLGtCQUFrQjtJQUNsQixXQUFXO0lBQ1gsWUFBWTtJQUNaLFdBQVc7SUFDWCxTQUFTO0lBQ1QsV0FBVztJQUNYLHVCQUF1QjtJQUN2Qix1QkFBdUI7SUFDdkIsZUFBZTtFQUNqQjs7QUFFRjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLG1DQUFtQztFQUVuQywyQkFBMkI7QUFDN0I7O0FBRUEsb0JBQW9COztBQUNwQjtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFRTtJQUNFLGtCQUFrQjtFQUNwQiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL0lQUi91cGRhdGVzL21hbmFnZXVwZGF0ZS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbi5laHNsYWJlbHNjb2xsIGxhYmVsIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi5laHNsYWJlbHNjb2xsIGlucHV0IHtcclxuICBtYXJnaW4tcmlnaHQ6IDNweDtcclxufVxyXG5cclxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbn1cclxuXHJcbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRjtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuXHJcbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRibHVlOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRjtcclxufVxyXG5cclxuLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRibHVlOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRjtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbC1saWdodHBpbms6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjU4OThlO1xyXG59XHJcblxyXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbC1saWdodHBpbms6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjU4OThlO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLWdyYXk6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0Y3RjdGO1xyXG59XHJcblxyXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbC1ncmF5OmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdGN0Y3RjtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG4uc3RhdGVzY3JvbGwge1xyXG4gIGhlaWdodDo1MDBweDtcclxuICBvdmVyZmxvdy14OmhpZGRlbjtcclxuICBvdmVyZmxvdy15OmF1dG87XHJcbiAgYm9yZGVyOjFweCBzb2xpZCAjZTBlMGUwO1xyXG4gIHBhZGRpbmctdG9wOjEwcHg7XHJcbn1cclxuXHJcblxyXG4udGV4dC1jZW50ZXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlclxyXG59XHJcblxyXG4ubGlnaHRwaW5rIHtcclxuICBjb2xvcjogI2Y1ODk4ZTtcclxufVxyXG5cclxuLmdyYXkge1xyXG4gIGNvbG9yOiAjN0Y3RjdGO1xyXG59XHJcblxyXG4ubGlnaHRibHVlIHtcclxuICBjb2xvcjogIzAwMzlCRjtcclxufVxyXG4uc3dpdGNoIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiA2MHB4O1xyXG4gIGhlaWdodDogMzRweDtcclxufVxyXG5cclxuICAuc3dpdGNoIGlucHV0IHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICB9XHJcblxyXG4uc2xpZGVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gIHRyYW5zaXRpb246IC40cztcclxufVxyXG5cclxuICAuc2xpZGVyOmJlZm9yZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgaGVpZ2h0OiAyNnB4O1xyXG4gICAgd2lkdGg6IDI2cHg7XHJcbiAgICBsZWZ0OiA0cHg7XHJcbiAgICBib3R0b206IDRweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgICB0cmFuc2l0aW9uOiAuNHM7XHJcbiAgfVxyXG5cclxuaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbn1cclxuXHJcbmlucHV0OmZvY3VzICsgLnNsaWRlciB7XHJcbiAgYm94LXNoYWRvdzogMCAwIDFweCAjMDAzOUJGO1xyXG59XHJcblxyXG5pbnB1dDpjaGVja2VkICsgLnNsaWRlcjpiZWZvcmUge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG59XHJcblxyXG4vKiBSb3VuZGVkIHNsaWRlcnMgKi9cclxuLnNsaWRlci5yb3VuZCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMzRweDtcclxufVxyXG5cclxuICAuc2xpZGVyLnJvdW5kOmJlZm9yZSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgfVxyXG4iXX0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder } from '@angular/forms';\r\nimport { AppConfig } from '../../../../Services/app.config';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { fieldModel } from '../../../../Models/fieldModel';\r\nimport { Router, Params, ActivatedRoute } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { IPRUpdatesModel } from '../../../../Models/IPRUpdatesModel';\r\nimport { iprupdatesService } from '../../../../Services/iprupdatesService';\r\nimport { ToolEnum } from 'src/Models/Common';\r\n\r\n@Component({\r\n selector: 'app-manageupdate',\r\n templateUrl: './manageupdate.component.html',\r\n styleUrls: ['./manageupdate.component.css']\r\n})\r\nexport class ManageIPRUpdateComponent implements OnInit {\r\n updateForm: FormGroup;\r\n userID: number = 0;\r\n appModel: any;\r\n tokenKey: string = '';\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n statusCode: number = 0;\r\n stateFilter: string = '';\r\n fieldModel: fieldModel[] = [];\r\n listOfActiveStatesCount: number = 0;\r\n listOfDeActiveStatesCount: number = 0;\r\n listOfNotRegisteredStatesCount: number = 0;\r\n\r\n iPRUpdatesModel: IPRUpdatesModel = {\r\n carrierId: 0,\r\n businessName: '',\r\n businessAddress: '',\r\n previousName: '',\r\n regContactName: '',\r\n regContactTitle: '',\r\n regContantAddress: '',\r\n regContactTelephone: '',\r\n regContactEmailId: '',\r\n rccContactName: '',\r\n rccContactTitle: '',\r\n rccContactAddress: '',\r\n rccContactTelephone: '',\r\n rccContactEmail: '',\r\n rccContactDepartment: '',\r\n listOfActiveStates: [],\r\n listOfDeActiveStates: [],\r\n listOfNotRegisteredStates: []\r\n };\r\n selectedActiveStatesAll: any;\r\n selectedDeActiveStatesAll: any;\r\n carrierId: number = 0;\r\n isloading: boolean = false;\r\n isfieldenable: boolean = false;\r\n SelectedTool: string;\r\n productId : number;\r\n\r\n constructor(private _fb: FormBuilder, private checkAuth: CheckAuth\r\n , private toastr: ToastrService, private iprupdatesService: iprupdatesService\r\n , private router: Router, private titleService: Title\r\n , private activedRoute: ActivatedRoute) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('AdminUserId');\r\n this.updateForm = this._fb.group({\r\n carrierId: 0,\r\n businessName: [''],\r\n businessAddress: [''],\r\n previousName: [''],\r\n regContactName: [''],\r\n regContactTitle: [''],\r\n regContantAddress: [''],\r\n regContactTelephone: [''],\r\n regContactEmailId: [''],\r\n rccContactName: [''],\r\n rccContactTitle: [''],\r\n rccContactAddress: [''],\r\n rccContactTelephone: [''],\r\n rccContactEmail: [''],\r\n rccContactDepartment: [''],\r\n isActive: [''],\r\n ActiveStates: [''],\r\n DeActiveStates: [''],\r\n NotRegisteredStates:[''],\r\n createdBy: this.userID,\r\n modifiedBy: this.userID\r\n })\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n this.titleService.setTitle('Manage Update');\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() {\r\n this.movetotop();\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this.carrierId = params['id'];\r\n this.GetIPRUpdates();\r\n }\r\n } \r\n });\r\n }\r\n GetIPRUpdates(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetIPRUpdatesFindByCarrierID(this.tokenKey, this.carrierId, this.productId).subscribe(\r\n data => {\r\n this.iPRUpdatesModel = data[\"updates\"];\r\n this.updateForm.setValue({\r\n 'carrierId': this.iPRUpdatesModel[0].carrierId,\r\n 'businessName': this.iPRUpdatesModel[0].businessName,\r\n 'businessAddress': this.iPRUpdatesModel[0].businessAddress,\r\n 'previousName': this.iPRUpdatesModel[0].previousName,\r\n 'regContactName': this.iPRUpdatesModel[0].regContactName,\r\n 'regContactTitle': this.iPRUpdatesModel[0].regContactTitle,\r\n 'regContantAddress': this.iPRUpdatesModel[0].regContantAddress,\r\n 'regContactTelephone': this.iPRUpdatesModel[0].regContactTelephone,\r\n 'regContactEmailId': this.iPRUpdatesModel[0].regContactEmailId,\r\n 'rccContactName': this.iPRUpdatesModel[0].rccContactName,\r\n 'rccContactTitle': this.iPRUpdatesModel[0].rccContactTitle,\r\n 'rccContactAddress': this.iPRUpdatesModel[0].rccContactAddress,\r\n 'rccContactTelephone': this.iPRUpdatesModel[0].rccContactTelephone,\r\n 'rccContactEmail': this.iPRUpdatesModel[0].rccContactEmail,\r\n 'rccContactDepartment': this.iPRUpdatesModel[0].rccContactDepartment,\r\n 'isActive': this.iPRUpdatesModel[0].isActive,\r\n 'ActiveStates': '',\r\n 'DeActiveStates': '',\r\n 'NotRegisteredStates': '',\r\n 'createdBy': this.userID,\r\n 'modifiedBy': this.userID\r\n });\r\n this.iPRUpdatesModel.listOfActiveStates = data[\"updates\"][0].listOfActiveStates;\r\n this.iPRUpdatesModel.listOfDeActiveStates = data[\"updates\"][0].listOfDeActiveStates;\r\n this.iPRUpdatesModel.listOfNotRegisteredStates = data[\"updates\"][0].listOfNotRegisteredStates;\r\n\r\n let objNotRegisteredState = this.iPRUpdatesModel.listOfNotRegisteredStates.filter((item) => item.isSelected == true);\r\n if (objNotRegisteredState.length > 0) {\r\n for (let obj of objNotRegisteredState) {\r\n this.iPRUpdatesModel.listOfDeActiveStates.filter(item => item.stateId == obj.stateId)[0].isActive = 'false';\r\n }\r\n }\r\n this.unblockDocument();\r\n this.CalculateState();\r\n this.isloading = false;\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.unblockDocument();\r\n this.isloading = false;\r\n }\r\n );\r\n }\r\n saveupdates(updateForm: any) {\r\n if (updateForm.value[\"businessName\"] == null || updateForm.value[\"businessName\"] == undefined || updateForm.value[\"businessName\"] == \"\") {\r\n this.showMessage('Please select Business Name.', 'Required', 'error');\r\n return;\r\n }\r\n if ((updateForm.value[\"businessAddress\"] == null || updateForm.value[\"businessAddress\"] == undefined || updateForm.value[\"businessAddress\"] == \"\")) {\r\n this.showMessage('Please enter Business Address.', 'Required', 'error');\r\n return;\r\n }\r\n if ((updateForm.value[\"rccContactEmail\"] != null || updateForm.value[\"rccContactEmail\"] != \"\")) {\r\n if (!this.isValidMailFormat(updateForm.value[\"rccContactEmail\"])) {\r\n this.showMessage('Please provide a valid Rural Call Completion Contact Email', 'Required', 'error'); \r\n return;\r\n }\r\n }\r\n if ((updateForm.value[\"regContactEmailId\"] != null || updateForm.value[\"regContactEmailId\"] != \"\")) {\r\n if (!this.isValidMailFormat(updateForm.value[\"regContactEmailId\"])) {\r\n this.showMessage('Please provide a valid Regulatory Contact Email', 'Required', 'error');\r\n return;\r\n }\r\n }\r\n this.blockDocument();\r\n updateForm.value[\"carrierId\"] = this.carrierId;\r\n let msg = 'Updated';\r\n updateForm.value[\"ActiveStates\"] = this.iPRUpdatesModel.listOfActiveStates.filter(i => i.isSelected == true).map(i => i.shortName).join(',');\r\n updateForm.value[\"DeActiveStates\"] = this.iPRUpdatesModel.listOfDeActiveStates.filter(i => i.isSelected == true).map(i => i.shortName).join(',');\r\n updateForm.value[\"NotRegisteredStates\"] = this.iPRUpdatesModel.listOfNotRegisteredStates.filter(i => i.isSelected == true).map(i => i.stateId).join(',');\r\n \r\n this.iprupdatesService.addupdateupdates(this.updateForm.value, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n this.showMessage(msg + ' successfully', msg, 'success');\r\n this.unblockDocument();\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/updates']);\r\n }\r\n else {\r\n if (data.message == 'duplicate') {\r\n this.showMessage('Duplicate Business Name not allowed.', 'Duplicate', 'error');\r\n this.unblockDocument();\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n });\r\n }\r\n UpdateactiveState(state: any) {\r\n let id = state.stateId;\r\n if (state.isSelected == true)\r\n {\r\n let objDeActiveState = this.iPRUpdatesModel.listOfDeActiveStates.filter((item) => item.stateId == id);\r\n if (objDeActiveState.length == 1) {\r\n objDeActiveState[0].isSelected = false;\r\n }\r\n\r\n let objNotRegisteredState = this.iPRUpdatesModel.listOfNotRegisteredStates.filter((item) => item.stateId == id);\r\n if (objNotRegisteredState.length == 1) {\r\n objNotRegisteredState[0].isSelected = false;\r\n }\r\n } else {\r\n let objDeActiveState = this.iPRUpdatesModel.listOfDeActiveStates.filter((item) => item.stateId == id);\r\n if (objDeActiveState.length == 1) {\r\n objDeActiveState[0].isSelected = true;\r\n }\r\n }\r\n this.CalculateState();\r\n }\r\n UpdatedeactiveState(state: any) {\r\n let id = state.stateId;\r\n if (state.isSelected == true) {\r\n let objNotRegisteredState = this.iPRUpdatesModel.listOfNotRegisteredStates.filter((item) => item.stateId == id && item.isSelected == true);\r\n if (objNotRegisteredState.length == 1) { \r\n objNotRegisteredState[0].isSelected = false;\r\n }\r\n let objActiveState = this.iPRUpdatesModel.listOfActiveStates.filter((item) => item.stateId == id);\r\n if (objActiveState.length == 1) {\r\n objActiveState[0].isSelected = false;\r\n }\r\n }\r\n this.CalculateState();\r\n }\r\n UpdateNotRegisteredState(state: any) {\r\n let id = state.stateId;\r\n if (state.isSelected == true) {\r\n let objActiveState = this.iPRUpdatesModel.listOfActiveStates.filter((item) => item.stateId == id);\r\n if (objActiveState.length == 1) {\r\n objActiveState[0].isSelected = false;\r\n }\r\n let objDeActiveState = this.iPRUpdatesModel.listOfDeActiveStates.filter((item) => item.stateId == id);\r\n if (objDeActiveState.length == 1) {\r\n objDeActiveState[0].isSelected = false;\r\n }\r\n }\r\n this.CalculateState();\r\n }\r\n CalculateState() {\r\n this.listOfActiveStatesCount = this.iPRUpdatesModel.listOfActiveStates.filter((item) => item.isSelected === true).length;\r\n this.listOfDeActiveStatesCount = this.iPRUpdatesModel.listOfDeActiveStates.filter((item) => item.isSelected === true).length;\r\n this.listOfNotRegisteredStatesCount = this.iPRUpdatesModel.listOfNotRegisteredStates.filter((item) => item.isSelected === true).length;\r\n }\r\n isValidMailFormat(email: string) {\r\n let EMAIL_REGEXP = /^[a-z0-9!#$%&'*+\\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;\r\n\r\n if (email != \"\" && (email.length <= 5 || !EMAIL_REGEXP.test(email))) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20);\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n cancelupdates() {\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/updates']);\r\n }\r\n}\r\n","export default \".lightblue {\\r\\n color: #0039BF;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.lightpink {\\r\\n color: #f5898e;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.gray {\\r\\n color: #7F7F7F;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.modifydetails {\\r\\n height: 34px;\\r\\n line-height: 65px;\\r\\n text-align: right;\\r\\n font-weight: bold;\\r\\n}\\r\\n\\r\\n.activeupdatecount {\\r\\n color: #0039BF;\\r\\n font-weight: bold;\\r\\n}\\r\\n\\r\\n.center {\\r\\n text-align: center;\\r\\n}\\r\\n\\r\\n.mergecount {\\r\\n cursor: pointer;\\r\\n line-height: 32px;\\r\\n font-weight: bold\\r\\n}\\r\\n\\r\\n.section {\\r\\n padding-top: 10px;\\r\\n border-bottom: 1px solid #0039BF;\\r\\n}\\r\\n\\r\\n.section td {\\r\\n padding-bottom: 20px;\\r\\n padding-right: 18px;\\r\\n}\\r\\n\\r\\n.section td span {\\r\\n font-size: 13px;\\r\\n}\\r\\n\\r\\n.imageborder {\\r\\n border: 1px solid #ddd;\\r\\n border-radius: 3px;\\r\\n padding: 0 2px 0 8px;\\r\\n cursor:pointer;\\r\\n}\\r\\n\\r\\n.LastUpdateDate {\\r\\n display: block;\\r\\n margin-top: 8px;\\r\\n color: #949090;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vSVBSL3VwZGF0ZXMvdXBkYXRlcy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsY0FBYztFQUNkLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsY0FBYztFQUNkLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixpQkFBaUI7RUFDakI7QUFDRjs7QUFFQTtFQUNFLGlCQUFpQjtFQUNqQixnQ0FBZ0M7QUFDbEM7O0FBRUE7RUFDRSxvQkFBb0I7RUFDcEIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFDQTtFQUNFLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLGNBQWM7QUFDaEI7O0FBQ0E7RUFDRSxjQUFjO0VBQ2QsZUFBZTtFQUNmLGNBQWM7QUFDaEIiLCJmaWxlIjoic3JjL2FwcC9BZG1pbi9JUFIvdXBkYXRlcy91cGRhdGVzLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubGlnaHRibHVlIHtcclxuICBjb2xvcjogIzAwMzlCRjtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmxpZ2h0cGluayB7XHJcbiAgY29sb3I6ICNmNTg5OGU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5ncmF5IHtcclxuICBjb2xvcjogIzdGN0Y3RjtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLm1vZGlmeWRldGFpbHMge1xyXG4gIGhlaWdodDogMzRweDtcclxuICBsaW5lLWhlaWdodDogNjVweDtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLmFjdGl2ZXVwZGF0ZWNvdW50IHtcclxuICBjb2xvcjogIzAwMzlCRjtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLmNlbnRlciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ubWVyZ2Vjb3VudCB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkXHJcbn1cclxuXHJcbi5zZWN0aW9uIHtcclxuICBwYWRkaW5nLXRvcDogMTBweDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMzlCRjtcclxufVxyXG5cclxuLnNlY3Rpb24gdGQge1xyXG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDE4cHg7XHJcbn1cclxuXHJcbi5zZWN0aW9uIHRkIHNwYW4ge1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxufVxyXG4uaW1hZ2Vib3JkZXIge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIHBhZGRpbmc6IDAgMnB4IDAgOHB4O1xyXG4gIGN1cnNvcjpwb2ludGVyO1xyXG59XHJcbi5MYXN0VXBkYXRlRGF0ZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLXRvcDogOHB4O1xyXG4gIGNvbG9yOiAjOTQ5MDkwO1xyXG59XHJcbiJdfQ== */\"","import { Component, OnInit, ViewChild, ViewChildren, ElementRef } from '@angular/core';\r\nimport { IPRUpdatesModel } from '../../../../Models/IPRUpdatesModel';\r\nimport { HistoryModel } from '../../../../Models/historyModel';\r\nimport { iprupdatesService } from '../../../../Services/iprupdatesService';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { AppConfig } from '../../../../Services/app.config';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { Router } from '@angular/router';\r\n@Component({\r\n selector: 'app-updates',\r\n templateUrl: './updates.component.html',\r\n styleUrls: ['./updates.component.css']\r\n})\r\nexport class IPRUpdatesComponent implements OnInit { \r\n userID: number = 0;\r\n totalPageSize: number = 0;\r\n pageSize: number = 0;\r\n pageIndex: number = 0;\r\n orderBy: string = 'null';\r\n keywordFilter: string = '';\r\n whereCondition: string = 'null';\r\n isAscending: boolean;\r\n statusCode: number = 0;\r\n appModel: any;\r\n upDowUpdateCategoryNameCSS: string = '';\r\n upDowStateCSS: string = '';\r\n upDowUpdateTypeCSS: string = '';\r\n upDowCreatedByCSS: string = '';\r\n upDowCreatedDateCSS: string = '';\r\n upDowModifiedByCSS: string = '';\r\n upDowModifiedDateCSS: string = '';\r\n upDowCarrierLastUpdateDate: string = '';\r\n isloading: boolean = false;\r\n ishistoryloading: boolean = false; \r\n tokenKey: string = '';\r\n iprUpdatesModel: IPRUpdatesModel[] = [];\r\n mergeSuggestionModel: IPRUpdatesModel[] = [];\r\n mergeCarrierModel: IPRUpdatesModel[] = [];\r\n historyModel: HistoryModel[] = [];\r\n isRecords: boolean = false;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n totalRecordsCount: number = -1;\r\n totalHistoryCount: number = -1;\r\n deleteupdateId: number = 0;\r\n SelectedTool: string;\r\n lastModifiedDetails: string;\r\n MergeSuggestionCount: number = 0;\r\n selectedMergeCarrierName: string = '';\r\n selectedMergeNewCarrierName: string = '';\r\n selectedMergeCarrierID: number = 0;\r\n selectedNewCarrierID: number = 0;\r\n\r\n @ViewChild('deletecloseBtn', {static: false}) deletecloseBtn: ElementRef;\r\n\r\n constructor(private iprupdatesService: iprupdatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth\r\n , private router: Router) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('AdminUserId');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.titleService.setTitle('IPR Updates');\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() {\r\n this.movetotop();\r\n this.pageSize = this.appModel.PageSize;\r\n this.totalPageSize = 1;\r\n this.pageIndex = 1;\r\n this.keywordFilter = 'null';\r\n this.whereCondition = 'null'; \r\n this.orderBy = 'CarrierLastUpdateDate DESC';\r\n this.GetIPRUpdates();\r\n this.GetCarrierMergeSuggestionList();\r\n }\r\n ImportIPRUpdates() {\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/import-updates']);\r\n }\r\n GetIPRUpdates(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetUpdatesFilterByPage(this.tokenKey, this.pageIndex.toString(), this.pageSize.toString(), this.whereCondition, this.orderBy, this.keywordFilter).subscribe(\r\n data => {\r\n this.isloading = false; \r\n if (data[\"status\"] == \"Success\") {\r\n this.iprUpdatesModel = data[\"updates\"];\r\n if (this.iprUpdatesModel.length > 0) {\r\n this.isRecords = true;\r\n this.totalPageSize = parseInt(this.iprUpdatesModel[0].totalRecordCount);\r\n this.totalRecordsCount = this.iprUpdatesModel.length;\r\n this.lastModifiedDetails = 'Last Updated at ' + this.iprUpdatesModel[0].lastModifiedDate +' By ' + this.iprUpdatesModel[0].lastModifiedBy\r\n }\r\n else {\r\n this.totalRecordsCount = 0;\r\n this.isRecords = false;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n editupdate(carrierId) {\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/updates/manage/' + carrierId]);\r\n }\r\n ActiveInactiveUpdates(updateId: any, isactive: any) {\r\n this.blockDocument();\r\n this.iprupdatesService.ActiveInactiveIPRUpdates(this.tokenKey, updateId, isactive)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (isactive) {\r\n this.showMessage('Activated successfully', 'Active', 'success');\r\n }\r\n else {\r\n this.showMessage('Inactivated successfully', 'Inactive', 'success');\r\n }\r\n this.GetIPRUpdates();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n setDeleteupdateId(carrierId: any) {\r\n this.deleteupdateId = carrierId;\r\n }\r\n getCarrrierUpdateHistory(carrierId: any) {\r\n this.ishistoryloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetIPRUpdateHistoryByCarrierID(this.tokenKey, carrierId).subscribe(\r\n data => { \r\n if (data[\"status\"] == \"Success\") {\r\n this.historyModel = data[\"updateHistory\"];\r\n if (this.historyModel.length > 0) { \r\n this.totalHistoryCount = this.historyModel.length; \r\n }\r\n else {\r\n this.totalHistoryCount = 0;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n this.ishistoryloading = false;\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.ishistoryloading = false;\r\n },\r\n );\r\n }\r\n GetCarrierMergeSuggestionList(): void { \r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetCarrierMergeSuggestionList(this.tokenKey).subscribe(\r\n data => { \r\n if (data[\"status\"] == \"Success\") {\r\n this.mergeSuggestionModel = data[\"updates\"];\r\n if (this.mergeSuggestionModel.length > 0) {\r\n this.MergeSuggestionCount = this.mergeSuggestionModel.length;\r\n }\r\n else {\r\n this.MergeSuggestionCount = 0;\r\n }\r\n } \r\n },\r\n error => { \r\n },\r\n );\r\n }\r\n RemoveUpdateHistory() {\r\n this.historyModel = [];\r\n }\r\n GetCarriersForMerge(carrierID: number, businessName): void { \r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.selectedMergeCarrierName = businessName;\r\n this.selectedMergeCarrierID = carrierID;\r\n this.iprupdatesService.GetAllCarriersForMerge(this.tokenKey, carrierID).subscribe(\r\n data => { \r\n if (data[\"status\"] == \"Success\") {\r\n this.mergeCarrierModel = data[\"update\"]; \r\n } \r\n },\r\n error => { \r\n },\r\n );\r\n }\r\n assignMergeCarrierChange(event) { \r\n this.selectedNewCarrierID = event.target.value;\r\n this.selectedMergeNewCarrierName = event.target.selectedOptions[0].text;\r\n\r\n }\r\n MergeCarrierFromSuggetionPopup(oldCarrierId: number, newCarrierId, businessName: string, newBusinessName: string) { \r\n this.selectedMergeCarrierID = oldCarrierId;\r\n this.selectedNewCarrierID = newCarrierId;\r\n this.selectedMergeCarrierName = businessName;\r\n this.selectedMergeNewCarrierName = newBusinessName;\r\n this.ValidateMerge();\r\n }\r\n DiscardCarrierFromSuggetionPopup(oldCarrierId: number, newCarrierId, businessName: string) {\r\n this.selectedMergeCarrierID = oldCarrierId;\r\n this.selectedNewCarrierID = newCarrierId;\r\n this.selectedMergeCarrierName = businessName;\r\n this.ClosePopup('lnkDiscard'); \r\n }\r\n DiscardCarrier() {\r\n this.ClosePopup('btnDiscardModelClose');\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.DiscardCarrierMerge( this.selectedMergeCarrierID, this.selectedNewCarrierID, this.tokenKey).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.showMessage('Provider discarded successfully', 'Discard', 'success');\r\n this.GetCarrierMergeSuggestionList(); \r\n }\r\n else {\r\n this.showMessage('There is an issue while discarding provider. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n ValidateMerge() {\r\n if (this.selectedNewCarrierID == 0) {\r\n this.showMessage('Please select provider', 'Replace', 'error');\r\n }\r\n else {\r\n this.ClosePopup('lnkMerge');\r\n }\r\n }\r\n MergeCarrier() { \r\n this.ClosePopup('btnMergeModelClose');\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.MergeCarrier(this.userID, this.selectedMergeCarrierID, this.selectedNewCarrierID, this.tokenKey).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.showMessage('Provider replaced successfully', 'Replace', 'success');\r\n this.GetIPRUpdates();\r\n this.GetCarrierMergeSuggestionList();\r\n this.ClosePopup('btnClose');\r\n }\r\n else {\r\n this.showMessage('There is an issue while replacing provider. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n ClosePopup(controlName: string) {\r\n let element: HTMLElement = document.getElementById(controlName) as HTMLElement;\r\n element.click();\r\n }\r\n sort(sortBy: string) {\r\n if (!this.isAscending)\r\n {\r\n this.isAscending = true;\r\n this.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"BusinessName\") {\r\n this.upDowUpdateCategoryNameCSS = 'fa fa-arrow-down';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowCarrierLastUpdateDate = '';\r\n }\r\n else if (sortBy === \"CarrierLastUpdateDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowCarrierLastUpdateDate = 'fa fa-arrow-down';\r\n } \r\n }\r\n else {\r\n this.isAscending = false;\r\n this.orderBy = sortBy;\r\n\r\n if (sortBy === \"BusinessName\") {\r\n this.upDowUpdateCategoryNameCSS = 'fa fa-arrow-up';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowCarrierLastUpdateDate = '';\r\n }\r\n else if (sortBy === \"CarrierLastUpdateDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowCarrierLastUpdateDate = 'fa fa-arrow-up';\r\n }\r\n }\r\n this.GetIPRUpdates();\r\n }\r\n pageChanged($event) {\r\n this.pageIndex = parseInt($event.page);\r\n this.GetIPRUpdates();\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n keywordFilters($event) {\r\n this.pageIndex = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.keywordFilter = $event.target.value;\r\n else\r\n this.keywordFilter = 'null';\r\n\r\n this.GetIPRUpdates();\r\n } \r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL2FjY2Vzcy1kZW5pZWQvYWNjZXNzLWRlbmllZC5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-access-denied',\r\n templateUrl: './access-denied.component.html',\r\n styleUrls: ['./access-denied.component.css']\r\n})\r\nexport class AccessDeniedComponent implements OnInit {\r\n AccessDeniedTool: string = 'selected'\r\n constructor() {\r\n \r\n try {\r\n this.AccessDeniedTool = sessionStorage.getItem('AccessDeniedTool');\r\n if (this.AccessDeniedTool.toLocaleLowerCase() == \"ipr\")\r\n this.AccessDeniedTool = \"iPR\";\r\n else if (this.AccessDeniedTool.toLocaleLowerCase() == \"voip\")\r\n this.AccessDeniedTool = \"VoIP\";\r\n }\r\n catch (error) {\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \".switch {\\r\\n position: relative;\\r\\n display: inline-block;\\r\\n width: 60px;\\r\\n height: 34px;\\r\\n }\\r\\n \\r\\n .switch input {\\r\\n opacity: 0;\\r\\n width: 0;\\r\\n height: 0;\\r\\n }\\r\\n \\r\\n .slider {\\r\\n position: absolute;\\r\\n cursor: pointer;\\r\\n top: 0;\\r\\n left: 0;\\r\\n right: 0;\\r\\n bottom: 0;\\r\\n background-color: #ccc;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n \\r\\n .slider:before {\\r\\n position: absolute;\\r\\n content: \\\"\\\";\\r\\n height: 26px;\\r\\n width: 26px;\\r\\n left: 4px;\\r\\n bottom: 4px;\\r\\n background-color: white;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n \\r\\n input:checked + .slider {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n input:focus + .slider {\\r\\n box-shadow: 0 0 1px #0039BF;\\r\\n }\\r\\n \\r\\n input:checked + .slider:before {\\r\\n -webkit-transform: translateX(26px);\\r\\n transform: translateX(26px);\\r\\n }\\r\\n \\r\\n /* Rounded sliders */\\r\\n \\r\\n .slider.round {\\r\\n border-radius: 34px;\\r\\n }\\r\\n \\r\\n .slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n \\r\\n .ehslabelscoll label {\\r\\n display: block;\\r\\n padding-bottom: 5px;\\r\\n font-weight: normal;\\r\\n }\\r\\n \\r\\n .ehslabelscoll input {\\r\\n margin-right: 3px;\\r\\n }\\r\\n \\r\\n .custom-checkbox .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #0039BF;\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n button.calendar, button.calendar:active {\\r\\n width: 2.75rem;\\r\\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAcCAYAAAAEN20fAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAEUSURBVEiJ7ZQxToVAEIY/YCHGxN6XGOIpnpaEsBSeQC9ArZbm9TZ6ADyBNzAhQGGl8Riv4BLAWAgmkpBYkH1b8FWT2WK/zJ8ZJ4qiI6XUI3ANnGKWBnht2/ZBDRK3hgVGNsCd7/ui+JkEIrKtqurLpEWaphd933+IyI3LEIdpCYCiKD6HcuOa/nwOa0ScJEnk0BJg0UTUWJRl6RxCYEzEmomsIlPU3IPW+grIAbquy+q6fluy/28RIBeRMwDXdXMgXLj/B2uimRXpui4D9sBeRLKl+1N+L+t6RwbWrZliTTTr1oxYtzVWiTQAcRxvTX+eJMnlUDaO1vpZRO5NS0x48sIwfPc87xg4B04MCzQi8hIEwe4bl1DnFMCN2zsAAAAASUVORK5CYII=') !important;\\r\\n background-repeat: no-repeat;\\r\\n background-size: 23px;\\r\\n background-position: center;\\r\\n }\\r\\n \\r\\n /* Customize the label (the container) */\\r\\n \\r\\n .container {\\r\\n display: block;\\r\\n position: relative;\\r\\n padding-left: 30px;\\r\\n margin-bottom: 0px;\\r\\n cursor: pointer;\\r\\n font-size: 12px;\\r\\n -webkit-user-select: none;\\r\\n -moz-user-select: none;\\r\\n -ms-user-select: none;\\r\\n user-select: none;\\r\\n }\\r\\n \\r\\n /* Hide the browser's default checkbox */\\r\\n \\r\\n .container input {\\r\\n position: absolute;\\r\\n opacity: 0;\\r\\n cursor: pointer;\\r\\n height: 0;\\r\\n width: 0;\\r\\n }\\r\\n \\r\\n /* Create a custom checkbox */\\r\\n \\r\\n .checkmark {\\r\\n position: absolute;\\r\\n top: 0;\\r\\n left: 0;\\r\\n height: 17px;\\r\\n width: 17px;\\r\\n background-color: #eee;\\r\\n border-radius: 5px;\\r\\n }\\r\\n \\r\\n /* On mouse-over, add a grey background color\\r\\n .container:hover input ~ .checkmark {\\r\\n background-color: #eeeeee !important;\\r\\n } */\\r\\n \\r\\n /* When the checkbox is checked, add a blue background */\\r\\n \\r\\n .container input:checked ~ .checkmark {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n /* Create the checkmark/indicator (hidden when not checked) */\\r\\n \\r\\n .checkmark:after {\\r\\n content: \\\"\\\";\\r\\n position: absolute;\\r\\n display: none;\\r\\n }\\r\\n \\r\\n /* Show the checkmark when checked */\\r\\n \\r\\n input:checked ~ .checkmark:after {\\r\\n display: block;\\r\\n }\\r\\n \\r\\n /* Style the checkmark/indicator */\\r\\n \\r\\n .container .checkmark:after {\\r\\n left: 6px;\\r\\n top: 3px;\\r\\n width:6px;\\r\\n height: 9px;\\r\\n border: solid white;\\r\\n border-width: 0 2px 2px 0;\\r\\n -webkit-transform: rotate(45deg);\\r\\n transform: rotate(45deg);\\r\\n font-family: 'Sarabun', sans-serif;\\r\\n }\\r\\n \\r\\n /* ::ng-deep h4, ::ng-deep [data-label=\\\"Citation\\\"] {\\r\\n color: #a4123f;\\r\\n font-weight: 600;\\r\\n font-style: italic;\\r\\n font-size: 13px;\\r\\n margin-top: 0;\\r\\n } */\\r\\n \\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vYWN0aW9uLWl0ZW0vYWN0aW9uLWl0ZW0tbGlzdC9hY3Rpb24taXRlbS1saXN0LmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxrQkFBa0I7SUFDbEIscUJBQXFCO0lBQ3JCLFdBQVc7SUFDWCxZQUFZO0VBQ2Q7O0lBRUU7TUFDRSxVQUFVO01BQ1YsUUFBUTtNQUNSLFNBQVM7SUFDWDs7SUFFRjtJQUNFLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsTUFBTTtJQUNOLE9BQU87SUFDUCxRQUFRO0lBQ1IsU0FBUztJQUNULHNCQUFzQjtJQUN0Qix1QkFBdUI7SUFDdkIsZUFBZTtFQUNqQjs7SUFFRTtNQUNFLGtCQUFrQjtNQUNsQixXQUFXO01BQ1gsWUFBWTtNQUNaLFdBQVc7TUFDWCxTQUFTO01BQ1QsV0FBVztNQUNYLHVCQUF1QjtNQUN2Qix1QkFBdUI7TUFDdkIsZUFBZTtJQUNqQjs7SUFFRjtJQUNFLHlCQUF5QjtFQUMzQjs7SUFFQTtJQUNFLDJCQUEyQjtFQUM3Qjs7SUFFQTtJQUNFLG1DQUFtQztJQUVuQywyQkFBMkI7RUFDN0I7O0lBRUEsb0JBQW9COztJQUNwQjtJQUNFLG1CQUFtQjtFQUNyQjs7SUFFRTtNQUNFLGtCQUFrQjtJQUNwQjs7SUFFRjtJQUNFLGNBQWM7SUFDZCxtQkFBbUI7SUFDbkIsbUJBQW1CO0VBQ3JCOztJQUVBO0lBQ0UsaUJBQWlCO0VBQ25COztJQUVBO0lBQ0UseUJBQXlCO0VBQzNCOztJQUVBO0lBQ0UseUJBQXlCO0lBQ3pCLFdBQVc7RUFDYjs7SUFFQTtJQUNFLGNBQWM7SUFDZCwwbEJBQTBsQjtJQUMxbEIsNEJBQTRCO0lBQzVCLHFCQUFxQjtJQUNyQiwyQkFBMkI7RUFDN0I7O0lBRUEsd0NBQXdDOztJQUN4QztJQUNFLGNBQWM7SUFDZCxrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsZUFBZTtJQUNmLHlCQUF5QjtJQUN6QixzQkFBc0I7SUFDdEIscUJBQXFCO0lBQ3JCLGlCQUFpQjtFQUNuQjs7SUFDQSx3Q0FBd0M7O0lBQ3hDO0lBQ0Usa0JBQWtCO0lBQ2xCLFVBQVU7SUFDVixlQUFlO0lBQ2YsU0FBUztJQUNULFFBQVE7RUFDVjs7SUFHQSw2QkFBNkI7O0lBQzdCO0lBQ0Usa0JBQWtCO0lBQ2xCLE1BQU07SUFDTixPQUFPO0lBQ1AsWUFBWTtJQUNaLFdBQVc7SUFDWCxzQkFBc0I7SUFDdEIsa0JBQWtCO0VBQ3BCOztJQUVBOzs7S0FHRzs7SUFFSCx3REFBd0Q7O0lBQ3hEO0lBQ0UseUJBQXlCO0VBQzNCOztJQUVBLDZEQUE2RDs7SUFDN0Q7SUFDRSxXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLGFBQWE7RUFDZjs7SUFFQSxvQ0FBb0M7O0lBQ3BDO0lBQ0UsY0FBYztFQUNoQjs7SUFFQSxrQ0FBa0M7O0lBQ2xDO0lBQ0UsU0FBUztNQUNQLFFBQVE7TUFDUixTQUFTO01BQ1QsV0FBVztJQUNiLG1CQUFtQjtJQUNuQix5QkFBeUI7SUFDekIsZ0NBQWdDO0lBRWhDLHdCQUF3QjtJQUN4QixrQ0FBa0M7RUFDcEM7O0lBR0E7Ozs7OztLQU1HIiwiZmlsZSI6InNyYy9hcHAvQWRtaW4vYWN0aW9uLWl0ZW0vYWN0aW9uLWl0ZW0tbGlzdC9hY3Rpb24taXRlbS1saXN0LmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuc3dpdGNoIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgaGVpZ2h0OiAzNHB4O1xyXG4gIH1cclxuICBcclxuICAgIC5zd2l0Y2ggaW5wdXQge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB3aWR0aDogMDtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIFxyXG4gIC5zbGlkZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gICAgdHJhbnNpdGlvbjogLjRzO1xyXG4gIH1cclxuICBcclxuICAgIC5zbGlkZXI6YmVmb3JlIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICAgIHdpZHRoOiAyNnB4O1xyXG4gICAgICBsZWZ0OiA0cHg7XHJcbiAgICAgIGJvdHRvbTogNHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgICAgIHRyYW5zaXRpb246IC40cztcclxuICAgIH1cclxuICBcclxuICBpbnB1dDpjaGVja2VkICsgLnNsaWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG4gIH1cclxuICBcclxuICBpbnB1dDpmb2N1cyArIC5zbGlkZXIge1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDFweCAjMDAzOUJGO1xyXG4gIH1cclxuICBcclxuICBpbnB1dDpjaGVja2VkICsgLnNsaWRlcjpiZWZvcmUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gIH1cclxuICBcclxuICAvKiBSb3VuZGVkIHNsaWRlcnMgKi9cclxuICAuc2xpZGVyLnJvdW5kIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDM0cHg7XHJcbiAgfVxyXG4gIFxyXG4gICAgLnNsaWRlci5yb3VuZDpiZWZvcmUge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICB9XHJcbiAgXHJcbiAgLmVoc2xhYmVsc2NvbGwgbGFiZWwge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICB9XHJcbiAgXHJcbiAgLmVoc2xhYmVsc2NvbGwgaW5wdXQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAzcHg7XHJcbiAgfVxyXG4gIFxyXG4gIC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbiAgfVxyXG4gIFxyXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgfVxyXG5cclxuICBidXR0b24uY2FsZW5kYXIsIGJ1dHRvbi5jYWxlbmRhcjphY3RpdmUge1xyXG4gICAgd2lkdGg6IDIuNzVyZW07XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0lBQUFBY0NBWUFBQUFFTjIwZkFBQUFCSE5DU1ZRSUNBZ0lmQWhraUFBQUFBbHdTRmx6QUFBT3hBQUFEc1FCbFNzT0d3QUFBQmwwUlZoMFUyOW1kSGRoY21VQWQzZDNMbWx1YTNOallYQmxMbTl5WjV2dVBCb0FBQUVVU1VSQlZFaUo3WlF4VG9WQUVJWS9ZQ0hHeE42WEdPSXBucGFFc0JTZVFDOUFyWmJtOVRaNkFEeUJOekFoUUdHbDhSaXY0QkxBV0FnbWtwQllrSDFiOEZXVDJXSy96SjhaSjRxaUk2WFVJM0FObkdLV0JuaHQyL1pCRFJLM2hnVkdOc0NkNy91aStKa0VJckt0cXVyTHBFV2FwaGQ5MzMrSXlJM0xFSWRwQ1lDaUtENkhjdU9hL253T2EwU2NKRW5rMEJKZzBVVFVXSlJsNlJ4Q1lFekVtb21zSWxQVTNJUFcrZ3JJQWJxdXkrcTZmbHV5LzI4UklCZVJNd0RYZFhNZ1hMai9CMnVpbVJYcHVpNEQ5c0JlUkxLbCsxTitMK3Q2UndiV3JabGlUVFRyMW94WXR6VldpVFFBY1J4dlRYK2VKTW5sVURhTzF2cFpSTzVOUzB4NDhzSXdmUGM4N3hnNEIwNE1DelFpOGhJRXdlNGJsMURuRk1DTjJ6c0FBQUFBU1VWT1JLNUNZSUk9JykgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIzcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgfVxyXG4gIFxyXG4gIC8qIEN1c3RvbWl6ZSB0aGUgbGFiZWwgKHRoZSBjb250YWluZXIpICovXHJcbiAgLmNvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgfVxyXG4gIC8qIEhpZGUgdGhlIGJyb3dzZXIncyBkZWZhdWx0IGNoZWNrYm94ICovXHJcbiAgLmNvbnRhaW5lciBpbnB1dCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgfVxyXG4gIFxyXG4gIFxyXG4gIC8qIENyZWF0ZSBhIGN1c3RvbSBjaGVja2JveCAqL1xyXG4gIC5jaGVja21hcmsge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGhlaWdodDogMTdweDtcclxuICAgIHdpZHRoOiAxN3B4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICB9XHJcbiAgXHJcbiAgLyogT24gbW91c2Utb3ZlciwgYWRkIGEgZ3JleSBiYWNrZ3JvdW5kIGNvbG9yXHJcbiAgLmNvbnRhaW5lcjpob3ZlciBpbnB1dCB+IC5jaGVja21hcmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZSAhaW1wb3J0YW50O1xyXG4gIH0gKi9cclxuICBcclxuICAvKiBXaGVuIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLCBhZGQgYSBibHVlIGJhY2tncm91bmQgKi9cclxuICAuY29udGFpbmVyIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbiAgfVxyXG4gIFxyXG4gIC8qIENyZWF0ZSB0aGUgY2hlY2ttYXJrL2luZGljYXRvciAoaGlkZGVuIHdoZW4gbm90IGNoZWNrZWQpICovXHJcbiAgLmNoZWNrbWFyazphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgXHJcbiAgLyogU2hvdyB0aGUgY2hlY2ttYXJrIHdoZW4gY2hlY2tlZCAqL1xyXG4gIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrOmFmdGVyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICBcclxuICAvKiBTdHlsZSB0aGUgY2hlY2ttYXJrL2luZGljYXRvciAqL1xyXG4gIC5jb250YWluZXIgLmNoZWNrbWFyazphZnRlciB7XHJcbiAgICBsZWZ0OiA2cHg7XHJcbiAgICAgIHRvcDogM3B4O1xyXG4gICAgICB3aWR0aDo2cHg7XHJcbiAgICAgIGhlaWdodDogOXB4O1xyXG4gICAgYm9yZGVyOiBzb2xpZCB3aGl0ZTtcclxuICAgIGJvcmRlci13aWR0aDogMCAycHggMnB4IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICBmb250LWZhbWlseTogJ1NhcmFidW4nLCBzYW5zLXNlcmlmO1xyXG4gIH1cclxuICBcclxuICBcclxuICAvKiA6Om5nLWRlZXAgaDQsIDo6bmctZGVlcCBbZGF0YS1sYWJlbD1cIkNpdGF0aW9uXCJdIHtcclxuICAgIGNvbG9yOiAjYTQxMjNmO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfSAqL1xyXG4gICJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { ToolEnum, AdminUserType } from 'src/Models/Common';\r\nimport { filterModel } from 'src/Models/filterModel';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AdminActionItemSearchResult } from 'src/Models/AdminActionItemSearchResult';\r\nimport { Router } from '@angular/router';\r\nimport { StateMasterService } from 'src/Services/state-master.service';\r\nimport { CarrierCategoryModel } from 'src/Models/carrierCategoryModel';\r\nimport { ActionStateModel } from 'src/Models/ActionStateModel';\r\n\r\n@Component({\r\n selector: 'app-action-item-list',\r\n templateUrl: './action-item-list.component.html',\r\n styleUrls: ['./action-item-list.component.css']\r\n})\r\nexport class ActionItemListComponent implements OnInit {\r\n tokenKey: string = '';\r\n userID: number = 0;\r\n SelectedTool: string;\r\n productId: number = 1;\r\n\r\n filteModel = new filterModel()\r\n actionItemList: AdminActionItemSearchResult[] = [];\r\n totalRecordCount: number = -1;\r\n\r\n upDownDeadlineDateCSS: string = '';\r\n upDownSubjectCSS: string = '';\r\n upDownTypeNameCSS: string = '';\r\n upDownCompanyNameCSS: string = '';\r\n upDownStateNameCSS: string = '';\r\n upDownCarrierNameCSS: string = '';\r\n upDownIsActionCSS: string = '';\r\n upDownActionChargesCSS: string = '';\r\n upDownIsInformationOnlyCSS: string = '';\r\n\r\n isAscending: boolean = false;\r\n\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n listOfStateId: number[] = [];\r\n\r\n dropdownListCategory = [];\r\n selectedItemsCategory = [];\r\n dropdownSettingsCategory = {};\r\n listOfCategoryId: number[] = [];\r\n\r\n isloading: boolean = false;\r\n carrierCategoryList: CarrierCategoryModel[];\r\n actionStateList: ActionStateModel[];\r\n deleteActionId: number = 0;\r\n\r\n keywordValue: string = '';\r\n IsActionRequiredValues: boolean = false;\r\n currentPage: number = 1;\r\n\r\n dropdownDateFilter = [];\r\n selectedItemsDateFilter = [];\r\n dropdownSettingsDateFilter = {};\r\n listOfDateFilterId: number[] = [];\r\n isDateRangShow: boolean = false;\r\n bsRangeValue: Date[];\r\n singleDate: string = '';\r\n\r\n dropdownListTypes = [];\r\n selectedItemsTypes = [];\r\n dropdownSettingsTypes = {};\r\n listOfTypes = [];\r\n systemUserCondition: string = '';\r\n loginUserId: number = 0;\r\n\r\n constructor(private stateMasterService: StateMasterService, private router: Router, private toastr: ToastrService,\r\n private titleService: Title, private actionItemServices: ActionItemService,\r\n private checkAuth: CheckAuth) {\r\n this.listOfStateId = [];\r\n this.listOfCategoryId = [];\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n this.titleService.setTitle('Trac-It Entries');\r\n sessionStorage.removeItem('ActionItemClone');\r\n\r\n this.loginUserId = +sessionStorage.getItem('AdminUserId');\r\n if (AdminUserType.systemadmin == parseInt(sessionStorage.getItem('adminTypeId')))\r\n this.systemUserCondition = 'null'\r\n else\r\n this.systemUserCondition = ' (ISNULL(CompanyId,0) = 0 Or CompanyId IN (Select CompanyId From [SystemUserCompany] Where [SystemUserCompany].UserId = ' + this.loginUserId + '))';\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.pupulateDateFilterItem();\r\n this.setSaveFilter();\r\n this.AdminActionItemFindByPages();\r\n this.GetCarrierCategories();\r\n this.GetStateData();\r\n this.ActionTypes();\r\n }\r\n\r\n pupulateDateFilterItem() {\r\n this.dropdownDateFilter.push({ \"id\": 1, \"itemName\": 'After' });\r\n this.dropdownDateFilter.push({ \"id\": 2, \"itemName\": 'Before' });\r\n this.dropdownDateFilter.push({ \"id\": 3, \"itemName\": 'Between' });\r\n this.dropdownDateFilter.push({ \"id\": 4, \"itemName\": 'Equal' });\r\n\r\n this.dropdownSettingsDateFilter = {\r\n singleSelection: true,\r\n text: \"Select Filter(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No filter(s) available',\r\n showCheckbox: false\r\n };\r\n }\r\n\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n AdminActionItemFindByPages() {\r\n this.isloading = true;\r\n this.actionItemList = [];\r\n this.actionItemServices.AdminActionItemFindByPages(this.tokenKey, this.filteModel).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data['status'] == 'Success') {\r\n this.actionItemList = data['actionList'];\r\n if (this.actionItemList != null) {\r\n if (this.actionItemList.length > 0) {\r\n this.totalRecordCount = +this.actionItemList[0].totalRowCount;\r\n }\r\n else {\r\n this.totalRecordCount = 0;\r\n }\r\n }\r\n else {\r\n this.totalRecordCount = 0;\r\n }\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n pageChanged($event: any) {\r\n this.currentPage = $event.page;\r\n this.filteModel.pageNumber = parseInt($event.page).toString();\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n sort(sortBy: any) {\r\n this.upDownDeadlineDateCSS = '';\r\n this.upDownSubjectCSS = '';\r\n this.upDownTypeNameCSS = '';\r\n this.upDownCompanyNameCSS = '';\r\n this.upDownStateNameCSS = '';\r\n this.upDownCarrierNameCSS = '';\r\n this.upDownActionChargesCSS = '';\r\n this.upDownIsActionCSS = '';\r\n this.upDownIsInformationOnlyCSS = '';\r\n\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.filteModel.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"deadlineDate\") {\r\n this.upDownDeadlineDateCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"subject\") {\r\n this.upDownSubjectCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"typeName\") {\r\n this.upDownTypeNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"companyName\") {\r\n this.upDownCompanyNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"stateName\") {\r\n this.upDownStateNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"carrierName\") {\r\n this.upDownCarrierNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"ActionCharges\") {\r\n this.upDownActionChargesCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"IsAction\") {\r\n this.upDownIsActionCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"IsInformationOnly\") {\r\n this.upDownIsInformationOnlyCSS = 'fa fa-arrow-down';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.filteModel.orderBy = sortBy;\r\n\r\n if (sortBy === \"deadlineDate\") {\r\n this.upDownDeadlineDateCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"subject\") {\r\n this.upDownSubjectCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"typeName\") {\r\n this.upDownTypeNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"companyName\") {\r\n this.upDownCompanyNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"stateName\") {\r\n this.upDownStateNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"carrierName\") {\r\n this.upDownCarrierNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"ActionCharges\") {\r\n this.upDownActionChargesCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"IsAction\") {\r\n this.upDownIsActionCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"IsInformationOnly\") {\r\n this.upDownIsInformationOnlyCSS = 'fa fa-arrow-up';\r\n }\r\n }\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n IsActionRequired($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n this.filteModel.isActionRequired = $event.target.checked;\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n redirectToActionAdd() {\r\n //debugger\r\n this.saveSession();\r\n this.router.navigate(['/admin/trac-it/manage']);\r\n }\r\n\r\n redirectToActionEdit(actionId: any) {\r\n //debugger\r\n this.saveSession();\r\n this.router.navigate(['/admin/trac-it/manage/' + actionId]);\r\n }\r\n\r\n redirectToActionClone(actionId: any) {\r\n //debugger\r\n this.saveSession();\r\n sessionStorage.setItem('ActionItemClone', actionId);\r\n this.router.navigate(['/admin/trac-it/manage/' + actionId]);\r\n }\r\n\r\n setDropDownSetting() {\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true\r\n };\r\n\r\n this.dropdownSettingsCategory = {\r\n singleSelection: false,\r\n text: \"Select Carrier Type(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No carrier types available',\r\n showCheckbox: true\r\n };\r\n }\r\n\r\n GetCarrierCategories() {\r\n this.actionItemServices.GetCarrierCategories(this.tokenKey).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n let carrierCategories = data['companyModel'];\r\n if (carrierCategories != null) {\r\n if (carrierCategories.length > 0) {\r\n for (let iCounter = 0; iCounter < carrierCategories.length; iCounter++) {\r\n this.dropdownListCategory.push({ \"id\": parseInt(carrierCategories[iCounter].carrierCatId), \"itemName\": carrierCategories[iCounter].carrierCatName });\r\n }\r\n }\r\n\r\n //debugger\r\n let CarrierCategories = this.filteModel.carrierCategories;\r\n if (CarrierCategories != '' && CarrierCategories != null) {\r\n let tmpCarrierCategories = CarrierCategories.split(',');\r\n if (tmpCarrierCategories != null) {\r\n if (tmpCarrierCategories.length > 0) {\r\n for (let iCounter = 0; iCounter < tmpCarrierCategories.length; iCounter++) {\r\n //debugger\r\n if (tmpCarrierCategories[iCounter] != '') {\r\n let obj = data[\"companyModel\"].filter(m => m.carrierCatId == tmpCarrierCategories[iCounter]);\r\n if (obj != null) {\r\n if (obj[0].carrierCatId == tmpCarrierCategories[iCounter]) {\r\n this.selectedItemsCategory.push({ \"id\": parseInt(carrierCategories[iCounter].carrierCatId), \"itemName\": carrierCategories[iCounter].carrierCatName });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.dropdownSettingsCategory = {\r\n singleSelection: false,\r\n text: \"Select Carrier Type(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No carrier types available',\r\n showCheckbox: true\r\n };\r\n });\r\n }\r\n\r\n GetStateData(): void {\r\n this.stateMasterService.getState(this.tokenKey, this.productId).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n // Set All Item\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push({ \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name });\r\n }\r\n\r\n //debugger\r\n let StateID = this.filteModel.stateID;\r\n if (StateID != '' && StateID != null) {\r\n let tmpstateID = StateID.split(',');\r\n if (tmpstateID != null) {\r\n if (tmpstateID.length > 0) {\r\n for (let iCounter = 0; iCounter < tmpstateID.length; iCounter++) {\r\n //debugger\r\n if (tmpstateID[iCounter] != '') {\r\n let obj = data[\"state\"].filter(m => m.stateId == tmpstateID[iCounter]);\r\n if (obj != null) {\r\n if (obj[0].stateId == tmpstateID[iCounter]) {\r\n this.selectedItemsState.push({ \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n onSelectedState($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n if (this.listOfStateId != null) {\r\n if (this.listOfStateId.length > 0) {\r\n this.listOfStateId = this.removeElemetninArray(this.listOfStateId, $event.id)\r\n this.listOfStateId.push($event.id);\r\n }\r\n else {\r\n this.listOfStateId.push($event.id);\r\n }\r\n }\r\n this.setStateId();\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onDeSelectedState($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n if (this.listOfStateId != null) {\r\n if (this.listOfStateId.length > 0) {\r\n this.listOfStateId = this.removeElemetninArray(this.listOfStateId, $event.id)\r\n }\r\n }\r\n this.setStateId();\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onSelectStateAll($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfStateId != null) {\r\n if (this.listOfStateId.length > 0) {\r\n this.listOfStateId = this.removeElemetninArray(this.listOfStateId, $event[iCounter].id)\r\n this.listOfStateId.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfStateId.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n\r\n this.setStateId();\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onDeSelectStateAll($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n this.listOfStateId = [];\r\n this.setStateId();\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n setStateId() {\r\n let seprator = '';\r\n this.filteModel.stateID = '';\r\n if (this.listOfStateId != null) {\r\n if (this.listOfStateId.length > 0) {\r\n for (let iCounter = 0; iCounter < this.listOfStateId.length; iCounter++) {\r\n this.filteModel.stateID += seprator + this.listOfStateId[iCounter];\r\n seprator = ',';\r\n }\r\n }\r\n }\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n onSelectedCategory($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n if (this.listOfCategoryId != null) {\r\n if (this.listOfCategoryId.length > 0) {\r\n this.listOfCategoryId = this.removeElemetninArray(this.listOfCategoryId, $event.id)\r\n this.listOfCategoryId.push($event.id);\r\n }\r\n else {\r\n this.listOfCategoryId.push($event.id);\r\n }\r\n }\r\n this.setCategoryId();\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onDeSelectedCategory($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n if (this.listOfCategoryId != null) {\r\n if (this.listOfCategoryId.length > 0) {\r\n this.listOfCategoryId = this.removeElemetninArray(this.listOfCategoryId, $event.id)\r\n }\r\n }\r\n this.setCategoryId();\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onSelectCategoryAll($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfCategoryId != null) {\r\n if (this.listOfCategoryId.length > 0) {\r\n this.listOfCategoryId = this.removeElemetninArray(this.listOfCategoryId, $event[iCounter].id)\r\n this.listOfCategoryId.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfCategoryId.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n this.setCategoryId();\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onDeSelectCategoryAll($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n this.listOfCategoryId = [];\r\n this.setCategoryId();\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n setCategoryId() {\r\n let seprator = '';\r\n this.filteModel.carrierCategories = '';\r\n if (this.listOfCategoryId != null) {\r\n if (this.listOfCategoryId.length > 0) {\r\n for (let iCounter = 0; iCounter < this.listOfCategoryId.length; iCounter++) {\r\n this.filteModel.carrierCategories += seprator + this.listOfCategoryId[iCounter];\r\n seprator = ',';\r\n }\r\n }\r\n }\r\n }\r\n\r\n keywordFilters($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null) {\r\n sessionStorage.setItem('saveFilterKeywordValue', $event.target.value);\r\n this.filteModel.whereCondition = \" subject like '%\" + $event.target.value + \"%'\";\r\n }\r\n else {\r\n this.filteModel.whereCondition = '';\r\n sessionStorage.setItem('saveFilterKeywordValue', '');\r\n }\r\n\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n GetModelActionState(actionId: any) {\r\n this.actionStateList = [];\r\n this.actionItemServices.GetActionStateByActionId(this.tokenKey, actionId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.actionStateList = data['actionState'];\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n GetModelCarrierCategories(actionId: any) {\r\n this.carrierCategoryList = [];\r\n this.actionItemServices.GetActionCarrierByActionId(this.tokenKey, actionId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.carrierCategoryList = data['actionCarrier'];\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n SetDeleteId(actionId: any) {\r\n this.deleteActionId = actionId;\r\n }\r\n\r\n DeleteActionItemAdmin() {\r\n this.actionItemServices.DeleteActionItemAdmin(this.tokenKey, this.deleteActionId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Record deleted successfully.', 'Success', 'success');\r\n this.AdminActionItemFindByPages();\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n\r\n saveSession() {\r\n //debugger\r\n sessionStorage.setItem('saveFilterPageNo', this.filteModel.pageNumber);\r\n sessionStorage.setItem('saveFilterOrderBy', this.filteModel.orderBy);\r\n sessionStorage.setItem('saveFilterWhereCondition', this.filteModel.whereCondition);\r\n sessionStorage.setItem('saveFilterStateID', JSON.stringify(this.listOfStateId));\r\n sessionStorage.setItem('saveFilterCarrierCategories', JSON.stringify(this.listOfCategoryId));\r\n sessionStorage.setItem('saveFilterKeywordValue', this.keywordValue);\r\n\r\n let upDownDeadlineDateCSS = this.upDownDeadlineDateCSS;\r\n sessionStorage.setItem('saveFilterUpDownDeadlineDateCSS', upDownDeadlineDateCSS);\r\n let upDownSubjectCSS = this.upDownSubjectCSS\r\n sessionStorage.setItem('saveFilterUpDownSubjectCSS', upDownSubjectCSS);\r\n let upDownTypeNameCSS = this.upDownTypeNameCSS\r\n sessionStorage.setItem('saveFilterUpDownTypeNameCSS', upDownTypeNameCSS);\r\n let upDownCompanyNameCSS = this.upDownCompanyNameCSS;\r\n sessionStorage.setItem('saveFilterUpDownCompanyNameCSS', upDownCompanyNameCSS);\r\n let upDownStateNameCSS = this.upDownStateNameCSS;\r\n sessionStorage.setItem('saveFilterUpDownStateNameCSS', upDownStateNameCSS);\r\n let upDownCarrierNameCSS = this.upDownCarrierNameCSS;\r\n sessionStorage.setItem('saveFilterUpDownCarrierNameCSS', upDownCarrierNameCSS);\r\n let upDownActionChargesCSS = this.upDownActionChargesCSS;\r\n sessionStorage.setItem('saveFilterUpDownActionChargesCSS', upDownActionChargesCSS);\r\n let upDownIsActionCSS = this.upDownIsActionCSS;\r\n sessionStorage.setItem('saveFilterUpDownIsActionCSS', upDownIsActionCSS);\r\n let upDownIsInformationOnlyCSS = this.upDownIsInformationOnlyCSS;\r\n sessionStorage.setItem('saveFilterUpDownIsInformationOnlyCSS', upDownIsInformationOnlyCSS);\r\n\r\n let isAscending = '';\r\n if (this.isAscending)\r\n isAscending = 'true';\r\n else\r\n isAscending = 'false';\r\n sessionStorage.setItem('saveFilterIsAscending', isAscending);\r\n\r\n let isActionRequired = '';\r\n if (this.filteModel.isActionRequired)\r\n isActionRequired = 'true';\r\n else\r\n isActionRequired = 'false';\r\n\r\n sessionStorage.setItem('saveFilterIsActionRequired', isActionRequired);\r\n\r\n sessionStorage.setItem('saveFilterOprator', this.filteModel.oprator);\r\n sessionStorage.setItem('saveFilterFromDate', this.filteModel.fromDate);\r\n sessionStorage.setItem('saveFilterToDate', this.filteModel.toDate);\r\n sessionStorage.setItem('saveFilterListOfType', this.filteModel.listOfType);\r\n\r\n sessionStorage.setItem('savePreviousUrl', '/admin/admin/trac-it/manage');\r\n }\r\n\r\n clearSession() {\r\n //debugger\r\n sessionStorage.removeItem('saveFilterPageNo');\r\n sessionStorage.removeItem('saveFilterOrderBy');\r\n sessionStorage.removeItem('saveFilterWhereCondition');\r\n sessionStorage.removeItem('saveFilterStateID');\r\n sessionStorage.removeItem('saveFilterCarrierCategories');\r\n\r\n sessionStorage.removeItem('saveFilterUpDownDeadlineDateCSS');\r\n sessionStorage.removeItem('saveFilterUpDownSubjectCSS');\r\n sessionStorage.removeItem('saveFilterUpDownTypeNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownCompanyNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownStateNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownCarrierNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownActionChargesCSS');\r\n sessionStorage.removeItem('saveFilterUpDownIsActionCSS');\r\n sessionStorage.removeItem('saveFilterIsAscending');\r\n sessionStorage.removeItem('saveFilterIsActionRequired');\r\n sessionStorage.removeItem('saveFilterUpDownIsInformationOnlyCSS');\r\n\r\n sessionStorage.removeItem('saveFilterOprator');\r\n sessionStorage.removeItem('saveFilterFromDate');\r\n sessionStorage.removeItem('saveFilterToDate');\r\n sessionStorage.removeItem('saveFilterListOfType');\r\n sessionStorage.removeItem('savePreviousUrl');\r\n }\r\n\r\n setSaveFilter() {\r\n this.filteModel.pageSize = '10';\r\n this.filteModel.systemUserCondition = this.systemUserCondition;\r\n\r\n if (sessionStorage.getItem('savePreviousUrl') != '/admin/admin/trac-it/manage') {\r\n this.clearSession();\r\n }\r\n\r\n if (sessionStorage.getItem('saveFilterPageNo') != null && sessionStorage.getItem('saveFilterPageNo') != '' && sessionStorage.getItem('saveFilterPageNo') != 'undefined') {\r\n this.filteModel.pageNumber = sessionStorage.getItem('saveFilterPageNo');\r\n this.currentPage = +sessionStorage.getItem('saveFilterPageNo');\r\n sessionStorage.removeItem('saveFilterPageNo');\r\n }\r\n else\r\n this.filteModel.pageNumber = '1';\r\n\r\n\r\n if (sessionStorage.getItem('saveFilterOrderBy') != null && sessionStorage.getItem('saveFilterOrderBy') != '' && sessionStorage.getItem('saveFilterOrderBy') != 'undefined') {\r\n this.filteModel.orderBy = sessionStorage.getItem('saveFilterOrderBy');\r\n sessionStorage.removeItem('saveFilterOrderBy');\r\n }\r\n else\r\n this.filteModel.orderBy = 'ISNULL(ModifiedDate,CreatedDate) desc';\r\n\r\n\r\n if (sessionStorage.getItem('saveFilterWhereCondition') != null && sessionStorage.getItem('saveFilterWhereCondition') != '' && sessionStorage.getItem('saveFilterWhereCondition') != 'undefined') {\r\n this.filteModel.whereCondition = sessionStorage.getItem('saveFilterWhereCondition');\r\n this.keywordValue = sessionStorage.getItem('saveFilterKeywordValue');\r\n sessionStorage.removeItem('saveFilterKeywordValue');\r\n sessionStorage.removeItem('saveFilterWhereCondition');\r\n }\r\n else {\r\n this.filteModel.whereCondition = '';\r\n this.keywordValue = '';\r\n }\r\n\r\n\r\n if (sessionStorage.getItem('saveFilterStateID') != null && sessionStorage.getItem('saveFilterStateID') != '' && sessionStorage.getItem('saveFilterStateID') != 'undefined') {\r\n //debugger\r\n this.listOfStateId = JSON.parse(sessionStorage.getItem('saveFilterStateID'));\r\n this.filteModel.stateID = this.listOfStateId.join(',');\r\n sessionStorage.removeItem('saveFilterStateID');\r\n }\r\n else\r\n this.filteModel.stateID = '';\r\n\r\n\r\n if (sessionStorage.getItem('saveFilterCarrierCategories') != null && sessionStorage.getItem('saveFilterCarrierCategories') != '' && sessionStorage.getItem('saveFilterCarrierCategories') != 'undefined') {\r\n this.listOfCategoryId = JSON.parse(sessionStorage.getItem('saveFilterCarrierCategories'));\r\n this.filteModel.carrierCategories = this.listOfCategoryId.join(',');\r\n sessionStorage.removeItem('saveFilterCarrierCategories');\r\n }\r\n else\r\n this.filteModel.carrierCategories = '';\r\n\r\n if (sessionStorage.getItem('saveFilterUpDownDeadlineDateCSS') != null && sessionStorage.getItem('saveFilterUpDownDeadlineDateCSS') != '' && sessionStorage.getItem('saveFilterUpDownDeadlineDateCSS') != 'undefined') {\r\n this.upDownDeadlineDateCSS = sessionStorage.getItem('saveFilterUpDownDeadlineDateCSS');\r\n sessionStorage.removeItem('saveFilterUpDownDeadlineDateCSS');\r\n }\r\n else\r\n this.upDownDeadlineDateCSS = '';\r\n\r\n if (sessionStorage.getItem('saveFilterUpDownSubjectCSS') != null && sessionStorage.getItem('saveFilterUpDownSubjectCSS') != '' && sessionStorage.getItem('saveFilterUpDownSubjectCSS') != 'undefined') {\r\n this.upDownSubjectCSS = sessionStorage.getItem('saveFilterUpDownSubjectCSS');\r\n sessionStorage.removeItem('saveFilterUpDownSubjectCSS');\r\n }\r\n else\r\n this.upDownSubjectCSS = '';\r\n\r\n if (sessionStorage.getItem('saveFilterUpDownTypeNameCSS') != null && sessionStorage.getItem('saveFilterUpDownTypeNameCSS') != '' && sessionStorage.getItem('saveFilterUpDownTypeNameCSS') != 'undefined') {\r\n this.upDownTypeNameCSS = sessionStorage.getItem('saveFilterUpDownTypeNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownTypeNameCSS');\r\n }\r\n else\r\n this.upDownTypeNameCSS = '';\r\n\r\n\r\n if (sessionStorage.getItem('saveFilterUpDownCompanyNameCSS') != null && sessionStorage.getItem('saveFilterUpDownCompanyNameCSS') != '' && sessionStorage.getItem('saveFilterUpDownCompanyNameCSS') != 'undefined') {\r\n this.upDownCompanyNameCSS = sessionStorage.getItem('saveFilterUpDownCompanyNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownCompanyNameCSS');\r\n }\r\n else\r\n this.upDownCompanyNameCSS = '';\r\n\r\n if (sessionStorage.getItem('saveFilterUpDownStateNameCSS') != null && sessionStorage.getItem('saveFilterUpDownStateNameCSS') != '' && sessionStorage.getItem('saveFilterUpDownStateNameCSS') != 'undefined') {\r\n this.upDownStateNameCSS = sessionStorage.getItem('saveFilterUpDownStateNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownStateNameCSS');\r\n }\r\n else\r\n this.upDownStateNameCSS = '';\r\n\r\n if (sessionStorage.getItem('saveFilterUpDownCarrierNameCSS') != null && sessionStorage.getItem('saveFilterUpDownCarrierNameCSS') != '' && sessionStorage.getItem('saveFilterUpDownCarrierNameCSS') != 'undefined') {\r\n this.upDownCarrierNameCSS = sessionStorage.getItem('saveFilterUpDownCarrierNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownCarrierNameCSS');\r\n }\r\n else\r\n this.upDownCarrierNameCSS = '';\r\n\r\n if (sessionStorage.getItem('saveFilterUpDownActionChargesCSS') != null && sessionStorage.getItem('saveFilterUpDownActionChargesCSS') != '' && sessionStorage.getItem('saveFilterUpDownActionChargesCSS') != 'undefined') {\r\n this.upDownActionChargesCSS = sessionStorage.getItem('saveFilterUpDownActionChargesCSS');\r\n sessionStorage.removeItem('saveFilterUpDownActionChargesCSS');\r\n }\r\n else\r\n this.upDownActionChargesCSS = '';\r\n\r\n if (sessionStorage.getItem('saveFilterUpDownIsActionCSS') != null && sessionStorage.getItem('saveFilterUpDownIsActionCSS') != '' && sessionStorage.getItem('saveFilterUpDownIsActionCSS') != 'undefined') {\r\n this.upDownIsActionCSS = sessionStorage.getItem('saveFilterUpDownIsActionCSS');\r\n sessionStorage.removeItem('saveFilterUpDownIsActionCSS');\r\n }\r\n else\r\n this.upDownIsActionCSS = '';\r\n\r\n if (sessionStorage.getItem('saveFilterUpDownIsInformationOnlyCSS') != null && sessionStorage.getItem('saveFilterUpDownIsInformationOnlyCSS') != '' && sessionStorage.getItem('saveFilterUpDownIsInformationOnlyCSS') != 'undefined') {\r\n this.upDownIsInformationOnlyCSS = sessionStorage.getItem('saveFilterUpDownIsInformationOnlyCSS');\r\n sessionStorage.removeItem('saveFilterUpDownIsInformationOnlyCSS');\r\n }\r\n else\r\n this.upDownIsInformationOnlyCSS = '';\r\n\r\n if (sessionStorage.getItem('saveFilterIsAscending') != null && sessionStorage.getItem('saveFilterIsAscending') != '' && sessionStorage.getItem('saveFilterIsAscending') != 'undefined') {\r\n this.isAscending = sessionStorage.getItem('saveFilterIsAscending') == 'false' ? false : true;\r\n sessionStorage.removeItem('saveFilterIsAscending');\r\n }\r\n else\r\n this.isAscending = false;\r\n\r\n if (sessionStorage.getItem('saveFilterIsActionRequired') != null && sessionStorage.getItem('saveFilterIsActionRequired') != '' && sessionStorage.getItem('saveFilterIsActionRequired') != 'undefined') {\r\n this.filteModel.isActionRequired = sessionStorage.getItem('saveFilterIsActionRequired') == 'false' ? false : true;\r\n this.IsActionRequiredValues = this.filteModel.isActionRequired;\r\n sessionStorage.removeItem('saveFilterIsActionRequired');\r\n }\r\n else {\r\n this.filteModel.isActionRequired = false;\r\n this.IsActionRequiredValues = this.filteModel.isActionRequired;\r\n }\r\n\r\n\r\n if (sessionStorage.getItem('saveFilterOprator') != null && sessionStorage.getItem('saveFilterOprator') != '' && sessionStorage.getItem('saveFilterOprator') != 'undefined') {\r\n this.filteModel.oprator = sessionStorage.getItem('saveFilterOprator');\r\n for (let iCounter = 0; iCounter < this.dropdownDateFilter.length; iCounter++) {\r\n if (this.dropdownDateFilter[iCounter].itemName == this.filteModel.oprator) {\r\n this.selectedItemsDateFilter.push({ \"id\": this.dropdownDateFilter[iCounter].id, \"itemName\": this.dropdownDateFilter[iCounter].itemName })\r\n }\r\n }\r\n sessionStorage.removeItem('saveFilterOprator');\r\n }\r\n else\r\n this.filteModel.oprator = '';\r\n\r\n if (sessionStorage.getItem('saveFilterFromDate') != null && sessionStorage.getItem('saveFilterFromDate') != '' && sessionStorage.getItem('saveFilterFromDate') != 'undefined') {\r\n this.filteModel.fromDate = sessionStorage.getItem('saveFilterFromDate');\r\n this.singleDate = this.filteModel.fromDate;\r\n sessionStorage.removeItem('saveFilterFromDate');\r\n }\r\n else\r\n this.filteModel.fromDate = '';\r\n\r\n if (sessionStorage.getItem('saveFilterToDate') != null && sessionStorage.getItem('saveFilterToDate') != '' && sessionStorage.getItem('saveFilterToDate') != 'undefined') {\r\n this.filteModel.toDate = sessionStorage.getItem('saveFilterToDate');\r\n sessionStorage.removeItem('saveFilterToDate');\r\n }\r\n else\r\n this.filteModel.toDate = '';\r\n\r\n //debugger;\r\n if (this.filteModel.fromDate != '' && this.filteModel.toDate != '') {\r\n const s = new Date(this.filteModel.fromDate);\r\n const e = new Date(this.filteModel.toDate);\r\n this.isDateRangShow = true;\r\n this.bsRangeValue = [s, e]\r\n }\r\n\r\n if (sessionStorage.getItem('saveFilterListOfType') != null && sessionStorage.getItem('saveFilterListOfType') != '' && sessionStorage.getItem('saveFilterListOfType') != 'undefined') {\r\n this.filteModel.listOfType = sessionStorage.getItem('saveFilterListOfType');\r\n sessionStorage.removeItem('saveFilterListOfType');\r\n }\r\n else\r\n this.filteModel.listOfType = '';\r\n }\r\n\r\n isDeadlineDate(dateArray: any) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n if (dateArray != null) {\r\n let dd1 = dateArray.getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (dateArray.getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n this.filteModel.fromDate = mm1 + '-' + dd1 + '-' + dateArray.getFullYear();\r\n this.singleDate = mm1 + '-' + dd1 + '-' + dateArray.getFullYear();\r\n }\r\n else\r\n this.filteModel.fromDate = '';\r\n\r\n if (this.filteModel.oprator != '')\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onValueChange(value: Date): void {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n const d = new Date(value[0]);\r\n const a = [this.pad(d.getMonth() + 1), this.pad(d.getDate()), d.getFullYear()].join('/');\r\n\r\n const e = new Date(value[1]);\r\n const f = [this.pad(e.getMonth() + 1), this.pad(e.getDate()), e.getFullYear()].join('/');\r\n //debugger\r\n\r\n this.filteModel.fromDate = a;\r\n this.filteModel.toDate = f;\r\n // this.parentSearchModel.dateFrom = a;\r\n // this.parentSearchModel.toDate = f;\r\n if (this.filteModel.oprator != '')\r\n this.AdminActionItemFindByPages();\r\n\r\n }\r\n\r\n pad(s) {\r\n return (s < 10) ? '0' + s : s;\r\n }\r\n\r\n onSelectedDateFilter($event) {\r\n //debugger\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n this.listOfDateFilterId = [];\r\n if (this.listOfDateFilterId != null) {\r\n if (this.listOfDateFilterId.length > 0) {\r\n this.listOfDateFilterId = this.removeElemetninArray(this.listOfDateFilterId, $event.id)\r\n this.listOfDateFilterId.push($event.id);\r\n }\r\n else {\r\n this.listOfDateFilterId.push($event.id);\r\n\r\n if ($event.id == 3) {\r\n this.isDateRangShow = true;\r\n }\r\n else {\r\n this.isDateRangShow = false;\r\n this.filteModel.toDate = '';\r\n }\r\n }\r\n this.filteModel.oprator = $event.itemName;\r\n }\r\n if (this.filteModel.fromDate != '')\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onDeSelectedDateFilter($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n if (this.listOfDateFilterId != null) {\r\n if (this.listOfDateFilterId.length > 0) {\r\n this.listOfDateFilterId = this.removeElemetninArray(this.listOfDateFilterId, $event.id)\r\n }\r\n }\r\n if ($event.id == 3) {\r\n this.isDateRangShow = true;\r\n }\r\n else {\r\n this.isDateRangShow = false;\r\n this.filteModel.toDate = '';\r\n }\r\n this.filteModel.oprator = $event.itemName;\r\n\r\n if (this.filteModel.fromDate != '')\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onDeSelectDateFilterAll($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n this.listOfDateFilterId = [];\r\n this.isDateRangShow = false;\r\n this.filteModel.oprator = '';\r\n this.filteModel.fromDate = '';\r\n this.filteModel.toDate = '';\r\n this.singleDate = '';\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n ActionTypes(): void {\r\n //this.isloading = true; \r\n this.dropdownListTypes = [];\r\n this.actionItemServices.GetActionItemsType(this.tokenKey).subscribe(\r\n data => {\r\n if (data[\"actionType\"] != null && data[\"status\"] != \"Failure\") {\r\n\r\n for (let iCounter = 0; iCounter < data[\"actionType\"].length; iCounter++) {\r\n // Remove Company Specific\r\n if (data[\"actionType\"][iCounter].actionItemTypeId != 5) {\r\n this.dropdownListTypes.push(\r\n { \"id\": data[\"actionType\"][iCounter].actionItemTypeId, \"itemName\": data[\"actionType\"][iCounter].typeName }\r\n );\r\n }\r\n }\r\n\r\n //debugger;\r\n if (this.filteModel.listOfType != '') {\r\n let arry = this.filteModel.listOfType.split(',');\r\n for (let iCounter = 0; iCounter < arry.length; iCounter++) {\r\n let obj = data[\"actionType\"].filter(m => m.actionItemTypeId == arry[iCounter]);\r\n if (obj != null) {\r\n if (obj.length > 0) {\r\n this.selectedItemsTypes.push({ \"id\": obj[0].actionItemTypeId, \"itemName\": obj[0].typeName })\r\n this.listOfTypes.push(arry[iCounter]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n }\r\n this.dropdownSettingsTypes = {\r\n singleSelection: false,\r\n text: \"Select Category(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No category(s) Available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n // Action Type\r\n onSelectedActionType($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n if (this.listOfTypes != null) {\r\n if (this.listOfTypes.length > 0) {\r\n this.listOfTypes = this.removeElemetninArray(this.listOfTypes, $event.id)\r\n this.listOfTypes.push($event.id);\r\n }\r\n else {\r\n this.listOfTypes.push($event.id);\r\n }\r\n }\r\n this.filteModel.listOfType = this.listOfTypes.join(',');\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onSelectAllCategory($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfTypes != null) {\r\n if (this.listOfTypes.length > 0) {\r\n this.listOfTypes = this.removeElemetninArray(this.listOfTypes, $event[iCounter].id)\r\n this.listOfTypes.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfTypes.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n this.filteModel.listOfType = this.listOfTypes.join(',');\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onDeSelectedActionType($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n if (this.listOfTypes != null) {\r\n if (this.listOfTypes.length > 0) {\r\n this.listOfTypes = this.removeElemetninArray(this.listOfTypes, $event.id)\r\n }\r\n }\r\n this.filteModel.listOfType = this.listOfTypes.join(',');\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n onDeSelectAllActionType($event) {\r\n this.filteModel.pageNumber = '1';\r\n this.currentPage = 1;\r\n this.listOfTypes = [];\r\n this.filteModel.listOfType = this.listOfTypes.join(',');\r\n this.AdminActionItemFindByPages();\r\n }\r\n\r\n}\r\n","export default \".switch {\\r\\n position: relative;\\r\\n display: inline-block;\\r\\n width: 60px;\\r\\n height: 34px;\\r\\n }\\r\\n \\r\\n .switch input {\\r\\n opacity: 0;\\r\\n width: 0;\\r\\n height: 0;\\r\\n }\\r\\n \\r\\n .slider {\\r\\n position: absolute;\\r\\n cursor: pointer;\\r\\n top: 0;\\r\\n left: 0;\\r\\n right: 0;\\r\\n bottom: 0;\\r\\n background-color: #ccc;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n \\r\\n .slider:before {\\r\\n position: absolute;\\r\\n content: \\\"\\\";\\r\\n height: 26px;\\r\\n width: 26px;\\r\\n left: 4px;\\r\\n bottom: 4px;\\r\\n background-color: white;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n \\r\\n input:checked + .slider {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n input:focus + .slider {\\r\\n box-shadow: 0 0 1px #0039BF;\\r\\n }\\r\\n \\r\\n input:checked + .slider:before {\\r\\n -webkit-transform: translateX(26px);\\r\\n transform: translateX(26px);\\r\\n }\\r\\n \\r\\n /* Rounded sliders */\\r\\n \\r\\n .slider.round {\\r\\n border-radius: 34px;\\r\\n }\\r\\n \\r\\n .slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n \\r\\n .ehslabelscoll label {\\r\\n display: block;\\r\\n padding-bottom: 5px;\\r\\n font-weight: normal;\\r\\n }\\r\\n \\r\\n .ehslabelscoll input {\\r\\n margin-right: 3px;\\r\\n }\\r\\n \\r\\n .custom-checkbox .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #0039BF;\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n button.calendar, button.calendar:active {\\r\\n width: 2.75rem;\\r\\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAcCAYAAAAEN20fAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAEUSURBVEiJ7ZQxToVAEIY/YCHGxN6XGOIpnpaEsBSeQC9ArZbm9TZ6ADyBNzAhQGGl8Riv4BLAWAgmkpBYkH1b8FWT2WK/zJ8ZJ4qiI6XUI3ANnGKWBnht2/ZBDRK3hgVGNsCd7/ui+JkEIrKtqurLpEWaphd933+IyI3LEIdpCYCiKD6HcuOa/nwOa0ScJEnk0BJg0UTUWJRl6RxCYEzEmomsIlPU3IPW+grIAbquy+q6fluy/28RIBeRMwDXdXMgXLj/B2uimRXpui4D9sBeRLKl+1N+L+t6RwbWrZliTTTr1oxYtzVWiTQAcRxvTX+eJMnlUDaO1vpZRO5NS0x48sIwfPc87xg4B04MCzQi8hIEwe4bl1DnFMCN2zsAAAAASUVORK5CYII=') !important;\\r\\n background-repeat: no-repeat;\\r\\n background-size: 23px;\\r\\n background-position: center;\\r\\n }\\r\\n \\r\\n /* Customize the label (the container) */\\r\\n \\r\\n .container {\\r\\n display: block;\\r\\n position: relative;\\r\\n padding-left: 30px;\\r\\n margin-bottom: 0px;\\r\\n cursor: pointer;\\r\\n font-size: 12px;\\r\\n -webkit-user-select: none;\\r\\n -moz-user-select: none;\\r\\n -ms-user-select: none;\\r\\n user-select: none;\\r\\n }\\r\\n \\r\\n /* Hide the browser's default checkbox */\\r\\n \\r\\n .container input {\\r\\n position: absolute;\\r\\n opacity: 0;\\r\\n cursor: pointer;\\r\\n height: 0;\\r\\n width: 0;\\r\\n }\\r\\n \\r\\n /* Create a custom checkbox */\\r\\n \\r\\n .checkmark {\\r\\n position: absolute;\\r\\n top: 0;\\r\\n left: 0;\\r\\n height: 17px;\\r\\n width: 17px;\\r\\n background-color: #eee;\\r\\n border-radius: 5px;\\r\\n }\\r\\n \\r\\n /* On mouse-over, add a grey background color\\r\\n .container:hover input ~ .checkmark {\\r\\n background-color: #eeeeee !important;\\r\\n } */\\r\\n \\r\\n /* When the checkbox is checked, add a blue background */\\r\\n \\r\\n .container input:checked ~ .checkmark {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n /* Create the checkmark/indicator (hidden when not checked) */\\r\\n \\r\\n .checkmark:after {\\r\\n content: \\\"\\\";\\r\\n position: absolute;\\r\\n display: none;\\r\\n }\\r\\n \\r\\n /* Show the checkmark when checked */\\r\\n \\r\\n input:checked ~ .checkmark:after {\\r\\n display: block;\\r\\n }\\r\\n \\r\\n /* Style the checkmark/indicator */\\r\\n \\r\\n .container .checkmark:after {\\r\\n left: 6px;\\r\\n top: 3px;\\r\\n width:6px;\\r\\n height: 9px;\\r\\n border: solid white;\\r\\n border-width: 0 2px 2px 0;\\r\\n -webkit-transform: rotate(45deg);\\r\\n transform: rotate(45deg);\\r\\n font-family: 'Sarabun', sans-serif;\\r\\n }\\r\\n \\r\\n /* ::ng-deep h4, ::ng-deep [data-label=\\\"Citation\\\"] {\\r\\n color: #a4123f;\\r\\n font-weight: 600;\\r\\n font-style: italic;\\r\\n font-size: 13px;\\r\\n margin-top: 0;\\r\\n } */\\r\\n \\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vYWN0aW9uLWl0ZW0vYWN0aW9uLWl0ZW0tbGlzdC9tYW5hZ2UtYWN0aW9uLWl0ZW0uY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLGtCQUFrQjtJQUNsQixxQkFBcUI7SUFDckIsV0FBVztJQUNYLFlBQVk7RUFDZDs7SUFFRTtNQUNFLFVBQVU7TUFDVixRQUFRO01BQ1IsU0FBUztJQUNYOztJQUVGO0lBQ0Usa0JBQWtCO0lBQ2xCLGVBQWU7SUFDZixNQUFNO0lBQ04sT0FBTztJQUNQLFFBQVE7SUFDUixTQUFTO0lBQ1Qsc0JBQXNCO0lBQ3RCLHVCQUF1QjtJQUN2QixlQUFlO0VBQ2pCOztJQUVFO01BQ0Usa0JBQWtCO01BQ2xCLFdBQVc7TUFDWCxZQUFZO01BQ1osV0FBVztNQUNYLFNBQVM7TUFDVCxXQUFXO01BQ1gsdUJBQXVCO01BQ3ZCLHVCQUF1QjtNQUN2QixlQUFlO0lBQ2pCOztJQUVGO0lBQ0UseUJBQXlCO0VBQzNCOztJQUVBO0lBQ0UsMkJBQTJCO0VBQzdCOztJQUVBO0lBQ0UsbUNBQW1DO0lBRW5DLDJCQUEyQjtFQUM3Qjs7SUFFQSxvQkFBb0I7O0lBQ3BCO0lBQ0UsbUJBQW1CO0VBQ3JCOztJQUVFO01BQ0Usa0JBQWtCO0lBQ3BCOztJQUVGO0lBQ0UsY0FBYztJQUNkLG1CQUFtQjtJQUNuQixtQkFBbUI7RUFDckI7O0lBRUE7SUFDRSxpQkFBaUI7RUFDbkI7O0lBRUE7SUFDRSx5QkFBeUI7RUFDM0I7O0lBRUE7SUFDRSx5QkFBeUI7SUFDekIsV0FBVztFQUNiOztJQUVBO0lBQ0UsY0FBYztJQUNkLDBsQkFBMGxCO0lBQzFsQiw0QkFBNEI7SUFDNUIscUJBQXFCO0lBQ3JCLDJCQUEyQjtFQUM3Qjs7SUFFQSx3Q0FBd0M7O0lBQ3hDO0lBQ0UsY0FBYztJQUNkLGtCQUFrQjtJQUNsQixrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLGVBQWU7SUFDZixlQUFlO0lBQ2YseUJBQXlCO0lBQ3pCLHNCQUFzQjtJQUN0QixxQkFBcUI7SUFDckIsaUJBQWlCO0VBQ25COztJQUNBLHdDQUF3Qzs7SUFDeEM7SUFDRSxrQkFBa0I7SUFDbEIsVUFBVTtJQUNWLGVBQWU7SUFDZixTQUFTO0lBQ1QsUUFBUTtFQUNWOztJQUdBLDZCQUE2Qjs7SUFDN0I7SUFDRSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87SUFDUCxZQUFZO0lBQ1osV0FBVztJQUNYLHNCQUFzQjtJQUN0QixrQkFBa0I7RUFDcEI7O0lBRUE7OztLQUdHOztJQUVILHdEQUF3RDs7SUFDeEQ7SUFDRSx5QkFBeUI7RUFDM0I7O0lBRUEsNkRBQTZEOztJQUM3RDtJQUNFLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsYUFBYTtFQUNmOztJQUVBLG9DQUFvQzs7SUFDcEM7SUFDRSxjQUFjO0VBQ2hCOztJQUVBLGtDQUFrQzs7SUFDbEM7SUFDRSxTQUFTO01BQ1AsUUFBUTtNQUNSLFNBQVM7TUFDVCxXQUFXO0lBQ2IsbUJBQW1CO0lBQ25CLHlCQUF5QjtJQUN6QixnQ0FBZ0M7SUFFaEMsd0JBQXdCO0lBQ3hCLGtDQUFrQztFQUNwQzs7SUFHQTs7Ozs7O0tBTUciLCJmaWxlIjoic3JjL2FwcC9BZG1pbi9hY3Rpb24taXRlbS9hY3Rpb24taXRlbS1saXN0L21hbmFnZS1hY3Rpb24taXRlbS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnN3aXRjaCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDogNjBweDtcclxuICAgIGhlaWdodDogMzRweDtcclxuICB9XHJcbiAgXHJcbiAgICAuc3dpdGNoIGlucHV0IHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgd2lkdGg6IDA7XHJcbiAgICAgIGhlaWdodDogMDtcclxuICAgIH1cclxuICBcclxuICAuc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC40cztcclxuICAgIHRyYW5zaXRpb246IC40cztcclxuICB9XHJcbiAgXHJcbiAgICAuc2xpZGVyOmJlZm9yZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgaGVpZ2h0OiAyNnB4O1xyXG4gICAgICB3aWR0aDogMjZweDtcclxuICAgICAgbGVmdDogNHB4O1xyXG4gICAgICBib3R0b206IDRweDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gICAgICB0cmFuc2l0aW9uOiAuNHM7XHJcbiAgICB9XHJcbiAgXHJcbiAgaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRjtcclxuICB9XHJcbiAgXHJcbiAgaW5wdXQ6Zm9jdXMgKyAuc2xpZGVyIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggIzAwMzlCRjtcclxuICB9XHJcbiAgXHJcbiAgaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXI6YmVmb3JlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcclxuICB9XHJcbiAgXHJcbiAgLyogUm91bmRlZCBzbGlkZXJzICovXHJcbiAgLnNsaWRlci5yb3VuZCB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzNHB4O1xyXG4gIH1cclxuICBcclxuICAgIC5zbGlkZXIucm91bmQ6YmVmb3JlIHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgfVxyXG4gIFxyXG4gIC5laHNsYWJlbHNjb2xsIGxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgfVxyXG4gIFxyXG4gIC5laHNsYWJlbHNjb2xsIGlucHV0IHtcclxuICAgIG1hcmdpbi1yaWdodDogM3B4O1xyXG4gIH1cclxuICBcclxuICAuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG4gIH1cclxuICBcclxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRjtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuXHJcbiAgYnV0dG9uLmNhbGVuZGFyLCBidXR0b24uY2FsZW5kYXI6YWN0aXZlIHtcclxuICAgIHdpZHRoOiAyLjc1cmVtO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNJQUFBQWNDQVlBQUFBRU4yMGZBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQU94QUFBRHNRQmxTc09Hd0FBQUJsMFJWaDBVMjltZEhkaGNtVUFkM2QzTG1sdWEzTmpZWEJsTG05eVo1dnVQQm9BQUFFVVNVUkJWRWlKN1pReFRvVkFFSVkvWUNIR3hONlhHT0lwbnBhRXNCU2VRQzlBclpibTlUWjZBRHlCTnpBaFFHR2w4Uml2NEJMQVdBZ21rcEJZa0gxYjhGV1QyV0sveko4Wko0cWlJNlhVSTNBTm5HS1dCbmh0Mi9aQkRSSzNoZ1ZHTnNDZDcvdWkrSmtFSXJLdHF1ckxwRVdhcGhkOTMzK0l5STNMRUlkcENZQ2lLRDZIY3VPYS9ud09hMFNjSkVuazBCSmcwVVRVV0pSbDZSeENZRXpFbW9tc0lsUFUzSVBXK2dySUFicXV5K3E2Zmx1eS8yOFJJQmVSTXdEWGRYTWdYTGovQjJ1aW1SWHB1aTREOXNCZVJMS2wrMU4rTCt0NlJ3YldyWmxpVFRUcjFveFl0elZXaVRRQWNSeHZUWCtlSk1ubFVEYU8xdnBaUk81TlMweDQ4c0l3ZlBjODd4ZzRCMDRNQ3pRaThoSUV3ZTRibDFEbkZNQ04yenNBQUFBQVNVVk9SSzVDWUlJPScpICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAyM3B4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gIH1cclxuICBcclxuICAvKiBDdXN0b21pemUgdGhlIGxhYmVsICh0aGUgY29udGFpbmVyKSAqL1xyXG4gIC5jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIH1cclxuICAvKiBIaWRlIHRoZSBicm93c2VyJ3MgZGVmYXVsdCBjaGVja2JveCAqL1xyXG4gIC5jb250YWluZXIgaW5wdXQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHdpZHRoOiAwO1xyXG4gIH1cclxuICBcclxuICBcclxuICAvKiBDcmVhdGUgYSBjdXN0b20gY2hlY2tib3ggKi9cclxuICAuY2hlY2ttYXJrIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBoZWlnaHQ6IDE3cHg7XHJcbiAgICB3aWR0aDogMTdweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgfVxyXG4gIFxyXG4gIC8qIE9uIG1vdXNlLW92ZXIsIGFkZCBhIGdyZXkgYmFja2dyb3VuZCBjb2xvclxyXG4gIC5jb250YWluZXI6aG92ZXIgaW5wdXQgfiAuY2hlY2ttYXJrIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWUgIWltcG9ydGFudDtcclxuICB9ICovXHJcbiAgXHJcbiAgLyogV2hlbiB0aGUgY2hlY2tib3ggaXMgY2hlY2tlZCwgYWRkIGEgYmx1ZSBiYWNrZ3JvdW5kICovXHJcbiAgLmNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyayB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG4gIH1cclxuICBcclxuICAvKiBDcmVhdGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKGhpZGRlbiB3aGVuIG5vdCBjaGVja2VkKSAqL1xyXG4gIC5jaGVja21hcms6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIFxyXG4gIC8qIFNob3cgdGhlIGNoZWNrbWFyayB3aGVuIGNoZWNrZWQgKi9cclxuICBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyazphZnRlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbiAgXHJcbiAgLyogU3R5bGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKi9cclxuICAuY29udGFpbmVyIC5jaGVja21hcms6YWZ0ZXIge1xyXG4gICAgbGVmdDogNnB4O1xyXG4gICAgICB0b3A6IDNweDtcclxuICAgICAgd2lkdGg6NnB4O1xyXG4gICAgICBoZWlnaHQ6IDlweDtcclxuICAgIGJvcmRlcjogc29saWQgd2hpdGU7XHJcbiAgICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgZm9udC1mYW1pbHk6ICdTYXJhYnVuJywgc2Fucy1zZXJpZjtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgLyogOjpuZy1kZWVwIGg0LCA6Om5nLWRlZXAgW2RhdGEtbGFiZWw9XCJDaXRhdGlvblwiXSB7XHJcbiAgICBjb2xvcjogI2E0MTIzZjtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH0gKi9cclxuICAiXX0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { StateMasterService } from '../../../../Services/state-master.service';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { ToolEnum, AdminUserType } from '../../../../Models/Common';\r\nimport { ActionItemService } from '../../../../Services/actionitem.service';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { AddNewActionModel } from 'src/Models/AddNewActionModel';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ClientCompanyModel } from 'src/Models/ClientCompanyModel';\r\nimport { userModel } from 'src/Models/usersModel';\r\nimport { updatesService } from '../../../../Services/updatesService';\r\nimport { UsersService } from '../../../../Services/users.service';\r\nimport { Params, ActivatedRoute } from '@angular/router';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-manage-action-item',\r\n templateUrl: './manage-action-item.component.html',\r\n styleUrls: ['./manage-action-item.component.css']\r\n})\r\nexport class ManageActionItemComponent implements OnInit {\r\n tokenKey: string = '';\r\n userID: number = 0;\r\n SelectedTool: string;\r\n productId: number = 1;\r\n\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n listOfState = [];\r\n\r\n dropdownListTypes = [];\r\n selectedItemsTypes = [];\r\n dropdownSettingsTypes = {};\r\n listOfTypes = [];\r\n\r\n dropdownListCategory = [];\r\n selectedItemsCategory = [];\r\n dropdownSettingsCategory = {};\r\n listOfCategory = [];\r\n\r\n addUpdateActionItem = new FormGroup({\r\n actionItemId: new FormControl(''),\r\n deadLineDate: new FormControl(''),\r\n state: new FormControl(''),\r\n description: new FormControl(''),\r\n types: new FormControl(''),\r\n carrierCategories: new FormControl(''),\r\n subject: new FormControl(''),\r\n isNeworChanged: new FormControl(''),\r\n clientCompanyId: new FormControl(''),\r\n companyUserId: new FormControl(''),\r\n isUpdateRequired: new FormControl(0),\r\n actionCharges: new FormControl(''),\r\n actionNotes: new FormControl(''),\r\n isSendEmailNotification: new FormControl(0),\r\n isInformationOnly: new FormControl(0),\r\n });\r\n\r\n addNewActionModel = new AddNewActionModel();\r\n\r\n clientCompanyList: ClientCompanyModel[];\r\n dropdownListclientCompany = [];\r\n selectedItemsclientCompany = [];\r\n dropdownSettingclientCompany = {};\r\n listOfCompany = [];\r\n\r\n userModel: userModel[];\r\n dropdownListclientCompanyUser = [];\r\n selectedItemsclientCompanyUser = [];\r\n dropdownSettingclientCompanyUser = {};\r\n listOfUsers = [];\r\n\r\n actionId: number = 0;\r\n\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean;\r\n isEnableDisable: boolean = false;\r\n isClone: boolean = false;\r\n actionChargesValue: any = 0;\r\n actionNotesValue: string = '';\r\n isSendEmailNotificationChecked: boolean = true;\r\n systemUserCondition: string = '';\r\n isThisUpdateRequiresActionToPerform: boolean = true;\r\n \r\n isUpdateRequiredChecked: boolean = false;\r\n\r\n constructor(private router: Router, private activedRoute: ActivatedRoute, private updatesService: updatesService, private titleService: Title,\r\n private actionItemServices: ActionItemService, private checkAuth: CheckAuth, private userServices: UsersService,\r\n private toastr: ToastrService, private stateMasterService: StateMasterService) {\r\n\r\n this.userID = +sessionStorage.getItem('AdminUserId');\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n let ActionItemCloneId = +sessionStorage.getItem('ActionItemClone');\r\n if (ActionItemCloneId > 0) {\r\n this.isClone = true;\r\n }\r\n else {\r\n this.isClone = false;\r\n }\r\n\r\n if (this.isClone) {\r\n this.titleService.setTitle('Clone Trac-It Entry');\r\n }\r\n else\r\n this.titleService.setTitle('Manage Trac-It Entry');\r\n\r\n if (AdminUserType.systemadmin == parseInt(sessionStorage.getItem('adminTypeId')))\r\n this.systemUserCondition = 'null'\r\n else\r\n this.systemUserCondition = ' (CompanyId IN (Select CompanyId From [SystemUserCompany] Where [SystemUserCompany].UserId = ' + this.userID + '))';\r\n }\r\n\r\n ngOnInit() {\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n\r\n if (params['id']) {\r\n\r\n if (params['id'] != null) {\r\n this.actionId = params['id'];\r\n this.GetActionSearchById();\r\n }\r\n }\r\n else {\r\n this.actionId = 0;\r\n this.setDropDownSetting();\r\n this.GetStateData();\r\n this.GetCarrierCategories();\r\n this.ActionTypes();\r\n this.GetClientCompany();\r\n }\r\n });\r\n\r\n\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n GetActionSearchById() {\r\n this.actionItemServices.GetActionSearchById(this.tokenKey, this.actionId).subscribe(\r\n data => {\r\n\r\n if (data['status'] == 'Success') {\r\n //this.addNewActionModel = data['actionModel'].actionModel;\r\n if (data['actionModel'] != null) {\r\n\r\n if (data['actionModel'].actionModel != null) {\r\n let deadLineDate = new Date(data['actionModel'].actionModel.deadLineDate);\r\n\r\n let dd1 = deadLineDate.getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (deadLineDate.getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n let dtdeadLineDate = mm1 + '-' + dd1 + '-' + deadLineDate.getFullYear();\r\n\r\n this.addUpdateActionItem.setValue({\r\n 'actionItemId': data['actionModel'].actionModel.actionId,\r\n 'clientCompanyId': [],\r\n 'companyUserId': [],\r\n 'deadLineDate': dtdeadLineDate,\r\n 'state': [],\r\n 'types': [],\r\n 'carrierCategories': [],\r\n 'subject': data['actionModel'].actionModel.subject,\r\n 'isNeworChanged': data['actionModel'].actionModel.isNeworChanged,\r\n 'description': data['actionModel'].actionModel.description,\r\n 'isUpdateRequired': data['actionModel'].actionModel.isAction,\r\n 'actionCharges': data['actionModel'].actionModel.actionCharges,\r\n 'actionNotes': data['actionModel'].actionModel.actionNotes,\r\n 'isSendEmailNotification': this.isSendEmailNotificationChecked,\r\n 'isInformationOnly': data['actionModel'].actionModel.isInformationOnly,\r\n });\r\n if (data['actionModel'].actionModel.isInformationOnly)\r\n this.isThisUpdateRequiresActionToPerform = false;\r\n else\r\n this.isThisUpdateRequiresActionToPerform = true;\r\n this.isEnableDisable = data['actionModel'].actionModel.isAction;\r\n }\r\n\r\n this.selectedItemsTypes = [];\r\n this.listOfTypes = [];\r\n if (data['actionModel'].actionModel.actionItemTypeId > 0) {\r\n this.selectedItemsTypes.push({ \"id\": data['actionModel'].actionModel.actionItemTypeId, \"itemName\": data['actionModel'].actionModel.actionItemTypeName });\r\n this.listOfTypes.push(data['actionModel'].actionModel.actionItemTypeId);\r\n }\r\n\r\n this.selectedItemsclientCompany = [];\r\n this.listOfCompany = [];\r\n if (data['actionModel'].actionModel.companyId > 0) {\r\n this.selectedItemsclientCompany.push({ \"id\": data['actionModel'].actionModel.companyId, \"itemName\": data['actionModel'].actionModel.companyName });\r\n this.listOfCompany.push(data['actionModel'].actionModel.companyId);\r\n this.GetCompanyUser(data['actionModel'].actionModel.companyId);\r\n }\r\n\r\n this.selectedItemsclientCompanyUser = [];\r\n this.listOfUsers = [];\r\n if (data['actionModel'].companyUserUpdateModel.length > 0) {\r\n this.selectedItemsclientCompanyUser = [];\r\n for (let iCounter = 0; iCounter < data['actionModel'].companyUserUpdateModel.length; iCounter++) {\r\n this.selectedItemsclientCompanyUser.push({ \"id\": data['actionModel'].companyUserUpdateModel[iCounter].userId, \"itemName\": data['actionModel'].companyUserUpdateModel[iCounter].userName });\r\n this.listOfUsers.push(data['actionModel'].companyUserUpdateModel[iCounter].userId);\r\n }\r\n }\r\n\r\n if (data['actionModel'].actionStateModel.length > 0) {\r\n this.selectedItemsState = [];\r\n this.listOfState = [];\r\n for (let iCounter = 0; iCounter < data['actionModel'].actionStateModel.length; iCounter++) {\r\n this.selectedItemsState.push({ \"id\": data['actionModel'].actionStateModel[iCounter].stateId, \"itemName\": data['actionModel'].actionStateModel[iCounter].stateName });\r\n this.listOfState.push(data['actionModel'].actionStateModel[iCounter].stateId);\r\n }\r\n }\r\n\r\n if (data['actionModel'].actionCarrierModel.length > 0) {\r\n this.selectedItemsCategory = [];\r\n this.listOfCategory = [];\r\n for (let iCounter = 0; iCounter < data['actionModel'].actionCarrierModel.length; iCounter++) {\r\n this.selectedItemsCategory.push({ \"id\": data['actionModel'].actionCarrierModel[iCounter].carrierCatId, \"itemName\": data['actionModel'].actionCarrierModel[iCounter].carrierName });\r\n this.listOfCategory.push(data['actionModel'].actionCarrierModel[iCounter].carrierCatId);\r\n }\r\n }\r\n\r\n }\r\n\r\n this.setDropDownSetting();\r\n this.GetStateData();\r\n this.GetCarrierCategories();\r\n this.ActionTypes();\r\n this.GetClientCompany();\r\n }\r\n });\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n setDropDownSetting() {\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: 'Select state',\r\n enableSearchFilter: false,\r\n classes: 'borderLessTextBoxGreen',\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: true\r\n };\r\n\r\n this.dropdownSettingsTypes = {\r\n singleSelection: false,\r\n text: 'Select Category(s)',\r\n enableSearchFilter: false,\r\n classes: 'borderLessTextBoxGreen',\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No category(s) available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: true\r\n };\r\n\r\n this.dropdownSettingsCategory = {\r\n singleSelection: false,\r\n text: 'Select Carrier Type(s)',\r\n enableSearchFilter: false,\r\n classes: 'borderLessTextBoxGreen',\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No carrier type(s) available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: true\r\n };\r\n\r\n this.dropdownSettingclientCompany = {\r\n singleSelection: true,\r\n text: \"Select Company\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No data available for selected company',\r\n showCheckbox: false\r\n };\r\n\r\n this.dropdownSettingclientCompanyUser = {\r\n singleSelection: false,\r\n text: \"Select User\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No data available for selected user',\r\n showCheckbox: true\r\n };\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n GetStateData(): void {\r\n this.stateMasterService.getState(this.tokenKey, this.productId).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n // Set All Item\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push({ \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name });\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n GetCarrierCategories() {\r\n this.actionItemServices.GetCarrierCategories(this.tokenKey).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n let carrierCategories = data['companyModel'];\r\n if (carrierCategories != null) {\r\n if (carrierCategories.length > 0) {\r\n for (let iCounter = 0; iCounter < carrierCategories.length; iCounter++) {\r\n if (carrierCategories[iCounter].isActive)\r\n this.dropdownListCategory.push({ \"id\": parseInt(carrierCategories[iCounter].carrierCatId), \"itemName\": carrierCategories[iCounter].carrierCatName });\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.dropdownSettingsCategory = {\r\n singleSelection: false,\r\n text: \"Select Carrier Type(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No carrier type(s) available',\r\n showCheckbox: true\r\n };\r\n });\r\n }\r\n\r\n ActionTypes(): void {\r\n //this.isloading = true; \r\n this.dropdownListTypes = [];\r\n this.actionItemServices.GetActionItemsType(this.tokenKey).subscribe(\r\n data => {\r\n if (data[\"actionType\"] != null && data[\"status\"] != \"Failure\") {\r\n\r\n for (let iCounter = 0; iCounter < data[\"actionType\"].length; iCounter++) {\r\n // Remove Company Specific\r\n if (data[\"actionType\"][iCounter].actionItemTypeId != 5) {\r\n this.dropdownListTypes.push(\r\n { \"id\": data[\"actionType\"][iCounter].actionItemTypeId, \"itemName\": data[\"actionType\"][iCounter].typeName }\r\n );\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n }\r\n this.dropdownSettingsTypes = {\r\n singleSelection: true,\r\n text: \"Select Category(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No category(s) Available',\r\n showCheckbox: false,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n isDeadlineDate(dateArray: any) {\r\n if (dateArray != null) {\r\n let dd1 = dateArray.getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (dateArray.getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n this.addNewActionModel.deadLineDate = mm1 + '-' + dd1 + '-' + dateArray.getFullYear();\r\n }\r\n else\r\n this.addNewActionModel.deadLineDate = null;\r\n }\r\n\r\n GetClientCompany() {\r\n this.clientCompanyList = [];\r\n this.updatesService.GetClientCompany(this.tokenKey, this.productId, this.systemUserCondition).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.clientCompanyList = data['clientCompanay'];\r\n\r\n if (this.clientCompanyList != null) {\r\n if (this.clientCompanyList.length > 0) {\r\n for (let iCounter = 0; iCounter < this.clientCompanyList.length; iCounter++) {\r\n this.dropdownListclientCompany.push(\r\n { \"id\": this.clientCompanyList[iCounter].companyId, \"itemName\": this.clientCompanyList[iCounter].companyName }\r\n );\r\n }\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n onSelectedCompany($event) {\r\n\r\n this.listOfCompany = [];\r\n let companyId = $event.id;\r\n this.selectedItemsclientCompanyUser = [];\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event.id)\r\n this.listOfCompany.push($event.id);\r\n }\r\n else {\r\n this.listOfCompany.push($event.id);\r\n }\r\n }\r\n this.GetCompanyUser(companyId);\r\n }\r\n\r\n onDeSelectedCompany($event) {\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onSelectAllCompany($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event[iCounter].id)\r\n this.listOfCompany.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfCompany.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllCompany($event) {\r\n this.dropdownListclientCompanyUser = [];\r\n this.selectedItemsclientCompanyUser = [];\r\n this.listOfUsers = [];\r\n this.listOfCompany = [];\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n // Users \r\n onSelectedUsers($event) {\r\n\r\n if (this.listOfUsers != null) {\r\n if (this.listOfUsers.length > 0) {\r\n this.listOfUsers = this.removeElemetninArray(this.listOfUsers, $event.id)\r\n this.listOfUsers.push($event.id);\r\n }\r\n else {\r\n this.listOfUsers.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeSelectedUsers($event) {\r\n if (this.listOfUsers != null) {\r\n if (this.listOfUsers.length > 0) {\r\n this.listOfUsers = this.removeElemetninArray(this.listOfUsers, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onSelectAllUsers($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfUsers != null) {\r\n if (this.listOfUsers.length > 0) {\r\n this.listOfUsers = this.removeElemetninArray(this.listOfUsers, $event[iCounter].id)\r\n this.listOfUsers.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfUsers.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllUsers($event) {\r\n this.listOfUsers = [];\r\n }\r\n\r\n // Action Type\r\n onSelectedActionType($event) {\r\n this.listOfTypes = [];\r\n if (this.listOfTypes != null) {\r\n if (this.listOfTypes.length > 0) {\r\n this.listOfTypes = this.removeElemetninArray(this.listOfTypes, $event.id)\r\n this.listOfTypes.push($event.id);\r\n }\r\n else {\r\n this.listOfTypes.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeSelectedActionType($event) {\r\n if (this.listOfTypes != null) {\r\n if (this.listOfTypes.length > 0) {\r\n this.listOfTypes = this.removeElemetninArray(this.listOfTypes, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllActionType($event) {\r\n this.listOfTypes = [];\r\n }\r\n\r\n // State \r\n onSelectedState($event) {\r\n if (this.listOfState != null) {\r\n if (this.listOfState.length > 0) {\r\n this.listOfState = this.removeElemetninArray(this.listOfState, $event.id)\r\n this.listOfState.push($event.id);\r\n }\r\n else {\r\n this.listOfState.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeSelectedState($event) {\r\n if (this.listOfState != null) {\r\n if (this.listOfState.length > 0) {\r\n this.listOfState = this.removeElemetninArray(this.listOfState, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onSelectAllState($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfState != null) {\r\n if (this.listOfState.length > 0) {\r\n this.listOfState = this.removeElemetninArray(this.listOfState, $event[iCounter].id)\r\n this.listOfState.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfState.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllState($event) {\r\n this.listOfState = [];\r\n }\r\n\r\n // Category\r\n onSelectedCategory($event) {\r\n if (this.listOfCategory != null) {\r\n if (this.listOfCategory.length > 0) {\r\n this.listOfCategory = this.removeElemetninArray(this.listOfCategory, $event.id)\r\n this.listOfCategory.push($event.id);\r\n }\r\n else {\r\n this.listOfCategory.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeSelectedCategory($event) {\r\n if (this.listOfCategory != null) {\r\n if (this.listOfCategory.length > 0) {\r\n this.listOfCategory = this.removeElemetninArray(this.listOfCategory, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onSelectAllCategory($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfCategory != null) {\r\n if (this.listOfCategory.length > 0) {\r\n this.listOfCategory = this.removeElemetninArray(this.listOfCategory, $event[iCounter].id)\r\n this.listOfCategory.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfCategory.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllCategory($event) {\r\n this.listOfCategory = [];\r\n }\r\n\r\n GetCompanyUser(companyId: any) {\r\n this.dropdownListclientCompanyUser = [];\r\n this.userServices.GetUsersFindByCompanyId(this.tokenKey, companyId, this.productId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n if (data['companyUsers'] != null) {\r\n if (data['companyUsers'].length > 0) {\r\n this.userModel = data['companyUsers'];\r\n\r\n for (let iCounter = 0; iCounter < this.userModel.length; iCounter++) {\r\n if(this.userModel[iCounter].adminUserId != -1) {\r\n this.dropdownListclientCompanyUser.push(\r\n { \"id\": this.userModel[iCounter].userId, \"itemName\": this.userModel[iCounter].userName }\r\n );\r\n }\r\n }\r\n\r\n this.dropdownSettingclientCompanyUser = {\r\n singleSelection: false,\r\n text: \"Select User\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No data available for selected user',\r\n showCheckbox: true\r\n };\r\n\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n saveAddUpdateActionItem(addUpdateFormControl: any) {\r\n\r\n if (this.listOfCompany.length == 0) {\r\n this.addNewActionModel.companyId = 0;\r\n }\r\n else {\r\n this.addNewActionModel.companyId = this.listOfCompany[0];\r\n }\r\n\r\n if (this.listOfCompany.length == 0 && this.listOfUsers.length > 0) {\r\n this.showMessage('Please select company.', 'Required', 'error');\r\n return;\r\n }\r\n\r\n // if ((this.addNewActionModel.companyId > 0) && (addUpdateFormControl.value[\"companyUserId\"].length == 0 || addUpdateFormControl.value[\"companyUserId\"] == 'undefined')) {\r\n // this.showMessage('Please select user.', 'Required', 'error');\r\n // return;\r\n // }\r\n\r\n if (this.listOfUsers.length == 0) {\r\n this.addNewActionModel.assignToUser = '0'\r\n }\r\n else {\r\n this.addNewActionModel.assignToUser = this.listOfUsers.join(',');\r\n }\r\n\r\n if (typeof (addUpdateFormControl.value['deadLineDate']) == 'undefined' || addUpdateFormControl.value['deadLineDate'] == '') {\r\n this.showMessage('Please select deadline date', 'Error', 'error');\r\n return;\r\n }\r\n // let currentDate = new Date();\r\n // if (new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate()) > addUpdateFormControl.value[\"deadLineDate\"]) {\r\n // this.showMessage('Previous deadline date not allow', 'Error', 'error');\r\n // return;\r\n // }\r\n\r\n if (this.listOfState.length == 0) {\r\n this.showMessage('Please select state', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (this.listOfTypes.length == 0) {\r\n this.showMessage('Please select category', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (this.listOfCategory.length == 0) {\r\n this.showMessage('Please select carrier types', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (addUpdateFormControl.value['subject'] == '' || typeof (addUpdateFormControl.value['subject']) == 'undefined') {\r\n this.showMessage('Please enter subject', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (addUpdateFormControl.value['description'] == '' || typeof (addUpdateFormControl.value['description']) == 'undefined') {\r\n this.showMessage('Please enter description', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (this.listOfState.length == 0) {\r\n this.addNewActionModel.state = '0';\r\n }\r\n else {\r\n this.addNewActionModel.state = this.listOfState.join(',');\r\n }\r\n\r\n if (this.listOfCategory.length == 0) {\r\n this.addNewActionModel.carrierCategories = '0';\r\n }\r\n else {\r\n this.addNewActionModel.carrierCategories = this.listOfCategory.join(',');\r\n }\r\n\r\n if (this.listOfTypes.length == 0) {\r\n this.addNewActionModel.actionType = '0'\r\n }\r\n else {\r\n this.addNewActionModel.actionType = this.listOfTypes.join(',');\r\n }\r\n // || (addUpdateFormControl.value['isNeworChanged'] == false)\r\n if (addUpdateFormControl.value[\"isUpdateRequired\"] == false || typeof (addUpdateFormControl.value[\"isUpdateRequired\"]) == 'undefined') {\r\n this.addNewActionModel.actionCharges = '0';\r\n this.addNewActionModel.actionNotes = '';\r\n this.addNewActionModel.isAction = false;\r\n }\r\n else {\r\n this.addNewActionModel.actionCharges = addUpdateFormControl.value['actionCharges'] == '' ? 0 : addUpdateFormControl.value['actionCharges'];\r\n this.addNewActionModel.actionNotes = addUpdateFormControl.value['actionNotes'];\r\n this.addNewActionModel.isAction = true;\r\n }\r\n\r\n if (addUpdateFormControl.value['actionItemId'] != 'undefined' && addUpdateFormControl.value['actionItemId'] != undefined) {\r\n let ActionItemCloneId = +sessionStorage.getItem('ActionItemClone');\r\n if (ActionItemCloneId > 0)\r\n this.addNewActionModel.actionItemId = 0;\r\n else\r\n this.addNewActionModel.actionItemId = addUpdateFormControl.value['actionItemId'];\r\n }\r\n else\r\n this.addNewActionModel.actionItemId = 0;\r\n\r\n if (typeof (addUpdateFormControl.value['description']) != undefined)\r\n this.addNewActionModel.description = addUpdateFormControl.value['description'];\r\n else\r\n this.addNewActionModel.description = null;\r\n\r\n if (typeof (addUpdateFormControl.value['subject']) != undefined)\r\n this.addNewActionModel.subject = addUpdateFormControl.value['subject'];\r\n else\r\n this.addNewActionModel.subject = addUpdateFormControl.value['subject'];\r\n\r\n this.addNewActionModel.createdBy = +sessionStorage.getItem('AdminUserId');\r\n\r\n if (addUpdateFormControl.value['isNeworChanged'] == '')\r\n this.addNewActionModel.isNeworChanged = false;\r\n else\r\n this.addNewActionModel.isNeworChanged = addUpdateFormControl.value['isNeworChanged']\r\n\r\n //debugger\r\n // if (addUpdateFormControl.value['isSendEmailNotification'] == '')\r\n // this.addNewActionModel.isSendEmailNotification = false;\r\n // else\r\n // this.addNewActionModel.isSendEmailNotification = addUpdateFormControl.value['isSendEmailNotification']\r\n\r\n this.addNewActionModel.isSendEmailNotification = this.isSendEmailNotificationChecked;\r\n\r\n if (addUpdateFormControl.value['isInformationOnly'] == '')\r\n this.addNewActionModel.isInformationOnly = false;\r\n else {\r\n this.addNewActionModel.isInformationOnly = addUpdateFormControl.value['isInformationOnly']\r\n }\r\n \r\n if (this.addNewActionModel.isInformationOnly == true) {\r\n this.addNewActionModel.actionCharges = '0';\r\n this.addNewActionModel.actionNotes = '';\r\n this.addNewActionModel.isAction = false;\r\n }\r\n\r\n\r\n // if (this.addNewActionModel.actionItemId == 0)\r\n // this.addNewActionModel.isSendEmailNotification = true;\r\n\r\n this.blockDocument();\r\n this.actionItemServices.AdminAddUpdateActionItem(this.tokenKey, this.addNewActionModel).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n if (data['status'] == 'Success') {\r\n let ActionItemClone = sessionStorage.getItem('ActionItemClone');\r\n if (data['actionId'] > 0)\r\n if (this.actionId == 0)\r\n this.showMessage('Calendar item saved successfully', 'Saved', 'success');\r\n else if (+ActionItemClone > 0) {\r\n this.showMessage('Calendar item clone successfully', 'Clone', 'success');\r\n }\r\n else {\r\n this.showMessage('Calendar item updated successfully', 'Updated', 'success');\r\n }\r\n\r\n this.router.navigate(['/admin/trac-it/entries']);\r\n }\r\n sessionStorage.removeItem('ActionItemClone');\r\n },\r\n error => {\r\n this.unblockDocument();\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n setEnableDisable($event) {\r\n \r\n this.isEnableDisable = $event;\r\n if (!$event) {\r\n this.actionChargesValue = 0;\r\n this.actionNotesValue = '';\r\n }\r\n }\r\n\r\n isNumberKey(evt) {\r\n\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 redirectToBack() {\r\n sessionStorage.removeItem('ActionItemClone');\r\n this.router.navigate(['/admin/trac-it/entries']);\r\n }\r\n\r\n setSendEmailNotificationChecked($event) {\r\n this.isSendEmailNotificationChecked = $event.target.checked;\r\n }\r\n\r\n setEnableDisableIsRequires($event) {\r\n \r\n this.isThisUpdateRequiresActionToPerform = !$event.currentTarget.checked;\r\n if ($event.currentTarget.checked == true) {\r\n this.isUpdateRequiredChecked = false;\r\n this.isEnableDisable = false;\r\n this.actionChargesValue = 0;\r\n this.actionNotesValue = '';\r\n }\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL2FjdGlvbi1pdGVtL2FjdGlvbi1pdGVtLXR5cGUvYWN0aW9uLWl0ZW0tdHlwZS5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ActionItemTypeModel } from 'src/Models/ActionItemTypeModel';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { filterModel } from 'src/Models/filterModel';\r\nimport { Router } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n selector: 'app-action-item-type',\r\n templateUrl: './action-item-type.component.html',\r\n styleUrls: ['./action-item-type.component.css']\r\n})\r\nexport class ActionItemTypeComponent implements OnInit {\r\n tokenKey: string = '';\r\n loginuserID: number;\r\n\r\n actionTypeList: ActionItemTypeModel[];\r\n filterParameter = new filterModel();\r\n totalRecordCount: number = -1;\r\n\r\n upDowNameCSS: string = '';\r\n upDowColorCSS: string = '';\r\n upDowCreatedDateCSS: string = '';\r\n upDowModifiedDateCSS: string = '';\r\n isAscending: boolean;\r\n SelectedTool: string;\r\n\r\n isloading: boolean = false;\r\n deleteId: number = 0;\r\n\r\n constructor(private toastr: ToastrService, private titleService: Title, private router: Router, private actionItemService: ActionItemService, private checkAuth: CheckAuth) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.loginuserID = +sessionStorage.getItem('AdminUserId');\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n\r\n this.filterParameter.pageNumber = '1';\r\n this.filterParameter.pageSize = '10';\r\n this.filterParameter.whereCondition = '';\r\n this.filterParameter.orderBy = 'typeName';\r\n this.titleService.setTitle('Categories');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.GetActionTypesByPages();\r\n }\r\n\r\n GetActionTypesByPages() {\r\n this.isloading = true;\r\n this.actionItemService.GetActionTypesByPages(this.tokenKey, this.filterParameter).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data['status'] == 'Success') {\r\n this.actionTypeList = data['actionTypesList'];\r\n if (this.actionTypeList != null) {\r\n if (this.actionTypeList.length > 0) {\r\n this.totalRecordCount = data['actionTypesList'][0]['totalRecordCount'];\r\n }\r\n else {\r\n this.totalRecordCount = 0;\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n pageChanged($event: any) {\r\n this.filterParameter.pageNumber = parseInt($event.page).toString();\r\n this.GetActionTypesByPages();\r\n }\r\n\r\n sort(sortBy: any) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.filterParameter.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"typeName\") {\r\n this.upDowNameCSS = 'fa fa-arrow-down';\r\n this.upDowColorCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"colorCode\") {\r\n this.upDowNameCSS = '';\r\n this.upDowColorCSS = 'fa fa-arrow-down';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"createdDate\") {\r\n this.upDowNameCSS = '';\r\n this.upDowColorCSS = '';\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-down';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"modifiedDate\") {\r\n this.upDowNameCSS = '';\r\n this.upDowColorCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-down';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.filterParameter.orderBy = sortBy;\r\n\r\n if (sortBy === \"typeName\") {\r\n this.upDowNameCSS = 'fa fa-arrow-up';\r\n this.upDowColorCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"colorCode\") {\r\n this.upDowNameCSS = '';\r\n this.upDowColorCSS = 'fa fa-arrow-up';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"createdDate\") {\r\n this.upDowNameCSS = '';\r\n this.upDowColorCSS = '';\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-up';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"modifiedDate\") {\r\n this.upDowNameCSS = '';\r\n this.upDowColorCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-up';\r\n }\r\n }\r\n this.GetActionTypesByPages();\r\n }\r\n\r\n editActionItemType(actionItemTypeId: any) {\r\n this.router.navigate(['admin/trac-it/category/manage/' + actionItemTypeId]);\r\n }\r\n\r\n setDeletActionItem(actionItemTypeId: any) {\r\n this.deleteId = actionItemTypeId;\r\n }\r\n\r\n deletActionItemType(actionItemTypeId: any) {\r\n this.actionItemService.DeleteActionTypes(this.tokenKey, actionItemTypeId).subscribe(\r\n data => { \r\n if (data['status'] == 'Success') {\r\n this.showMessage('Record deleted successfully', 'Sucess', 'success');\r\n this.GetActionTypesByPages();\r\n }\r\n else\r\n this.showMessage(data['status'] + '-' + data['message'], 'Error', 'error');\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL2FjdGlvbi1pdGVtL2FjdGlvbi1pdGVtLXR5cGUvbWFuZWdlLWFjdGlvbi10eXBlLmNvbXBvbmVudC5jc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute, Params } from '@angular/router';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { ActionItemTypeModel } from 'src/Models/ActionItemTypeModel';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-manege-action-type',\r\n templateUrl: './manege-action-type.component.html',\r\n styleUrls: ['./manege-action-type.component.css']\r\n})\r\nexport class ManegeActionTypeComponent implements OnInit {\r\n tokenKey: string = '';\r\n loginuserID: number;\r\n SelectedTool: string;\r\n actionTypeId: number = 0;\r\n\r\n actionTypeModel = new ActionItemTypeModel();\r\n actionTypeForm: FormGroup;\r\n\r\n constructor(private titleService: Title, private toastr: ToastrService, private _fb: FormBuilder, private activedRoute: ActivatedRoute, private router: Router,\r\n private actionItemService: ActionItemService, private checkAuth: CheckAuth) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.loginuserID = +sessionStorage.getItem('AdminUserId');\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n\r\n this.actionTypeForm = this._fb.group({\r\n actionItemTypeId: 0,\r\n typeName: [''],\r\n colorCode: ['']\r\n });\r\n this.titleService.setTitle('Manage Category');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this.actionTypeId = params['id'];\r\n this.GetActionTypesByPages();\r\n }\r\n }\r\n else {\r\n this.actionTypeId = 0;\r\n }\r\n });\r\n }\r\n\r\n GetActionTypesByPages() {\r\n this.actionItemService.GetActionItemTypeById(this.tokenKey, this.actionTypeId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n\r\n this.actionTypeModel = data['actionTypes'];\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n saveActionTypes(actionTypesForm: any) {\r\n\r\n this.actionTypeModel = actionTypesForm.value;\r\n this.actionTypeModel.createdBy = this.loginuserID;\r\n\r\n if (this.actionTypeModel.typeName == '' || this.actionTypeModel.typeName == null) {\r\n this.showMessage('Please enter category name', 'Error', 'error');\r\n return;\r\n }\r\n if (this.actionTypeModel.colorCode == '' || this.actionTypeModel.colorCode == null || this.actionTypeModel.colorCode == 'undefined') {\r\n this.showMessage('Please select color', 'Error', 'error');\r\n return;\r\n }\r\n\r\n this.actionItemService.AddUpdateActionItemType(this.tokenKey, this.actionTypeModel).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n if (this.actionTypeModel.actionItemTypeId > 0)\r\n this.showMessage('Category updated successfully', 'Success', 'success');\r\n else\r\n this.showMessage('Category saved successfully', 'Success', 'success');\r\n this.router.navigate(['/admin/trac-it/categories']);\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n canceluser() {\r\n this.router.navigate(['/admin/trac-it/categories']);\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL2FjdGlvbi1pdGVtL2NhcnJpZXItY2F0ZWdvcnkvY2Fycmllci1jYXRlZ29yeS5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { CarrierCategoryAdminModel } from 'src/Models/CarrierCategoryAdminModel';\r\nimport { filterModel } from 'src/Models/filterModel';\r\nimport { CarrierCategoryService } from 'src/Services/carriercategory.service';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\n\r\n@Component({\r\n selector: 'app-carrier-category',\r\n templateUrl: './carrier-category.component.html',\r\n styleUrls: ['./carrier-category.component.css']\r\n})\r\nexport class CarrierCategoryComponent implements OnInit {\r\n carrierCategoryList: CarrierCategoryAdminModel[];\r\n filterParameter = new filterModel();\r\n\r\n tokenKey: string = '';\r\n loginuserID: number = 0;\r\n SelectedTool: string = '';\r\n totalRecordCount: number = -1;\r\n isloading: boolean = false;\r\n\r\n upDowCarrierCatNameCSS: string = '';\r\n upDowCreatedDateCSS: string = '';\r\n upDowModifiedDateCSS: string = '';\r\n upDowIsActiveCSS: string = '';\r\n isAscending: boolean;\r\n deleteRrecordId: number = 0;\r\n\r\n\r\n constructor(private checkAuth: CheckAuth, private toastr: ToastrService, private titleService: Title, private router: Router, private carrierService: CarrierCategoryService) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.loginuserID = +sessionStorage.getItem('AdminUserId');\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n\r\n this.filterParameter.pageNumber = '1';\r\n this.filterParameter.pageSize = '10';\r\n this.filterParameter.whereCondition = '';\r\n this.filterParameter.orderBy = 'CarrierCatName';\r\n this.titleService.setTitle('Carrier Types');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.GetCarrierCategoryByPage();\r\n }\r\n\r\n GetCarrierCategoryByPage() {\r\n this.carrierCategoryList = [];\r\n this.isloading = true;\r\n this.carrierService.GetCarrierCategoryByPage(this.tokenKey, this.filterParameter).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data['status'] == 'Success') {\r\n this.carrierCategoryList = data['carrierCategoryList'];\r\n if (this.carrierCategoryList.length > 0) {\r\n this.totalRecordCount = data['carrierCategoryList'][0]['totalRowCount'];\r\n }\r\n else {\r\n this.totalRecordCount = 0;\r\n }\r\n }\r\n },\r\n error => {\r\n this.isloading = false;\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n pageChanged($event: any) {\r\n this.filterParameter.pageNumber = parseInt($event.page).toString();\r\n this.GetCarrierCategoryByPage();\r\n }\r\n\r\n sort(sortBy: any) {\r\n this.upDowCarrierCatNameCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.filterParameter.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"CarrierCatName\") {\r\n this.upDowCarrierCatNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"IsActive\") {\r\n this.upDowIsActiveCSS = 'fa fa-arrow-down';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.filterParameter.orderBy = sortBy;\r\n\r\n if (sortBy === \"CarrierCatName\") {\r\n this.upDowCarrierCatNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"IsActive\") {\r\n this.upDowIsActiveCSS = 'fa fa-arrow-up';\r\n }\r\n }\r\n this.GetCarrierCategoryByPage();\r\n }\r\n\r\n SetDeleteRecordsId(CarrierCatId: any) { \r\n this.deleteRrecordId = CarrierCatId;\r\n }\r\n\r\n DeleteCarrierCategory() {\r\n this.carrierService.CarrierCategoryAdminDelete(this.tokenKey, this.deleteRrecordId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Record deleted successfully', 'Sucess', 'success');\r\n this.GetCarrierCategoryByPage();\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n editCarrierCategory(CarrierCatId: any) {\r\n this.router.navigate(['/admin/trac-it/carriertype/manage/' + CarrierCatId])\r\n }\r\n\r\n}\r\n","export default \".switch {\\r\\n position: relative;\\r\\n display: inline-block;\\r\\n width: 60px;\\r\\n height: 34px;\\r\\n }\\r\\n \\r\\n .switch input {\\r\\n opacity: 0;\\r\\n width: 0;\\r\\n height: 0;\\r\\n }\\r\\n \\r\\n .slider {\\r\\n position: absolute;\\r\\n cursor: pointer;\\r\\n top: 0;\\r\\n left: 0;\\r\\n right: 0;\\r\\n bottom: 0;\\r\\n background-color: #ccc;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n \\r\\n .slider:before {\\r\\n position: absolute;\\r\\n content: \\\"\\\";\\r\\n height: 26px;\\r\\n width: 26px;\\r\\n left: 4px;\\r\\n bottom: 4px;\\r\\n background-color: white;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n \\r\\n input:checked + .slider {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n input:focus + .slider {\\r\\n box-shadow: 0 0 1px #0039BF;\\r\\n }\\r\\n \\r\\n input:checked + .slider:before {\\r\\n -webkit-transform: translateX(26px);\\r\\n transform: translateX(26px);\\r\\n }\\r\\n \\r\\n /* Rounded sliders */\\r\\n \\r\\n .slider.round {\\r\\n border-radius: 34px;\\r\\n }\\r\\n \\r\\n .slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n \\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vYWN0aW9uLWl0ZW0vY2Fycmllci1jYXRlZ29yeS9tYW5hZ2UtY2Fycmllci1jYXRlZ29yeS5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksa0JBQWtCO0lBQ2xCLHFCQUFxQjtJQUNyQixXQUFXO0lBQ1gsWUFBWTtFQUNkOztJQUVFO01BQ0UsVUFBVTtNQUNWLFFBQVE7TUFDUixTQUFTO0lBQ1g7O0lBRUY7SUFDRSxrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLE1BQU07SUFDTixPQUFPO0lBQ1AsUUFBUTtJQUNSLFNBQVM7SUFDVCxzQkFBc0I7SUFDdEIsdUJBQXVCO0lBQ3ZCLGVBQWU7RUFDakI7O0lBRUU7TUFDRSxrQkFBa0I7TUFDbEIsV0FBVztNQUNYLFlBQVk7TUFDWixXQUFXO01BQ1gsU0FBUztNQUNULFdBQVc7TUFDWCx1QkFBdUI7TUFDdkIsdUJBQXVCO01BQ3ZCLGVBQWU7SUFDakI7O0lBRUY7SUFDRSx5QkFBeUI7RUFDM0I7O0lBRUE7SUFDRSwyQkFBMkI7RUFDN0I7O0lBRUE7SUFDRSxtQ0FBbUM7SUFFbkMsMkJBQTJCO0VBQzdCOztJQUVBLG9CQUFvQjs7SUFDcEI7SUFDRSxtQkFBbUI7RUFDckI7O0lBRUU7TUFDRSxrQkFBa0I7SUFDcEIiLCJmaWxlIjoic3JjL2FwcC9BZG1pbi9hY3Rpb24taXRlbS9jYXJyaWVyLWNhdGVnb3J5L21hbmFnZS1jYXJyaWVyLWNhdGVnb3J5LmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuc3dpdGNoIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgaGVpZ2h0OiAzNHB4O1xyXG4gIH1cclxuICBcclxuICAgIC5zd2l0Y2ggaW5wdXQge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB3aWR0aDogMDtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIFxyXG4gIC5zbGlkZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gICAgdHJhbnNpdGlvbjogLjRzO1xyXG4gIH1cclxuICBcclxuICAgIC5zbGlkZXI6YmVmb3JlIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICAgIHdpZHRoOiAyNnB4O1xyXG4gICAgICBsZWZ0OiA0cHg7XHJcbiAgICAgIGJvdHRvbTogNHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgICAgIHRyYW5zaXRpb246IC40cztcclxuICAgIH1cclxuICBcclxuICBpbnB1dDpjaGVja2VkICsgLnNsaWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG4gIH1cclxuICBcclxuICBpbnB1dDpmb2N1cyArIC5zbGlkZXIge1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDFweCAjMDAzOUJGO1xyXG4gIH1cclxuICBcclxuICBpbnB1dDpjaGVja2VkICsgLnNsaWRlcjpiZWZvcmUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gIH1cclxuICBcclxuICAvKiBSb3VuZGVkIHNsaWRlcnMgKi9cclxuICAuc2xpZGVyLnJvdW5kIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDM0cHg7XHJcbiAgfVxyXG4gIFxyXG4gICAgLnNsaWRlci5yb3VuZDpiZWZvcmUge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICB9XHJcbiAgIl19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { ToolEnum } from '../../../../Models/Common';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Params, ActivatedRoute } from '@angular/router';\r\nimport { Router } from '@angular/router';\r\nimport { CarrierCategoryService } from 'src/Services/carriercategory.service';\r\nimport { CarrierCategoryAdminModel } from 'src/Models/CarrierCategoryAdminModel';\r\nimport { error } from 'protractor';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-manage-carrier-category',\r\n templateUrl: './manage-carrier-category.component.html',\r\n styleUrls: ['./manage-carrier-category.component.css']\r\n})\r\nexport class ManageCarrierCategoryComponent implements OnInit {\r\n carrierCategoryModel = new CarrierCategoryAdminModel();\r\n CarrierCatId: number = 0;\r\n\r\n tokenKey: string = '';\r\n loginuserID: number = 0;\r\n SelectedTool: string = '';\r\n\r\n addUpdateCarrierCategory = new FormGroup({\r\n carrierCatId: new FormControl('0'),\r\n carrierCatName: new FormControl(''),\r\n isActive: new FormControl(0),\r\n });\r\n\r\n constructor(private checkAuth: CheckAuth, private toastr: ToastrService, private titleService: Title,\r\n private router: Router, private activedRoute: ActivatedRoute, private carrierService: CarrierCategoryService) {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.loginuserID = +sessionStorage.getItem('AdminUserId');\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.titleService.setTitle('Manage Carrier Type');\r\n this.carrierCategoryModel.isActive = true;\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n if (params['id']) {\r\n if (params['id'] != null) { \r\n this.CarrierCatId = params['id'];\r\n this.GetCarrierCategorySearchById();\r\n }\r\n }\r\n else {\r\n this.CarrierCatId = 0;\r\n }\r\n });\r\n }\r\n\r\n GetCarrierCategorySearchById() {\r\n this.carrierService.GetCarrierCategorySearchById(this.tokenKey, this.CarrierCatId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.carrierCategoryModel = data['carrierModel'];\r\n }\r\n else\r\n this.showMessage(data['status'], 'Error', 'error')\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error')\r\n }\r\n );\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n SaveCarrierCategory(addUpdateCarrierCategory: any) {\r\n if (addUpdateCarrierCategory.value['carrierCatName'] == '' || typeof (addUpdateCarrierCategory.value['carrierCatName']) == 'undefined') {\r\n this.showMessage('Please enter carrier type name', 'Error', 'error');\r\n return;\r\n }\r\n\r\n this.carrierCategoryModel.isActive = addUpdateCarrierCategory.value['isActive'];\r\n this.carrierCategoryModel.createdBy = this.loginuserID.toString();\r\n this.carrierCategoryModel.modifiedBy = this.loginuserID.toString();\r\n this.carrierCategoryModel.carrierCatId = addUpdateCarrierCategory.value['carrierCatId'];\r\n this.carrierCategoryModel.carrierCatName = addUpdateCarrierCategory.value['carrierCatName'];\r\n this.carrierCategoryModel.isDeleteActive = false;\r\n this.carrierCategoryModel.isReadOnly = false;\r\n this.carrierCategoryModel.totalRowCount = 0;\r\n\r\n this.carrierService.CarrierCategoryAddUpdate(this.tokenKey, this.carrierCategoryModel).subscribe(\r\n data => { \r\n if (data['status'] == 'Success') {\r\n if (this.carrierCategoryModel.carrierCatId == 0)\r\n this.showMessage('Carrier type added successfully', 'Success', 'success');\r\n else\r\n this.showMessage('Carrier type updated successfully', 'Success', 'success');\r\n this.router.navigate(['admin/trac-it/carriertypes']);\r\n }\r\n else {\r\n if (data['id'] == -1) {\r\n this.showMessage('Carrier type already exists.', 'Error', 'error');\r\n }\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL2FjdGlvbi1pdGVtL2dlbmVyYWwtYWxlcnRzL2dlbmVyYWwtYWxlcnRzLmNvbXBvbmVudC5jc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { filterModel } from 'src/Models/filterModel';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { UsersService } from 'src/Services/users.service';\r\nimport { ToolEnum } from 'src/Models/Common';\r\nimport { GeneralAlertsModel } from 'src/Models/GeneralAlertsModel';\r\nimport { ProductsService } from 'src/Services/products.service';\r\nimport { RouterExtService } from 'src/Services/RouterExtService';\r\n\r\n@Component({\r\n selector: 'app-general-alerts',\r\n templateUrl: './general-alerts.component.html',\r\n styleUrls: ['./general-alerts.component.css']\r\n})\r\nexport class GeneralAlertsComponent implements OnInit {\r\n tokenKey: string = '';\r\n userID: number = 0;\r\n SelectedTool: string;\r\n productId: number = 1;\r\n\r\n filteModel = new filterModel();\r\n\r\n upDownAlertDateCSS: string = '';\r\n upDownSubjectCSS: string = '';\r\n upDownProductsCSS: string = '';\r\n upDownStatusCSS: string = '';\r\n upDownCreatedDateCSS: string = '';\r\n upDownModifiedDateCSS: string = '';\r\n isAscending: boolean;\r\n\r\n isloading: boolean = false;\r\n totalRecordCount: number = -1;\r\n generalAlertsModel: GeneralAlertsModel[];\r\n\r\n // Product List---------------\r\n dropdownListProduct = [];\r\n selectedItemsProduct = [];\r\n dropdownSettingsProduct = {};\r\n productFilter: string = '';\r\n listOfProductID: string[] = [];\r\n // Product List---------------\r\n\r\n\r\n constructor(private productsService: ProductsService, private actionItemServices: ActionItemService, private router: Router,\r\n private toastr: ToastrService, private titleService: Title, private checkAuth: CheckAuth, private userServices: UsersService\r\n , private routerService: RouterExtService) {\r\n this.userID = +sessionStorage.getItem('AdminUserId');\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n this.titleService.setTitle('i360 Alerts List');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.filteModel.pageNumber = '1';\r\n this.filteModel.pageSize = '10';\r\n this.filteModel.whereCondition = '';\r\n this.filteModel.listOfProduct = '';\r\n this.filteModel.orderBy = ' createdDate Desc ';\r\n this.isAscending = false;\r\n if (this.routerService.getPreviousUrl().includes(\"admin/trac-it/i360Alerts/manage\")) {\r\n this.setSaveFilter();\r\n }\r\n else {\r\n this.clearSession();\r\n }\r\n\r\n this.GetGeneralAlertsFindByPages();\r\n this.GetProductData();\r\n this.dropdownSettingsProduct = {\r\n singleSelection: false,\r\n text: 'Filter by Product(s)',\r\n enableSearchFilter: false,\r\n classes: 'borderLessTextBoxGreen',\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No product available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false\r\n };\r\n }\r\n\r\n GetProductData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.productsService.GetProductList(this.tokenKey, this.userID).subscribe(\r\n data => {\r\n if (data['product'] != null) {\r\n // Set All Item\r\n for (let iCounter = 0; iCounter < data['product'].length; iCounter++) {\r\n this.dropdownListProduct.push(\r\n { 'id': data['product'][iCounter].productId, 'itemName': data['product'][iCounter].displayName }\r\n );\r\n }\r\n\r\n if (this.listOfProductID != null && this.listOfProductID != undefined) {\r\n for (let iCounter = 0; iCounter < this.listOfProductID.length; iCounter++) {\r\n if (this.listOfProductID[iCounter] != '') {\r\n let obj = data[\"product\"].filter(m => m.productId == this.listOfProductID[iCounter]);\r\n if (obj != null) {\r\n this.selectedItemsProduct.push({ \"id\": obj[0].productId, \"itemName\": obj[0].displayName });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data['message'], 'Error', 'error');\r\n }\r\n this.dropdownSettingsProduct = {\r\n singleSelection: false,\r\n text: 'Filter by Product(s)',\r\n enableSearchFilter: false,\r\n classes: 'borderLessTextBoxGreen',\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No product available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll:false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n GetGeneralAlertsFindByPages() {\r\n this.isloading = true;\r\n this.actionItemServices.GetGeneralAlertsFindByPages(this.tokenKey, this.filteModel).subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n this.isloading = false;\r\n this.generalAlertsModel = data['generalAlertList'];\r\n if (this.generalAlertsModel != null) {\r\n if (this.generalAlertsModel.length > 0) {\r\n this.totalRecordCount = +this.generalAlertsModel[0].totalRowCount;\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error');\r\n }\r\n\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n onSelect($event) {\r\n if (this.listOfProductID != null) {\r\n if (this.listOfProductID.length > 0) {\r\n this.listOfProductID = this.removeElemetninArray(this.listOfProductID, $event.id)\r\n this.listOfProductID.push($event.id);\r\n }\r\n else {\r\n this.listOfProductID.push($event.id);\r\n }\r\n }\r\n\r\n this.filteModel.listOfProduct = this.listOfProductID.join(',');\r\n this.GetGeneralAlertsFindByPages();\r\n }\r\n\r\n onSelectAll($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfProductID != null) {\r\n if (this.listOfProductID.length > 0) {\r\n this.listOfProductID = this.removeElemetninArray(this.listOfProductID, $event[iCounter].id)\r\n this.listOfProductID.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfProductID.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n this.filteModel.listOfProduct = this.listOfProductID.join(',');\r\n this.GetGeneralAlertsFindByPages();\r\n }\r\n\r\n onDeSelectAll($event) {\r\n this.listOfProductID = [];\r\n this.filteModel.listOfProduct = '';\r\n this.GetGeneralAlertsFindByPages();\r\n }\r\n\r\n onDeSelect($event) {\r\n if (this.listOfProductID != null) {\r\n if (this.listOfProductID.length > 0) {\r\n this.listOfProductID = this.removeElemetninArray(this.listOfProductID, $event.id)\r\n }\r\n }\r\n this.filteModel.listOfProduct = this.listOfProductID.join(',');\r\n this.GetGeneralAlertsFindByPages();\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n pageChanged($event) {\r\n this.filteModel.pageNumber = parseInt($event.page).toString();\r\n this.GetGeneralAlertsFindByPages();\r\n }\r\n\r\n keywordFilters($event) {\r\n this.filteModel.keywordFilter = $event.target.value;\r\n this.filteModel.pageNumber = '1';\r\n if ($event.target.value != \"\" && $event.target.value != null) {\r\n this.filteModel.whereCondition = \" subject like '%\" + $event.target.value + \"%'\";\r\n }\r\n else { this.filteModel.whereCondition = ''; }\r\n\r\n this.GetGeneralAlertsFindByPages();\r\n }\r\n\r\n sort(sortBy: any) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.filteModel.orderBy = sortBy + ' DESC';\r\n this.setDescCSS(sortBy);\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.filteModel.orderBy = sortBy;\r\n\r\n this.setAscCSS(sortBy);\r\n }\r\n this.GetGeneralAlertsFindByPages();\r\n }\r\n\r\n redirectToEditView(generalAlertsId: any, isViewMode: any) {\r\n this.saveSession(); // To Store All filtered and other data to restore once back.\r\n sessionStorage.setItem('isViewMode', isViewMode);\r\n this.router.navigate(['/admin/trac-it/i360Alerts/manage/' + generalAlertsId]);\r\n }\r\n\r\n\r\n saveSession() {\r\n sessionStorage.setItem('saveFilterIsAscending', this.isAscending ? 'true' : 'false');\r\n sessionStorage.setItem('saveFilterProductID', JSON.stringify(this.listOfProductID));\r\n sessionStorage.setItem('saveFilteModel', JSON.stringify(this.filteModel));\r\n }\r\n\r\n clearSession() {\r\n sessionStorage.removeItem('saveFilterProductID');\r\n sessionStorage.removeItem('saveFilterIsAscending');\r\n sessionStorage.removeItem('saveFilteModel');\r\n }\r\n\r\n setSaveFilter() {\r\n if (sessionStorage.getItem('saveFilterProductID') != null && sessionStorage.getItem('saveFilterProductID') != '' && sessionStorage.getItem('saveFilterProductID') != 'undefined') {\r\n this.listOfProductID = JSON.parse(sessionStorage.getItem('saveFilterProductID'));\r\n this.filteModel.listOfProduct = this.listOfProductID.join(',');\r\n }\r\n if (sessionStorage.getItem('saveFilteModel') != null && sessionStorage.getItem('saveFilteModel') != '' && sessionStorage.getItem('saveFilteModel') != 'undefined') {\r\n this.filteModel = JSON.parse(sessionStorage.getItem('saveFilteModel'));\r\n }\r\n if (sessionStorage.getItem('saveFilterIsAscending') != null && sessionStorage.getItem('saveFilterIsAscending') != '' && sessionStorage.getItem('saveFilterIsAscending') != 'undefined') {\r\n this.isAscending = sessionStorage.getItem('saveFilterIsAscending') == 'false' ? false : true;\r\n if (this.isAscending) {\r\n this.setDescCSS(this.filteModel.orderBy.replace('DESC', '').trim());\r\n } else {\r\n this.setAscCSS(this.filteModel.orderBy.replace('DESC', '').trim());\r\n }\r\n }\r\n this.clearSession();\r\n }\r\n\r\n setDescCSS(sortBy) {\r\n if (sortBy === \"alertDate\") {\r\n this.upDownAlertDateCSS = 'fa fa-arrow-down';\r\n this.upDownSubjectCSS = '';\r\n this.upDownProductsCSS = '';\r\n this.upDownStatusCSS = '';\r\n this.upDownCreatedDateCSS = '';\r\n this.upDownModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"subject\") {\r\n this.upDownAlertDateCSS = '';\r\n this.upDownSubjectCSS = 'fa fa-arrow-down';\r\n this.upDownProductsCSS = '';\r\n this.upDownStatusCSS = '';\r\n this.upDownCreatedDateCSS = '';\r\n this.upDownModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"productId\") {\r\n this.upDownAlertDateCSS = '';\r\n this.upDownSubjectCSS = '';\r\n this.upDownProductsCSS = 'fa fa-arrow-down';\r\n this.upDownStatusCSS = '';\r\n this.upDownCreatedDateCSS = '';\r\n this.upDownModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"EmailStatus\") {\r\n this.upDownAlertDateCSS = '';\r\n this.upDownSubjectCSS = '';\r\n this.upDownProductsCSS = '';\r\n this.upDownStatusCSS = 'fa fa-arrow-down';\r\n this.upDownCreatedDateCSS = '';\r\n this.upDownModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"createdDate\") {\r\n this.upDownAlertDateCSS = '';\r\n this.upDownSubjectCSS = '';\r\n this.upDownProductsCSS = '';\r\n this.upDownStatusCSS = '';\r\n this.upDownCreatedDateCSS = 'fa fa-arrow-down';\r\n this.upDownModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"modifiedDate\") {\r\n this.upDownAlertDateCSS = '';\r\n this.upDownSubjectCSS = '';\r\n this.upDownProductsCSS = '';\r\n this.upDownStatusCSS = '';\r\n this.upDownCreatedDateCSS = '';\r\n this.upDownModifiedDateCSS = 'fa fa-arrow-down';\r\n }\r\n\r\n }\r\n\r\n setAscCSS(sortBy) {\r\n if (sortBy === \"alertDate\") {\r\n this.upDownAlertDateCSS = 'fa fa-arrow-up';\r\n this.upDownSubjectCSS = '';\r\n this.upDownProductsCSS = '';\r\n this.upDownStatusCSS = '';\r\n this.upDownCreatedDateCSS = '';\r\n this.upDownModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"subject\") {\r\n this.upDownAlertDateCSS = '';\r\n this.upDownSubjectCSS = 'fa fa-arrow-up';\r\n this.upDownProductsCSS = '';\r\n this.upDownStatusCSS = '';\r\n this.upDownCreatedDateCSS = '';\r\n this.upDownModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"productId\") {\r\n this.upDownAlertDateCSS = '';\r\n this.upDownSubjectCSS = '';\r\n this.upDownProductsCSS = 'fa fa-arrow-up';\r\n this.upDownStatusCSS = '';\r\n this.upDownCreatedDateCSS = '';\r\n this.upDownModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"EmailStatus\") {\r\n this.upDownAlertDateCSS = '';\r\n this.upDownSubjectCSS = '';\r\n this.upDownProductsCSS = '';\r\n this.upDownStatusCSS = 'fa fa-arrow-up';\r\n this.upDownCreatedDateCSS = '';\r\n this.upDownModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"createdDate\") {\r\n this.upDownAlertDateCSS = '';\r\n this.upDownSubjectCSS = '';\r\n this.upDownProductsCSS = '';\r\n this.upDownStatusCSS = '';\r\n this.upDownCreatedDateCSS = 'fa fa-arrow-up';\r\n this.upDownModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"modifiedDate\") {\r\n this.upDownAlertDateCSS = '';\r\n this.upDownSubjectCSS = '';\r\n this.upDownProductsCSS = '';\r\n this.upDownStatusCSS = '';\r\n this.upDownCreatedDateCSS = '';\r\n this.upDownModifiedDateCSS = 'fa fa-arrow-up';\r\n }\r\n }\r\n}\r\n","export default \"button.calendar, button.calendar:active {\\r\\n width: 2.75rem;\\r\\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAcCAYAAAAEN20fAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAEUSURBVEiJ7ZQxToVAEIY/YCHGxN6XGOIpnpaEsBSeQC9ArZbm9TZ6ADyBNzAhQGGl8Riv4BLAWAgmkpBYkH1b8FWT2WK/zJ8ZJ4qiI6XUI3ANnGKWBnht2/ZBDRK3hgVGNsCd7/ui+JkEIrKtqurLpEWaphd933+IyI3LEIdpCYCiKD6HcuOa/nwOa0ScJEnk0BJg0UTUWJRl6RxCYEzEmomsIlPU3IPW+grIAbquy+q6fluy/28RIBeRMwDXdXMgXLj/B2uimRXpui4D9sBeRLKl+1N+L+t6RwbWrZliTTTr1oxYtzVWiTQAcRxvTX+eJMnlUDaO1vpZRO5NS0x48sIwfPc87xg4B04MCzQi8hIEwe4bl1DnFMCN2zsAAAAASUVORK5CYII=') !important;\\r\\n background-repeat: no-repeat;\\r\\n background-size: 23px;\\r\\n background-position: center;\\r\\n }\\r\\n \\r\\n /* Customize the label (the container) */\\r\\n \\r\\n .container {\\r\\n display: block;\\r\\n position: relative;\\r\\n padding-left: 30px;\\r\\n margin-bottom: 0px;\\r\\n cursor: pointer;\\r\\n font-size: 12px;\\r\\n -webkit-user-select: none;\\r\\n -moz-user-select: none;\\r\\n -ms-user-select: none;\\r\\n user-select: none;\\r\\n }\\r\\n \\r\\n /* Hide the browser's default checkbox */\\r\\n \\r\\n .container input {\\r\\n position: absolute;\\r\\n opacity: 0;\\r\\n cursor: pointer;\\r\\n height: 0;\\r\\n width: 0;\\r\\n }\\r\\n \\r\\n /* Create a custom checkbox */\\r\\n \\r\\n .checkmark {\\r\\n position: absolute;\\r\\n top: 0;\\r\\n left: 0;\\r\\n height: 17px;\\r\\n width: 17px;\\r\\n background-color: #eee;\\r\\n border-radius: 5px;\\r\\n }\\r\\n \\r\\n /* On mouse-over, add a grey background color\\r\\n .container:hover input ~ .checkmark {\\r\\n background-color: #eeeeee !important;\\r\\n } */\\r\\n \\r\\n /* When the checkbox is checked, add a blue background */\\r\\n \\r\\n .container input:checked ~ .checkmark {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n /* Create the checkmark/indicator (hidden when not checked) */\\r\\n \\r\\n .checkmark:after {\\r\\n content: \\\"\\\";\\r\\n position: absolute;\\r\\n display: none;\\r\\n }\\r\\n \\r\\n /* Show the checkmark when checked */\\r\\n \\r\\n input:checked ~ .checkmark:after {\\r\\n display: block;\\r\\n }\\r\\n \\r\\n /* Style the checkmark/indicator */\\r\\n \\r\\n .container .checkmark:after {\\r\\n left: 6px;\\r\\n top: 3px;\\r\\n width:6px;\\r\\n height: 9px;\\r\\n border: solid white;\\r\\n border-width: 0 2px 2px 0;\\r\\n -webkit-transform: rotate(45deg);\\r\\n transform: rotate(45deg);\\r\\n font-family: 'Sarabun', sans-serif;\\r\\n }\\r\\n \\r\\n /* ::ng-deep h4, ::ng-deep [data-label=\\\"Citation\\\"] {\\r\\n color: #a4123f;\\r\\n font-weight: 600;\\r\\n font-style: italic;\\r\\n font-size: 13px;\\r\\n margin-top: 0;\\r\\n } */\\r\\n \\r\\n .bottomBorder{\\r\\n border-bottom: solid 1px #c3d5db;\\r\\n margin: 50px 0px 30px 0px;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vYWN0aW9uLWl0ZW0vZ2VuZXJhbC1hbGVydHMvbWFuYWdlLWdlbmVyYWwtYWxlcnRzLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxjQUFjO0lBQ2QsMGxCQUEwbEI7SUFDMWxCLDRCQUE0QjtJQUM1QixxQkFBcUI7SUFDckIsMkJBQTJCO0VBQzdCOztFQUVBLHdDQUF3Qzs7RUFDeEM7SUFDRSxjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQixrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLGVBQWU7SUFDZix5QkFBeUI7SUFDekIsc0JBQXNCO0lBQ3RCLHFCQUFxQjtJQUNyQixpQkFBaUI7RUFDbkI7O0VBQ0Esd0NBQXdDOztFQUN4QztJQUNFLGtCQUFrQjtJQUNsQixVQUFVO0lBQ1YsZUFBZTtJQUNmLFNBQVM7SUFDVCxRQUFRO0VBQ1Y7O0VBR0EsNkJBQTZCOztFQUM3QjtJQUNFLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sT0FBTztJQUNQLFlBQVk7SUFDWixXQUFXO0lBQ1gsc0JBQXNCO0lBQ3RCLGtCQUFrQjtFQUNwQjs7RUFFQTs7O0tBR0c7O0VBRUgsd0RBQXdEOztFQUN4RDtJQUNFLHlCQUF5QjtFQUMzQjs7RUFFQSw2REFBNkQ7O0VBQzdEO0lBQ0UsV0FBVztJQUNYLGtCQUFrQjtJQUNsQixhQUFhO0VBQ2Y7O0VBRUEsb0NBQW9DOztFQUNwQztJQUNFLGNBQWM7RUFDaEI7O0VBRUEsa0NBQWtDOztFQUNsQztJQUNFLFNBQVM7TUFDUCxRQUFRO01BQ1IsU0FBUztNQUNULFdBQVc7SUFDYixtQkFBbUI7SUFDbkIseUJBQXlCO0lBQ3pCLGdDQUFnQztJQUVoQyx3QkFBd0I7SUFDeEIsa0NBQWtDO0VBQ3BDOztFQUdBOzs7Ozs7S0FNRzs7RUFFSDtJQUNFLGdDQUFnQztJQUNoQyx5QkFBeUI7RUFDM0IiLCJmaWxlIjoic3JjL2FwcC9BZG1pbi9hY3Rpb24taXRlbS9nZW5lcmFsLWFsZXJ0cy9tYW5hZ2UtZ2VuZXJhbC1hbGVydHMuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbImJ1dHRvbi5jYWxlbmRhciwgYnV0dG9uLmNhbGVuZGFyOmFjdGl2ZSB7XHJcbiAgICB3aWR0aDogMi43NXJlbTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDSUFBQUFjQ0FZQUFBQUVOMjBmQUFBQUJITkNTVlFJQ0FnSWZBaGtpQUFBQUFsd1NGbHpBQUFPeEFBQURzUUJsU3NPR3dBQUFCbDBSVmgwVTI5bWRIZGhjbVVBZDNkM0xtbHVhM05qWVhCbExtOXlaNXZ1UEJvQUFBRVVTVVJCVkVpSjdaUXhUb1ZBRUlZL1lDSEd4TjZYR09JcG5wYUVzQlNlUUM5QXJaYm05VFo2QUR5Qk56QWhRR0dsOFJpdjRCTEFXQWdta3BCWWtIMWI4RldUMldLL3pKOFpKNHFpSTZYVUkzQU5uR0tXQm5odDIvWkJEUkszaGdWR05zQ2Q3L3VpK0prRUlyS3RxdXJMcEVXYXBoZDkzMytJeUkzTEVJZHBDWUNpS0Q2SGN1T2EvbndPYTBTY0pFbmswQkpnMFVUVVdKUmw2UnhDWUV6RW1vbXNJbFBVM0lQVytncklBYnF1eStxNmZsdXkvMjhSSUJlUk13RFhkWE1nWExqL0IydWltUlhwdWk0RDlzQmVSTEtsKzFOK0wrdDZSd2JXclpsaVRUVHIxb3hZdHpWV2lUUUFjUnh2VFgrZUpNbmxVRGFPMXZwWlJPNU5TMHg0OHNJd2ZQYzg3eGc0QjA0TUN6UWk4aElFd2U0YmwxRG5GTUNOMnpzQUFBQUFTVVZPUks1Q1lJST0nKSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMjNweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICB9XHJcbiAgXHJcbiAgLyogQ3VzdG9taXplIHRoZSBsYWJlbCAodGhlIGNvbnRhaW5lcikgKi9cclxuICAuY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICB9XHJcbiAgLyogSGlkZSB0aGUgYnJvd3NlcidzIGRlZmF1bHQgY2hlY2tib3ggKi9cclxuICAuY29udGFpbmVyIGlucHV0IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICB3aWR0aDogMDtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgLyogQ3JlYXRlIGEgY3VzdG9tIGNoZWNrYm94ICovXHJcbiAgLmNoZWNrbWFyayB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgaGVpZ2h0OiAxN3B4O1xyXG4gICAgd2lkdGg6IDE3cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gIH1cclxuICBcclxuICAvKiBPbiBtb3VzZS1vdmVyLCBhZGQgYSBncmV5IGJhY2tncm91bmQgY29sb3JcclxuICAuY29udGFpbmVyOmhvdmVyIGlucHV0IH4gLmNoZWNrbWFyayB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlICFpbXBvcnRhbnQ7XHJcbiAgfSAqL1xyXG4gIFxyXG4gIC8qIFdoZW4gdGhlIGNoZWNrYm94IGlzIGNoZWNrZWQsIGFkZCBhIGJsdWUgYmFja2dyb3VuZCAqL1xyXG4gIC5jb250YWluZXIgaW5wdXQ6Y2hlY2tlZCB+IC5jaGVja21hcmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRjtcclxuICB9XHJcbiAgXHJcbiAgLyogQ3JlYXRlIHRoZSBjaGVja21hcmsvaW5kaWNhdG9yIChoaWRkZW4gd2hlbiBub3QgY2hlY2tlZCkgKi9cclxuICAuY2hlY2ttYXJrOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICBcclxuICAvKiBTaG93IHRoZSBjaGVja21hcmsgd2hlbiBjaGVja2VkICovXHJcbiAgaW5wdXQ6Y2hlY2tlZCB+IC5jaGVja21hcms6YWZ0ZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIFxyXG4gIC8qIFN0eWxlIHRoZSBjaGVja21hcmsvaW5kaWNhdG9yICovXHJcbiAgLmNvbnRhaW5lciAuY2hlY2ttYXJrOmFmdGVyIHtcclxuICAgIGxlZnQ6IDZweDtcclxuICAgICAgdG9wOiAzcHg7XHJcbiAgICAgIHdpZHRoOjZweDtcclxuICAgICAgaGVpZ2h0OiA5cHg7XHJcbiAgICBib3JkZXI6IHNvbGlkIHdoaXRlO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgIGZvbnQtZmFtaWx5OiAnU2FyYWJ1bicsIHNhbnMtc2VyaWY7XHJcbiAgfVxyXG4gIFxyXG4gIFxyXG4gIC8qIDo6bmctZGVlcCBoNCwgOjpuZy1kZWVwIFtkYXRhLWxhYmVsPVwiQ2l0YXRpb25cIl0ge1xyXG4gICAgY29sb3I6ICNhNDEyM2Y7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9ICovXHJcblxyXG4gIC5ib3R0b21Cb3JkZXJ7XHJcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2MzZDVkYjtcclxuICAgIG1hcmdpbjogNTBweCAwcHggMzBweCAwcHg7XHJcbiAgfSJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { GeneralAlertsModel } from 'src/Models/GeneralAlertsModel';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { StateMasterService } from 'src/Services/state-master.service';\r\nimport { Router, Params, ActivatedRoute } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ToolEnum } from 'src/Models/Common';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { UsersService } from 'src/Services/users.service';\r\n\r\n@Component({\r\n selector: 'app-manage-general-alerts',\r\n templateUrl: './manage-general-alerts.component.html',\r\n styleUrls: ['./manage-general-alerts.component.css']\r\n})\r\nexport class ManageGeneralAlertsComponent implements OnInit {\r\n tokenKey: string = '';\r\n userID: number = 0;\r\n SelectedTool: string;\r\n productId: number = 1;\r\n multiSelectDropDownHeight: number = 200;\r\n\r\n\r\n generalAlertsModel = new GeneralAlertsModel()\r\n\r\n addUpdateGeneralAlert = new FormGroup({\r\n generalAlertsId: new FormControl(''),\r\n alertDate: new FormControl(''),\r\n subject: new FormControl(''),\r\n message: new FormControl(''),\r\n // isGeneralAlerts: new FormControl(''),\r\n // isWireless: new FormControl(''),\r\n wirelessStateOp: new FormControl(''),\r\n wirelessState: new FormControl(''),\r\n // isVoip: new FormControl(''),\r\n voipStateOp: new FormControl(''),\r\n voipState: new FormControl(''),\r\n // isIPR: new FormControl(''),\r\n iprStateOp: new FormControl(''),\r\n iprState: new FormControl(''),\r\n // iprProviderOp: new FormControl(''),\r\n iprProviders: new FormControl(''),\r\n // isActionItem: new FormControl(''),\r\n actionStateOp: new FormControl(''),\r\n actionStates: new FormControl(''),\r\n // actionTypeOp: new FormControl(''),\r\n actionTypes: new FormControl(''),\r\n // actionCategoryOp: new FormControl(''),\r\n actionCategories: new FormControl(''),\r\n });\r\n\r\n isGeneralAlerts: boolean = true;\r\n\r\n wirelessDropdownListState = [];\r\n wirelessSelectedItemsState = [];\r\n wirelessDropdownStateSettings = {};\r\n wirelessListOfState = [];\r\n isWirelessControlEnable: boolean = true;\r\n\r\n voipDropdownListState = [];\r\n voipSelectedItemsState = [];\r\n voipDropdownStateSettings = {};\r\n voipListOfState = [];\r\n isVoIPControlEnable: boolean = true;\r\n\r\n iprDropdownListState = [];\r\n iprSelectedItemsState = [];\r\n iprDropdownStateSettings = {};\r\n iprListOfState = [];\r\n isIPRControlEnable: boolean = true;\r\n\r\n iprDropdownListForProvider = [];\r\n iprSelectedItemsForProvider = [];\r\n iprDropdownSettingsForProvider = {};\r\n iprListOfProvider = [];\r\n\r\n actionItemDropdownListState = [];\r\n actionItemSelectedItemsState = [];\r\n actionItemDropdownStateSettings = {};\r\n actionItemListOfState = [];\r\n isActionItemControlEnable: boolean = true;\r\n\r\n actionTypesDropdownList = [];\r\n actionTypesSelectedItems = [];\r\n actionTypesDropdownSettings = {};\r\n actionTypesListOfItem = [];\r\n\r\n actionCategoriesDropdownList = [];\r\n actionCategoriesSelectedItems = [];\r\n actionCategoriesDropdownSettings = {};\r\n actionCategoriesListOfItem = [];\r\n\r\n generalAlertsId: number = 0;\r\n isDataLoad: boolean = false;\r\n isViewMode: boolean = false;\r\n\r\n constructor(private activedRoute: ActivatedRoute, private actionItemServices: ActionItemService, private stateMasterService: StateMasterService, private router: Router,\r\n private toastr: ToastrService, private titleService: Title, private checkAuth: CheckAuth, private userServices: UsersService) {\r\n this.userID = +sessionStorage.getItem('AdminUserId');\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n this.isViewMode = sessionStorage.getItem('isViewMode') == 'true' ? true : false;\r\n if (this.isViewMode)\r\n this.titleService.setTitle('View i360 Alert');\r\n else\r\n this.titleService.setTitle('Manage i360 Alert');\r\n }\r\n\r\n ngOnInit() {\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this.isGeneralAlerts = false;\r\n this.isWirelessControlEnable = false;\r\n this.isVoIPControlEnable = false;\r\n this.isIPRControlEnable = false;\r\n this.isActionItemControlEnable = false;\r\n this.generalAlertsId = params['id'];\r\n this.GetGeneralAlertsByIds();\r\n }\r\n }\r\n else {\r\n // this.isGeneralAlerts = true;\r\n // this.isWirelessControlEnable = true;\r\n // this.isVoIPControlEnable = true;\r\n // this.isIPRControlEnable = true;\r\n // this.isActionItemControlEnable = true;\r\n this.generalAlertsId = 0;\r\n }\r\n });\r\n\r\n this.setWirelessDropDownSetting();\r\n this.setVoIPDropDownSetting();\r\n this.setIPRDropDownSetting();\r\n this.setActionItemDropDownSetting();\r\n\r\n this.GetIPRProvider();\r\n this.GetStateData();\r\n this.ActionTypes();\r\n this.GetCarrierCategories();\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n GetGeneralAlertsByIds(): void {\r\n this.isDataLoad = true;\r\n this.actionItemServices.GetGeneralAlertsByIds(this.tokenKey, this.generalAlertsId).subscribe(\r\n data => {\r\n if (data[\"generalAlert\"] != null && data[\"status\"] != \"Failure\") {\r\n\r\n this.generalAlertsModel = data['generalAlert'].generalAlerts;\r\n\r\n if (this.generalAlertsModel != null) {\r\n let alertDate = new Date(this.generalAlertsModel.alertDate);\r\n\r\n let dd1 = alertDate.getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (alertDate.getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n this.generalAlertsModel.alertDate = mm1 + '/' + dd1 + '/' + alertDate.getFullYear();\r\n }\r\n\r\n\r\n let productModel = data['generalAlert'].productModel;\r\n\r\n if (productModel != null) {\r\n if (productModel.length > 0) {\r\n\r\n let wireless = productModel.filter(m => m.productId == ToolEnum.wireless);\r\n if (wireless != null) {\r\n if (wireless.length > 0) {\r\n this.isWirelessControlEnable = false;\r\n }\r\n else\r\n this.isWirelessControlEnable = true;\r\n }\r\n else\r\n this.isWirelessControlEnable = true;\r\n\r\n let voip = productModel.filter(m => m.productId == ToolEnum.voip);\r\n if (voip != null) {\r\n if (voip.length > 0) {\r\n this.isVoIPControlEnable = false;\r\n }\r\n else\r\n this.isVoIPControlEnable = true;\r\n }\r\n else\r\n this.isVoIPControlEnable = true;\r\n\r\n let ipr = productModel.filter(m => m.productId == ToolEnum.ipr);\r\n if (ipr != null) {\r\n if (ipr.length > 0 || data[\"generalAlert\"].iprProvider.length > 0) {\r\n this.isIPRControlEnable = false;\r\n }\r\n else\r\n this.isIPRControlEnable = true;\r\n }\r\n else\r\n this.isIPRControlEnable = true;\r\n\r\n let action = productModel.filter(m => m.productId == ToolEnum.actionitem);\r\n if (action != null) {\r\n if (action.length > 0) {\r\n this.isActionItemControlEnable = false;\r\n }\r\n else\r\n this.isActionItemControlEnable = true;\r\n }\r\n else\r\n this.isActionItemControlEnable = true;\r\n\r\n let generalalert = productModel.filter(m => m.productId == ToolEnum.generalalert);\r\n if (generalalert != null) {\r\n if (generalalert.length > 0) {\r\n this.isGeneralAlerts = false;\r\n }\r\n else\r\n this.isGeneralAlerts = true;\r\n }\r\n else\r\n this.isGeneralAlerts = true;\r\n }\r\n }\r\n\r\n // Wireless State - Set Dropdown Selected values\r\n if (data[\"generalAlert\"].wirelessStates != null) {\r\n this.wirelessListOfState = [];\r\n let wirelessStates = data[\"generalAlert\"].wirelessStates;\r\n if (wirelessStates.length > 0) {\r\n for (let iCounter = 0; iCounter < wirelessStates.length; iCounter++) {\r\n this.wirelessSelectedItemsState.push(\r\n { \"id\": wirelessStates[iCounter].stateId, \"itemName\": wirelessStates[iCounter].name }\r\n );\r\n this.wirelessListOfState.push(wirelessStates[iCounter].stateId);\r\n }\r\n }\r\n }\r\n\r\n // VOIP State - Set Dropdown Selected values\r\n if (data[\"generalAlert\"].voipStates != null) {\r\n this.voipListOfState = [];\r\n let voipStates = data[\"generalAlert\"].voipStates\r\n if (voipStates.length > 0) {\r\n for (let iCounter = 0; iCounter < voipStates.length; iCounter++) {\r\n this.voipSelectedItemsState.push(\r\n { \"id\": voipStates[iCounter].stateId, \"itemName\": voipStates[iCounter].name }\r\n );\r\n this.voipListOfState.push(voipStates[iCounter].stateId);\r\n }\r\n }\r\n }\r\n\r\n // IPR State - Set Dropdown Selected values\r\n if (data[\"generalAlert\"].iprStates != null) {\r\n let iprStates = data[\"generalAlert\"].iprStates;\r\n this.iprListOfState = [];\r\n if (iprStates.length > 0) {\r\n for (let iCounter = 0; iCounter < iprStates.length; iCounter++) {\r\n this.iprSelectedItemsState.push(\r\n { \"id\": iprStates[iCounter].stateId, \"itemName\": iprStates[iCounter].name }\r\n );\r\n this.iprListOfState.push(iprStates[iCounter].stateId);\r\n }\r\n }\r\n }\r\n\r\n // IPR Provider - Set Dropdown Selected values\r\n if (data[\"generalAlert\"].iprProvider != null) {\r\n this.iprListOfProvider = [];\r\n let iprProvider = data[\"generalAlert\"].iprProvider;\r\n if (iprProvider.length > 0) {\r\n for (let iCounter = 0; iCounter < iprProvider.length; iCounter++) {\r\n this.iprSelectedItemsForProvider.push(\r\n { \"id\": iprProvider[iCounter].carrierId, \"itemName\": iprProvider[iCounter].businessName }\r\n );\r\n this.iprListOfProvider.push(iprProvider[iCounter].carrierId);\r\n }\r\n }\r\n }\r\n\r\n // Ation State - Set Dropdown Selected values\r\n if (data[\"generalAlert\"].actionStates != null) {\r\n this.actionItemListOfState = [];\r\n let actionStates = data[\"generalAlert\"].actionStates;\r\n if (actionStates.length > 0) {\r\n for (let iCounter = 0; iCounter < actionStates.length; iCounter++) {\r\n this.actionItemSelectedItemsState.push(\r\n { \"id\": actionStates[iCounter].stateId, \"itemName\": actionStates[iCounter].name }\r\n );\r\n this.actionItemListOfState.push(actionStates[iCounter].stateId);\r\n }\r\n }\r\n }\r\n\r\n // Ation Type - Set Dropdown Selected values\r\n if (data[\"generalAlert\"].actionType != null) {\r\n this.actionTypesListOfItem = [];\r\n let actionType = data[\"generalAlert\"].actionType;\r\n if (actionType.length > 0) {\r\n for (let iCounter = 0; iCounter < actionType.length; iCounter++) {\r\n this.actionTypesSelectedItems.push(\r\n { \"id\": actionType[iCounter].actionItemTypeId, \"itemName\": actionType[iCounter].typeName }\r\n );\r\n this.actionTypesListOfItem.push(actionType[iCounter].actionItemTypeId);\r\n }\r\n }\r\n }\r\n\r\n // Ation Carrier Category - Set Dropdown Selected values\r\n if (data[\"generalAlert\"].carrierCategory != null) {\r\n let carrierCategory = data[\"generalAlert\"].carrierCategory;\r\n this.actionCategoriesListOfItem = [];\r\n if (carrierCategory.length > 0) {\r\n for (let iCounter = 0; iCounter < carrierCategory.length; iCounter++) {\r\n this.actionCategoriesSelectedItems.push(\r\n { \"id\": carrierCategory[iCounter].carrierCatId, \"itemName\": carrierCategory[iCounter].carrierCatName }\r\n );\r\n this.actionCategoriesListOfItem.push(carrierCategory[iCounter].carrierCatId);\r\n }\r\n }\r\n }\r\n\r\n\r\n this.addUpdateGeneralAlert.setValue({\r\n generalAlertsId: this.generalAlertsModel.generalAlertsId,\r\n alertDate: this.generalAlertsModel.alertDate,\r\n subject: this.generalAlertsModel.subject,\r\n message: this.generalAlertsModel.message,\r\n // isGeneralAlerts: this.isGeneralAlerts,\r\n // isWireless: this.isWirelessControlEnable,\r\n wirelessState: this.wirelessSelectedItemsState,\r\n wirelessStateOp: this.generalAlertsModel.wirelessStateOp,\r\n // isVoip: this.isVoIPControlEnable,\r\n voipStateOp: this.generalAlertsModel.voipStateOp,\r\n voipState: this.voipSelectedItemsState,\r\n // isIPR: this.isIPRControlEnable,\r\n iprStateOp: this.generalAlertsModel.iprStateOp,\r\n iprState: this.iprSelectedItemsState,\r\n iprProviders: this.iprSelectedItemsForProvider,\r\n // isActionItem: this.isActionItemControlEnable,\r\n actionStateOp: this.generalAlertsModel.actionStateOp,\r\n actionStates: this.actionItemSelectedItemsState,\r\n actionTypes: this.actionTypesSelectedItems,\r\n actionCategories: this.actionCategoriesSelectedItems\r\n });\r\n\r\n this.isDataLoad = false;\r\n }\r\n else {\r\n this.isDataLoad = false;\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n }\r\n }, error => {\r\n this.isDataLoad = false;\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n GetIPRProvider(): void {\r\n this.iprDropdownListForProvider = [];\r\n this.actionItemServices.GetActionItemProvider(this.tokenKey).subscribe(\r\n data => {\r\n if (data[\"list\"] != null && data[\"status\"] != \"Failure\") {\r\n for (let iCounter = 0; iCounter < data[\"list\"].length; iCounter++) {\r\n this.iprDropdownListForProvider.push(\r\n { \"id\": data[\"list\"][iCounter].carrierId, \"itemName\": data[\"list\"][iCounter].businessName }\r\n );\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n setWirelessDropDownSetting() {\r\n this.wirelessDropdownStateSettings = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n disabled: this.isWirelessControlEnable,\r\n maxHeight: this.multiSelectDropDownHeight\r\n };\r\n }\r\n\r\n setVoIPDropDownSetting() {\r\n this.voipDropdownStateSettings = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n disabled: this.isVoIPControlEnable,\r\n maxHeight: this.multiSelectDropDownHeight\r\n };\r\n }\r\n\r\n setIPRDropDownSetting() {\r\n this.iprDropdownStateSettings = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n disabled: this.isIPRControlEnable,\r\n maxHeight: this.multiSelectDropDownHeight\r\n };\r\n\r\n this.iprDropdownSettingsForProvider = {\r\n singleSelection: false,\r\n text: \"Select Provider(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No provider available',\r\n showCheckbox: true,\r\n disabled: this.isIPRControlEnable,\r\n maxHeight: this.multiSelectDropDownHeight\r\n };\r\n }\r\n\r\n setActionItemDropDownSetting() {\r\n this.actionItemDropdownStateSettings = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n disabled: this.isActionItemControlEnable,\r\n maxHeight: this.multiSelectDropDownHeight\r\n };\r\n\r\n this.actionTypesDropdownSettings = {\r\n singleSelection: false,\r\n text: \"Select Categories\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No categories available',\r\n showCheckbox: true,\r\n disabled: this.isActionItemControlEnable,\r\n maxHeight: this.multiSelectDropDownHeight\r\n };\r\n\r\n this.actionCategoriesDropdownSettings = {\r\n singleSelection: false,\r\n text: \"Select Carrier Type(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No carriers type available',\r\n showCheckbox: true,\r\n disabled: this.isActionItemControlEnable,\r\n maxHeight: this.multiSelectDropDownHeight\r\n };\r\n }\r\n\r\n\r\n\r\n isAlertDate(dateArray: any) {\r\n if (dateArray != null) {\r\n let dd1 = dateArray.getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (dateArray.getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n this.generalAlertsModel.alertDate = mm1 + '/' + dd1 + '/' + dateArray.getFullYear();\r\n }\r\n else\r\n this.generalAlertsModel.alertDate = null;\r\n }\r\n\r\n isGeneralAlertsChecked($event) {\r\n this.isGeneralAlerts = !$event.currentTarget.checked;\r\n }\r\n\r\n isWirelessChecked($event: any) {\r\n if ($event.currentTarget.checked == false) {\r\n this.generalAlertsModel.wirelessStateOp = undefined;\r\n }\r\n this.wirelessSelectedItemsState = [];\r\n this.wirelessListOfState = [];\r\n this.isWirelessControlEnable = !$event.currentTarget.checked;\r\n this.setWirelessDropDownSetting();\r\n\r\n }\r\n\r\n isVoIPChecked($event: any) {\r\n if ($event.currentTarget.checked == false) {\r\n this.generalAlertsModel.voipStateOp = undefined;\r\n }\r\n this.voipSelectedItemsState = [];\r\n this.voipListOfState = [];\r\n this.isVoIPControlEnable = !$event.currentTarget.checked;\r\n this.setVoIPDropDownSetting();\r\n }\r\n\r\n isIPRChecked($event: any) {\r\n if ($event.currentTarget.checked == false) {\r\n this.generalAlertsModel.iprStateOp = undefined;\r\n this.generalAlertsModel.iprProviderOp = undefined;\r\n }\r\n this.iprSelectedItemsState = [];\r\n this.iprSelectedItemsForProvider = [];\r\n this.iprListOfState = [];\r\n this.iprListOfProvider = [];\r\n this.isIPRControlEnable = !$event.currentTarget.checked;\r\n this.setIPRDropDownSetting();\r\n }\r\n\r\n isActionItemChecked($event: any) {\r\n if ($event.currentTarget.checked == false) {\r\n this.generalAlertsModel.actionStateOp = undefined;\r\n this.generalAlertsModel.actionTypeOp = undefined;\r\n this.generalAlertsModel.actionCategoryOp = undefined;\r\n }\r\n this.actionItemSelectedItemsState = [];\r\n this.actionTypesSelectedItems = [];\r\n this.actionCategoriesSelectedItems = [];\r\n this.actionItemListOfState = [];\r\n this.actionTypesListOfItem = [];\r\n this.actionCategoriesListOfItem = [];\r\n this.isActionItemControlEnable = !$event.currentTarget.checked;\r\n this.setActionItemDropDownSetting();\r\n }\r\n\r\n GetStateData() {\r\n this.userServices.GetStateFindByUserID(this.tokenKey, 0).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n // Set All Item\r\n if (data['wirelessStates'] != null) {\r\n let wirelessStates = data['wirelessStates'];\r\n for (let iCounter = 0; iCounter < wirelessStates.length; iCounter++) {\r\n this.wirelessDropdownListState.push({ \"id\": wirelessStates[iCounter].stateId, \"itemName\": wirelessStates[iCounter].name });\r\n }\r\n }\r\n if (data['iprStates'] != null) {\r\n let iprStates = data['iprStates'];\r\n for (let iCounter = 0; iCounter < iprStates.length; iCounter++) {\r\n this.iprDropdownListState.push({ \"id\": iprStates[iCounter].stateId, \"itemName\": iprStates[iCounter].name });\r\n }\r\n }\r\n\r\n if (data['voIPStates'] != null) {\r\n let voIPStates = data['voIPStates'];\r\n for (let iCounter = 0; iCounter < voIPStates.length; iCounter++) {\r\n this.voipDropdownListState.push({ \"id\": voIPStates[iCounter].stateId, \"itemName\": voIPStates[iCounter].name });\r\n }\r\n }\r\n\r\n if (data['actionStates'] != null) {\r\n let actionStates = data['actionStates'];\r\n for (let iCounter = 0; iCounter < actionStates.length; iCounter++) {\r\n this.actionItemDropdownListState.push({ \"id\": actionStates[iCounter].stateId, \"itemName\": actionStates[iCounter].name });\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n ActionTypes(): void {\r\n this.actionTypesDropdownList = [];\r\n this.actionItemServices.GetActionItemsType(this.tokenKey).subscribe(\r\n data => {\r\n if (data[\"actionType\"] != null && data[\"status\"] != \"Failure\") {\r\n for (let iCounter = 0; iCounter < data[\"actionType\"].length; iCounter++) {\r\n this.actionTypesDropdownList.push(\r\n { \"id\": data[\"actionType\"][iCounter].actionItemTypeId, \"itemName\": data[\"actionType\"][iCounter].typeName }\r\n );\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n GetCarrierCategories() {\r\n this.actionItemServices.GetCarrierCategories(this.tokenKey).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n let carrierCategories = data['companyModel'];\r\n if (carrierCategories != null) {\r\n if (carrierCategories.length > 0) {\r\n for (let iCounter = 0; iCounter < carrierCategories.length; iCounter++) {\r\n this.actionCategoriesDropdownList.push({ \"id\": parseInt(carrierCategories[iCounter].carrierCatId), \"itemName\": carrierCategories[iCounter].carrierCatName });\r\n }\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n // =====================================================================\r\n // WIRELESS\r\n // =====================================================================\r\n\r\n onWirelessSelectedState($event) {\r\n if (this.wirelessListOfState != null) {\r\n if (this.wirelessListOfState.length > 0) {\r\n this.wirelessListOfState = this.removeElemetninArray(this.wirelessListOfState, $event.id)\r\n this.wirelessListOfState.push($event.id);\r\n }\r\n else {\r\n this.wirelessListOfState.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeWirelessSelectedState($event) {\r\n if (this.wirelessListOfState != null) {\r\n if (this.wirelessListOfState.length > 0) {\r\n this.wirelessListOfState = this.removeElemetninArray(this.wirelessListOfState, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onWirelessSelectStateAll($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.wirelessListOfState != null) {\r\n if (this.wirelessListOfState.length > 0) {\r\n this.wirelessListOfState = this.removeElemetninArray(this.wirelessListOfState, $event[iCounter].id)\r\n this.wirelessListOfState.push($event[iCounter].id);\r\n }\r\n else {\r\n this.wirelessListOfState.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeWirelessSelectStateAll($event) {\r\n this.wirelessListOfState = [];\r\n }\r\n\r\n // =====================================================================\r\n // VoIP\r\n // =====================================================================\r\n onVoIpSelectedState($event) {\r\n if (this.voipListOfState != null) {\r\n if (this.voipListOfState.length > 0) {\r\n this.voipListOfState = this.removeElemetninArray(this.voipListOfState, $event.id)\r\n this.voipListOfState.push($event.id);\r\n }\r\n else {\r\n this.voipListOfState.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeVoIpSelectedState($event) {\r\n if (this.voipListOfState != null) {\r\n if (this.voipListOfState.length > 0) {\r\n this.voipListOfState = this.removeElemetninArray(this.voipListOfState, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onVoIpSelectStateAll($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.voipListOfState != null) {\r\n if (this.voipListOfState.length > 0) {\r\n this.voipListOfState = this.removeElemetninArray(this.voipListOfState, $event[iCounter].id)\r\n this.voipListOfState.push($event[iCounter].id);\r\n }\r\n else {\r\n this.voipListOfState.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeVoIpSelectStateAll($event) {\r\n this.voipListOfState = [];\r\n }\r\n\r\n // =====================================================================\r\n // IPR - STATE\r\n // =====================================================================\r\n\r\n onIPRSelectedState($event) {\r\n if (this.iprListOfState != null) {\r\n if (this.iprListOfState.length > 0) {\r\n this.iprListOfState = this.removeElemetninArray(this.iprListOfState, $event.id)\r\n this.iprListOfState.push($event.id);\r\n }\r\n else {\r\n this.iprListOfState.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onIPRDeSelectedState($event) {\r\n if (this.iprListOfState != null) {\r\n if (this.iprListOfState.length > 0) {\r\n this.iprListOfState = this.removeElemetninArray(this.iprListOfState, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onIPRSelectStateAll($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.iprListOfState != null) {\r\n if (this.iprListOfState.length > 0) {\r\n this.iprListOfState = this.removeElemetninArray(this.iprListOfState, $event[iCounter].id)\r\n this.iprListOfState.push($event[iCounter].id);\r\n }\r\n else {\r\n this.iprListOfState.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onIPRDeSelectStateAll($event) {\r\n this.iprListOfState = [];\r\n }\r\n\r\n // =====================================================================\r\n // IPR - PROVIDER\r\n // =====================================================================\r\n\r\n onIPRSelectedProvider($event) {\r\n if (this.iprListOfProvider != null) {\r\n if (this.iprListOfProvider.length > 0) {\r\n this.iprListOfProvider = this.removeElemetninArray(this.iprListOfProvider, $event.id)\r\n this.iprListOfProvider.push($event.id);\r\n }\r\n else {\r\n this.iprListOfProvider.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onIPRDeSelectedProvider($event) {\r\n if (this.iprListOfProvider != null) {\r\n if (this.iprListOfProvider.length > 0) {\r\n this.iprListOfProvider = this.removeElemetninArray(this.iprListOfProvider, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onIPRSelectAllProvider($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.iprListOfProvider != null) {\r\n if (this.iprListOfProvider.length > 0) {\r\n this.iprListOfProvider = this.removeElemetninArray(this.iprListOfProvider, $event[iCounter].id)\r\n this.iprListOfProvider.push($event[iCounter].id);\r\n }\r\n else {\r\n this.iprListOfProvider.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onIPRDeSelectAllProvider($event) {\r\n this.iprListOfProvider = [];\r\n }\r\n\r\n // =====================================================================\r\n // ACTION ITEM - STATE\r\n // =====================================================================\r\n\r\n onActionItemSelectedState($event) {\r\n if (this.actionItemListOfState != null) {\r\n if (this.actionItemListOfState.length > 0) {\r\n this.actionItemListOfState = this.removeElemetninArray(this.actionItemListOfState, $event.id)\r\n this.actionItemListOfState.push($event.id);\r\n }\r\n else {\r\n this.actionItemListOfState.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeActionItemSelectedState($event) {\r\n if (this.actionItemListOfState != null) {\r\n if (this.actionItemListOfState.length > 0) {\r\n this.actionItemListOfState = this.removeElemetninArray(this.actionItemListOfState, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onActionItemSelectStateAll($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.actionItemListOfState != null) {\r\n if (this.actionItemListOfState.length > 0) {\r\n this.actionItemListOfState = this.removeElemetninArray(this.actionItemListOfState, $event[iCounter].id)\r\n this.actionItemListOfState.push($event[iCounter].id);\r\n }\r\n else {\r\n this.actionItemListOfState.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeActionItemSelectStateAll($event) {\r\n this.actionItemListOfState = [];\r\n }\r\n\r\n // =====================================================================\r\n // ACTION ITEM - TYPES\r\n // =====================================================================\r\n\r\n onActionTypesSelected($event) {\r\n if (this.actionTypesListOfItem != null) {\r\n if (this.actionTypesListOfItem.length > 0) {\r\n this.actionTypesListOfItem = this.removeElemetninArray(this.actionTypesListOfItem, $event.id)\r\n this.actionTypesListOfItem.push($event.id);\r\n }\r\n else {\r\n this.actionTypesListOfItem.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeActionTypesSelected($event) {\r\n if (this.actionTypesListOfItem != null) {\r\n if (this.actionTypesListOfItem.length > 0) {\r\n this.actionTypesListOfItem = this.removeElemetninArray(this.actionTypesListOfItem, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onActionTypesSelectAll($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.actionTypesListOfItem != null) {\r\n if (this.actionTypesListOfItem.length > 0) {\r\n this.actionTypesListOfItem = this.removeElemetninArray(this.actionTypesListOfItem, $event[iCounter].id)\r\n this.actionTypesListOfItem.push($event[iCounter].id);\r\n }\r\n else {\r\n this.actionTypesListOfItem.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeActionTypesSelectAll($event) {\r\n this.actionTypesListOfItem = [];\r\n }\r\n\r\n // =====================================================================\r\n // ACTION ITEM - ACTION CATEGORIES\r\n // =====================================================================\r\n\r\n onActionCategoriesSelected($event) {\r\n if (this.actionCategoriesListOfItem != null) {\r\n if (this.actionCategoriesListOfItem.length > 0) {\r\n this.actionCategoriesListOfItem = this.removeElemetninArray(this.actionCategoriesListOfItem, $event.id)\r\n this.actionCategoriesListOfItem.push($event.id);\r\n }\r\n else {\r\n this.actionCategoriesListOfItem.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeActionCategoriesSelected($event) {\r\n if (this.actionCategoriesListOfItem != null) {\r\n if (this.actionCategoriesListOfItem.length > 0) {\r\n this.actionCategoriesListOfItem = this.removeElemetninArray(this.actionCategoriesListOfItem, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onActionCategoriesSelectAll($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.actionCategoriesListOfItem != null) {\r\n if (this.actionCategoriesListOfItem.length > 0) {\r\n this.actionCategoriesListOfItem = this.removeElemetninArray(this.actionCategoriesListOfItem, $event[iCounter].id)\r\n this.actionCategoriesListOfItem.push($event[iCounter].id);\r\n }\r\n else {\r\n this.actionCategoriesListOfItem.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeActionCategoriesSelectAll($event) {\r\n this.actionCategoriesListOfItem = [];\r\n }\r\n\r\n saveAddUpdateGeneralAlert(addUpdateGeneralAlert: any) {\r\n\r\n if (addUpdateGeneralAlert.value['alertDate'] == '') {\r\n this.showMessage('Please select alert date', 'Error', 'error');\r\n return;\r\n }\r\n let currentDate = new Date();\r\n if (new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate()) > addUpdateGeneralAlert.value[\"alertDate\"]) {\r\n this.showMessage('Previous alert date not allow', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (addUpdateGeneralAlert.value['subject'] == '' || typeof (addUpdateGeneralAlert.value['subject']) == 'undefined') {\r\n this.showMessage('Please enter subject', 'Error', 'error');\r\n return;\r\n }\r\n if (addUpdateGeneralAlert.value['subject'] != '') {\r\n if (addUpdateGeneralAlert.value['subject'].toString().trim() == '') {\r\n this.showMessage('Please enter subject', 'Error', 'error');\r\n return;\r\n }\r\n }\r\n\r\n let planText = this.removeHTMLTags(addUpdateGeneralAlert.value['message']);\r\n if (planText === false) {\r\n this.showMessage('Please enter message', 'Error', 'error');\r\n return;\r\n }\r\n if (planText != '') {\r\n if (planText.trim() == '') {\r\n this.showMessage('Please enter message', 'Error', 'error');\r\n return;\r\n }\r\n }\r\n\r\n if (this.isGeneralAlerts && this.isWirelessControlEnable && this.isVoIPControlEnable && this.isIPRControlEnable && this.isActionItemControlEnable) {\r\n this.showMessage('Please select atlist one alert criteria', 'Error', 'error');\r\n return;\r\n }\r\n\r\n // Vaidation For Wireless \r\n if (!this.isWirelessControlEnable) {\r\n if (typeof (addUpdateGeneralAlert.value['wirelessStateOp']) == 'undefined' || addUpdateGeneralAlert.value['wirelessStateOp'] == '0') {\r\n this.showMessage('Please select atlist wireless state option', 'Error', 'error');\r\n return;\r\n }\r\n if (this.wirelessListOfState.length == 0) {\r\n this.showMessage('Please select atlist one wireless state', 'Error', 'error');\r\n return;\r\n }\r\n }\r\n\r\n // Vaidation For VoIP \r\n if (!this.isVoIPControlEnable) {\r\n if (typeof (addUpdateGeneralAlert.value['voipStateOp']) == 'undefined' || addUpdateGeneralAlert.value['voipStateOp'] == '0') {\r\n this.showMessage('Please select atlist one voip state option', 'Error', 'error');\r\n return;\r\n }\r\n if (this.voipListOfState.length == 0) {\r\n this.showMessage('Please select atlist one voip state', 'Error', 'error');\r\n return;\r\n }\r\n }\r\n\r\n // Vaidation For IPR \r\n if (!this.isIPRControlEnable) {\r\n if (this.iprListOfState.length == 0 && this.iprListOfProvider.length == 0) {\r\n this.showMessage('Please select atlist one ipr state/provider', 'Error', 'error');\r\n return;\r\n }\r\n if ((typeof (addUpdateGeneralAlert.value['iprStateOp']) == 'undefined' || addUpdateGeneralAlert.value['iprStateOp'] == '0') && this.iprListOfState.length > 0) {\r\n this.showMessage('Please select atlist one ipr subscribe/favorite state option', 'Error', 'error');\r\n return;\r\n }\r\n }\r\n\r\n // Vaidation For ACTION TYPE \r\n\r\n if (!this.isActionItemControlEnable) {\r\n if (this.actionItemListOfState.length == 0 && this.actionTypesListOfItem.length == 0 && this.actionCategoriesListOfItem.length == 0) {\r\n this.showMessage('Please select atlist one trac-it state/categories/carrier type dropdown item', 'Error', 'error');\r\n return;\r\n }\r\n if ((typeof (addUpdateGeneralAlert.value['actionStateOp']) == 'undefined' || addUpdateGeneralAlert.value['actionStateOp'] == '0' || addUpdateGeneralAlert.value['actionStateOp'] == null) && this.actionItemListOfState.length > 0) {\r\n this.showMessage('Please select atlist one trac-it state option', 'Error', 'error');\r\n return;\r\n }\r\n }\r\n\r\n if (typeof (addUpdateGeneralAlert.value['generalAlertsId']) == 'undefined') {\r\n this.generalAlertsModel.generalAlertsId = 0;\r\n }\r\n else {\r\n this.generalAlertsModel.generalAlertsId = addUpdateGeneralAlert.value['generalAlertsId'];\r\n }\r\n\r\n if (typeof (addUpdateGeneralAlert.value['subject']) == 'undefined') {\r\n this.generalAlertsModel.subject = '';\r\n }\r\n else {\r\n this.generalAlertsModel.subject = addUpdateGeneralAlert.value['subject'];\r\n }\r\n\r\n if (typeof (addUpdateGeneralAlert.value['message']) == 'undefined') {\r\n this.generalAlertsModel.message = '';\r\n }\r\n else {\r\n this.generalAlertsModel.message = addUpdateGeneralAlert.value['message'];\r\n }\r\n\r\n this.generalAlertsModel.isGeneralAlerts = !this.isGeneralAlerts;\r\n this.generalAlertsModel.productId = this.setProduct();\r\n this.generalAlertsModel.createdBy = this.userID;\r\n this.generalAlertsModel.modifiedBy = this.userID;\r\n\r\n // WIRELESS\r\n if (typeof (addUpdateGeneralAlert.value['wirelessStateOp']) == 'undefined') {\r\n this.generalAlertsModel.wirelessStateOp = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.wirelessStateOp = addUpdateGeneralAlert.value['wirelessStateOp'];\r\n }\r\n\r\n if (this.wirelessListOfState.length == 0) {\r\n this.generalAlertsModel.wirelessStates = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.wirelessStates = this.wirelessListOfState.join(',');\r\n }\r\n\r\n // VoIP\r\n if (typeof (addUpdateGeneralAlert.value['voipStateOp']) == 'undefined') {\r\n this.generalAlertsModel.voipStateOp = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.voipStateOp = addUpdateGeneralAlert.value['voipStateOp'];\r\n }\r\n\r\n if (this.voipListOfState.length == 0) {\r\n this.generalAlertsModel.voipStates = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.voipStates = this.voipListOfState.join(',');\r\n }\r\n\r\n // IPR - State\r\n if (typeof (addUpdateGeneralAlert.value['iprStateOp']) == 'undefined') {\r\n this.generalAlertsModel.iprStateOp = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.iprStateOp = addUpdateGeneralAlert.value['iprStateOp'];\r\n }\r\n\r\n if (this.iprListOfState.length == 0) {\r\n this.generalAlertsModel.iprStates = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.iprStates = this.iprListOfState.join(',');\r\n }\r\n\r\n // IPR - Provider\r\n if (typeof (addUpdateGeneralAlert.value['iprProviderOp']) == 'undefined') {\r\n this.generalAlertsModel.iprProviderOp = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.iprProviderOp = addUpdateGeneralAlert.value['iprProviderOp'];\r\n }\r\n\r\n if (this.iprListOfProvider.length == 0) {\r\n this.generalAlertsModel.iprProviders = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.iprProviders = this.iprListOfProvider.join(',');\r\n }\r\n\r\n // Action Item - State\r\n if (typeof (addUpdateGeneralAlert.value['actionStateOp']) == 'undefined') {\r\n this.generalAlertsModel.actionStateOp = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.actionStateOp = addUpdateGeneralAlert.value['actionStateOp'];\r\n }\r\n\r\n if (this.actionItemListOfState.length == 0) {\r\n this.generalAlertsModel.actionStates = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.actionStates = this.actionItemListOfState.join(',');\r\n }\r\n\r\n // Action Item - Types\r\n // if (typeof (addUpdateGeneralAlert.value['actionTypeOp']) == 'undefined') {\r\n // this.generalAlertsModel.actionTypeOp = '0';\r\n // }\r\n // else {\r\n // this.generalAlertsModel.actionTypeOp = addUpdateGeneralAlert.value['actionTypeOp'];\r\n // }\r\n\r\n if (typeof (addUpdateGeneralAlert.value['actionTypes']) == 'undefined') {\r\n this.generalAlertsModel.actionTypes = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.actionTypes = this.actionTypesListOfItem.join(',');\r\n }\r\n\r\n // Action Item - Categories\r\n // if (typeof (addUpdateGeneralAlert.value['actionCategoryOp']) == 'undefined') {\r\n // this.generalAlertsModel.actionCategoryOp = '0';\r\n // }\r\n // else {\r\n // this.generalAlertsModel.actionCategoryOp = addUpdateGeneralAlert.value['actionCategoryOp'];\r\n // }\r\n\r\n if (typeof (addUpdateGeneralAlert.value['actionCategories']) == 'undefined') {\r\n this.generalAlertsModel.actionCategories = '0';\r\n }\r\n else {\r\n this.generalAlertsModel.actionCategories = this.actionCategoriesListOfItem.join(',');\r\n }\r\n\r\n this.actionItemServices.AddUpdateGeneralAlerts(this.tokenKey, this.generalAlertsModel).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') { \r\n this.showMessage('General alerts successfully saved', 'Success', 'success');\r\n this.router.navigate(['/admin/trac-it/i360Alerts']);\r\n }\r\n else\r\n this.showMessage(data['status'], 'Error', 'error');\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n setProduct() {\r\n let prodId = '';\r\n let sparator = '';\r\n if (!this.isGeneralAlerts) {\r\n prodId = ToolEnum.generalalert.toString();\r\n sparator = ',';\r\n }\r\n\r\n\r\n if (!this.isWirelessControlEnable) {\r\n if (prodId != '')\r\n prodId += sparator + ToolEnum.wireless.toString();\r\n else {\r\n prodId += sparator + ToolEnum.wireless.toString();\r\n sparator = ',';\r\n }\r\n }\r\n\r\n if (!this.isVoIPControlEnable) {\r\n if (prodId != '') {\r\n prodId += sparator + ToolEnum.voip.toString();\r\n }\r\n else {\r\n prodId += sparator + ToolEnum.voip.toString();\r\n sparator = ',';\r\n }\r\n }\r\n\r\n if (!this.isIPRControlEnable) {\r\n if (prodId != '') {\r\n prodId += sparator + ToolEnum.ipr.toString();\r\n }\r\n else {\r\n prodId += sparator + ToolEnum.ipr.toString();\r\n sparator = ',';\r\n }\r\n }\r\n\r\n if (!this.isActionItemControlEnable) {\r\n if (prodId != '') {\r\n prodId += sparator + ToolEnum.actionitem.toString();\r\n }\r\n else {\r\n prodId += sparator + ToolEnum.actionitem.toString();\r\n sparator = ',';\r\n }\r\n }\r\n\r\n return prodId;\r\n }\r\n\r\n removeHTMLTags(str) {\r\n if ((str === null) || (str === ''))\r\n return false;\r\n else\r\n str = str.toString();\r\n return str.replace(/<[^>]*>/g, '');\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL2FjdGlvbi1pdGVtL2xhbmRpbmctcGFnZS9sYW5kaW5nLXBhZ2UuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ActionItemService } from '../../../../Services/actionitem.service';\r\nimport { LandingPageModel } from '../../../../Models/landingPageModel';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { FormGroup, FormBuilder, FormControl } from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-landing-page',\r\n templateUrl: './landing-page.component.html',\r\n styleUrls: ['./landing-page.component.css']\r\n})\r\nexport class LandingPageComponent implements OnInit {\r\n\r\n tokenKey: string = '';\r\n objLandingPageModel = new LandingPageModel();\r\n userForm: FormGroup;\r\n editorData = ''\r\n loginuserID: number;\r\n constructor(private titleService: Title, private toastr: ToastrService, private _fb: FormBuilder, private actionItemService: ActionItemService, private checkAuth: CheckAuth) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.loginuserID = +sessionStorage.getItem('AdminUserId');\r\n this.userForm = this._fb.group({\r\n title: [''],\r\n description: [''],\r\n });\r\n this.titleService.setTitle('IRIS Home');\r\n }\r\n ngOnInit() {\r\n this.GetLandingPageDetails();\r\n }\r\n\r\n GetLandingPageDetails() {\r\n this.actionItemService.GetLandingPageDetails(this.tokenKey).subscribe(data => {\r\n if (data['status'] !== 'Failure') {\r\n \r\n this.objLandingPageModel = data.result;\r\n this.editorData = this.objLandingPageModel.description;\r\n this.userForm.setValue({\r\n 'title': this.objLandingPageModel.title,\r\n 'description': this.objLandingPageModel.description\r\n });\r\n\r\n }\r\n });\r\n\r\n }\r\n\r\n change({ editor }) {\r\n \r\n const EditorData = editor.getData();\r\n this.userForm.get('description').setValue(EditorData);\r\n }\r\n\r\n saveLandingPageDetails() {\r\n \r\n if ((this.userForm.value['title'] == null || this.userForm.value['title'] == undefined ||\r\n this.userForm.value['title'].trim() == '')) {\r\n this.showMessage('Please enter title.', 'Required', 'error');\r\n return;\r\n }\r\n else if ((this.userForm.value['description'] == null || this.userForm.value['description'] == undefined ||\r\n this.userForm.value['description'].trim() == '')) {\r\n this.showMessage('Please enter description.', 'Required', 'error');\r\n return;\r\n }\r\n else {\r\n this.objLandingPageModel.title = this.userForm.value['title'].trim();\r\n this.objLandingPageModel.description = this.userForm.value['description'].trim();\r\n this.objLandingPageModel.userid = this.loginuserID;\r\n this.actionItemService.SaveLandingPageDetails(this.tokenKey, this.objLandingPageModel).subscribe(data => {\r\n if (data['status'] !== 'Failure') {\r\n this.showMessage('Details Saved Successfully.', 'Success', 'success');\r\n this.userForm.setValue({\r\n 'title': this.objLandingPageModel.title,\r\n 'description': this.objLandingPageModel.description\r\n });\r\n }\r\n else {\r\n this.showMessage('Issue In Saving Your Details.', 'Error', 'error');\r\n }\r\n });\r\n }\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n}\r\n","export default \".login-page label {\\r\\n font-weight: 600;\\r\\n text-transform: none;\\r\\n}\\r\\n\\r\\n.divlogotop {\\r\\n padding: 12.5% 0 2% 25px;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vYWRtaW4tbG9naW4vYWRtaW4tbG9naW4uY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGdCQUFnQjtFQUNoQixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUIiLCJmaWxlIjoic3JjL2FwcC9BZG1pbi9hZG1pbi1sb2dpbi9hZG1pbi1sb2dpbi5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmxvZ2luLXBhZ2UgbGFiZWwge1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi5kaXZsb2dvdG9wIHtcclxuICBwYWRkaW5nOiAxMi41JSAwIDIlIDI1cHg7XHJcbn0iXX0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { UsersService } from '../../../Services/users.service';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { userModel } from '../../../Models/usersModel';\r\nimport { Title } from '@angular/platform-browser';\r\n@Component({\r\n selector: 'app-admin-login',\r\n templateUrl: './admin-login.component.html',\r\n styleUrls: ['./admin-login.component.css']\r\n})\r\nexport class AdminLoginComponent implements OnInit {\r\n userModel = new userModel();\r\n appModel: any;\r\n tokenKey: string = '';\r\n loginForm: FormGroup;\r\n\r\n \r\n\r\n constructor(private toastr: ToastrService, private _fb: FormBuilder, private UserService: UsersService, private checkAuth: CheckAuth, private router: Router\r\n , private titleService: Title) {\r\n sessionStorage.removeItem('tokenValue');\r\n sessionStorage.removeItem('appStartTime');\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.titleService.setTitle('Admin Login');\r\n }\r\n\r\n ngOnInit() {\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.loginForm = this._fb.group({\r\n userid: 0,\r\n username: ['', [Validators.required]],\r\n password: ['', [Validators.required]]\r\n })\r\n }\r\n\r\n CheckLogin() {\r\n\r\n if (this.loginForm.value[\"username\"] == \"\") {\r\n this.showMessage('Please enter username', 'Required', 'error');\r\n return;\r\n }\r\n if (this.loginForm.value[\"password\"] == \"\") {\r\n this.showMessage('Please enter password', 'Required', 'error');\r\n return;\r\n }\r\n if (!this.loginForm.valid) {\r\n return;\r\n }\r\n\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.UserService.checkAdminUserLogin(this.tokenKey, this.loginForm.value.username, this.loginForm.value.password).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.userModel = data[\"usersModel\"];\r\n if (this.userModel != null) {\r\n\r\n if (data[\"usersModel\"].listOfProducts.length > 0) {\r\n sessionStorage.setItem('AdminUserId', this.userModel.userId);\r\n sessionStorage.setItem('AdminUserType', this.userModel.userTypeId);\r\n let Tool: string = data[\"usersModel\"].listOfProducts[0].productName.toLowerCase();\r\n\r\n let FirstLastName = this.userModel.firstName + ' ' + this.userModel.lastName;\r\n if (FirstLastName.trim() != '')\r\n sessionStorage.setItem('AdminFirstLastName', FirstLastName);\r\n else\r\n sessionStorage.setItem('AdminFirstLastName', this.userModel.userName);\r\n\r\n sessionStorage.setItem('AdminCompanyName', this.userModel.companyName);\r\n\r\n sessionStorage.setItem('adminTypeId', this.userModel.adminTypeId.toString());\r\n\r\n sessionStorage.setItem('UserLoginTool', Tool);\r\n let UserAccessibleTools: string = ''\r\n \r\n for (let iCounter = 0; iCounter < data[\"usersModel\"].listOfProducts.length; iCounter++) {\r\n UserAccessibleTools += data[\"usersModel\"].listOfProducts[iCounter].productName + ',';\r\n }\r\n sessionStorage.setItem('UserAccessibleTools', UserAccessibleTools.substring(0, UserAccessibleTools.length - 1).toLowerCase());\r\n let redirectTool = Tool == 'actionitem' ? 'trac-it' : Tool; \r\n this.router.navigate(['admin/' + redirectTool + '/dashboard']);\r\n }\r\n else {\r\n this.showMessage(\"You don't have access to any Tool. Please contact administrator.\", 'Error', 'error');\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n },\r\n errorCode => {\r\n this.showMessage(errorCode, 'Error', 'error');\r\n }\r\n );\r\n\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n}\r\n","export default \".menuTitle {\\r\\n color: #333;\\r\\n font-size:15px;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vZGFzaGJvYXJkL2Rhc2hib2FyZC5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsV0FBVztFQUNYLGNBQWM7QUFDaEIiLCJmaWxlIjoic3JjL2FwcC9BZG1pbi9kYXNoYm9hcmQvZGFzaGJvYXJkLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubWVudVRpdGxlIHtcclxuICBjb2xvcjogIzMzMztcclxuICBmb250LXNpemU6MTVweDtcclxufVxyXG4iXX0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { UsersService } from '../../../Services/users.service';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { StateMasterService } from '../../../Services/state-master.service';\r\nimport { updatesService } from '../../../Services/updatesService';\r\nimport { iprupdatesService } from '../../../Services/iprupdatesService';\r\nimport { ToolEnum, AdminUserType } from '../../../Models/Common';\r\nimport { ActionItemService } from '../../../Services/actionitem.service';\r\nimport { ActionDashboardCountModel } from '../../../Models/ActionDashboardCountModel';\r\n\r\n@Component({\r\n selector: 'app-dashboard',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.css']\r\n})\r\nexport class DashboardComponent implements OnInit {\r\n tokenKey: string = '';\r\n pageSize: string = '100000';\r\n totalusers: number = 0;\r\n totalclients: number = 0;\r\n totalstates: number = 0;\r\n totalupdates: number = 0;\r\n totalIPRupdates: number = 0;\r\n SelectedTool: string;\r\n productId: number = 1;\r\n actionCount = new ActionDashboardCountModel();\r\n\r\n isUserSystemAdmin: boolean = false;\r\n loginUserId: number = 0;\r\n systemUserCondition: string = '';\r\n\r\n constructor(private actionService: ActionItemService, private titleService: Title, private userService: UsersService\r\n , private checkAuth: CheckAuth, private state: StateMasterService\r\n , private updatesService: updatesService, private iprupdatesService: iprupdatesService) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n this.titleService.setTitle('Dashboard');\r\n\r\n this.loginUserId = +sessionStorage.getItem('AdminUserId');\r\n \r\n if (AdminUserType.systemadmin == parseInt(sessionStorage.getItem('adminTypeId'))) {\r\n this.isUserSystemAdmin = true;\r\n this.GetListOfUser(3, ' UserTypeId = 3'); // Get Total Clients\r\n }\r\n else\r\n this.GetListOfUser(3, ' (UserTypeId = 3 And CompanyId IN (Select CompanyId From [SystemUserCompany] Where [SystemUserCompany].UserId = ' + this.loginUserId + '))'); // Get Total Clients\r\n }\r\n\r\n ngOnInit() {\r\n this.GetListOfUser(2, ' UserTypeId = 2'); // Get Total Users\r\n this.GetState();// Get Total States\r\n this.GetUpdates();// Get Total Updates\r\n this.GetIPRUpdates();// Get IPR Total Updates\r\n this.GetActionDashboardCount();\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n GetListOfUser(usertype, WhereCondition) {\r\n if (this.tokenKey != null) {\r\n this.userService.GetUsers(this.tokenKey, 1, this.pageSize.toString(), WhereCondition, 'UserId DESC', 'null', this.loginUserId,\"\",\"\").subscribe(\r\n data => {\r\n if (usertype == 2) {\r\n this.totalusers = data['usersModel'].length;\r\n }\r\n if (usertype == 3) {\r\n this.totalclients = data['usersModel'].length;\r\n }\r\n }, error => { }\r\n );\r\n }\r\n }\r\n GetState() {\r\n this.state.GetStateMasterFindByPaged(this.tokenKey, 1, this.pageSize.toString(), 'null', 'DisplayOrder,Name', 'null', this.productId).subscribe(\r\n data => {\r\n this.totalstates = data['state'].length;\r\n },\r\n error => { }\r\n );\r\n }\r\n GetUpdates(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n if (AdminUserType.systemadmin == parseInt(sessionStorage.getItem('adminTypeId')))\r\n this.systemUserCondition = 'null'\r\n else\r\n this.systemUserCondition = ' (ISNULL(CompanyId,0) = 0 Or CompanyId IN (Select CompanyId From [SystemUserCompany] Where [SystemUserCompany].UserId = ' + this.loginUserId + '))';\r\n\r\n this.updatesService.GetUpdatesFilterByPage(this.tokenKey, '1', this.pageSize.toString(), 'null', 'DisplayOrder', 'null', this.productId, false, this.systemUserCondition).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.totalupdates = data[\"updates\"].length;\r\n }\r\n },\r\n error => { },\r\n );\r\n }\r\n\r\n GetIPRUpdates(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetUpdatesFilterByPage(this.tokenKey, '1', '5', '', 'ISNULL(ModifiedDate,CreatedDate) DESC', '').subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (data[\"updates\"].length > 0) {\r\n this.totalIPRupdates = parseInt(data[\"updates\"][0].totalRecordCount)\r\n }\r\n }\r\n\r\n },\r\n error => { },\r\n );\r\n }\r\n\r\n GetActionDashboardCount() {\r\n this.actionService.GetAdminActionItemDashboardCounts(this.tokenKey, this.systemUserCondition).subscribe(\r\n data => {\r\n if (data['status'] == 'Success')\r\n this.actionCount = data['counts'];\r\n }, error => { }\r\n );\r\n }\r\n\r\n}\r\n","export default \".switch {\\r\\n position: relative;\\r\\n display: inline-block;\\r\\n width: 60px;\\r\\n height: 34px;\\r\\n}\\r\\n\\r\\n .switch input {\\r\\n opacity: 0;\\r\\n width: 0;\\r\\n height: 0;\\r\\n }\\r\\n\\r\\n .slider {\\r\\n position: absolute;\\r\\n cursor: pointer;\\r\\n top: 0;\\r\\n left: 0;\\r\\n right: 0;\\r\\n bottom: 0;\\r\\n background-color: #ccc;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n}\\r\\n\\r\\n .slider:before {\\r\\n position: absolute;\\r\\n content: \\\"\\\";\\r\\n height: 26px;\\r\\n width: 26px;\\r\\n left: 4px;\\r\\n bottom: 4px;\\r\\n background-color: white;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n\\r\\n input:checked + .slider {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n input:focus + .slider {\\r\\n box-shadow: 0 0 1px #0039BF;\\r\\n}\\r\\n\\r\\n input:checked + .slider:before {\\r\\n -webkit-transform: translateX(26px);\\r\\n transform: translateX(26px);\\r\\n}\\r\\n\\r\\n /* Rounded sliders */\\r\\n\\r\\n .slider.round {\\r\\n border-radius: 34px;\\r\\n}\\r\\n\\r\\n .slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vaW50ZXNlcnJhLXVzZXJzL2ludGVzZXJyYS1tYW5hZ2UtdXNlcnMuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsV0FBVztFQUNYLFlBQVk7QUFDZDs7RUFFRTtJQUNFLFVBQVU7SUFDVixRQUFRO0lBQ1IsU0FBUztFQUNYOztFQUVGO0VBQ0Usa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLFFBQVE7RUFDUixTQUFTO0VBQ1Qsc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixlQUFlO0FBQ2pCOztFQUVFO0lBQ0Usa0JBQWtCO0lBQ2xCLFdBQVc7SUFDWCxZQUFZO0lBQ1osV0FBVztJQUNYLFNBQVM7SUFDVCxXQUFXO0lBQ1gsdUJBQXVCO0lBQ3ZCLHVCQUF1QjtJQUN2QixlQUFlO0VBQ2pCOztFQUVGO0VBQ0UseUJBQXlCO0FBQzNCOztFQUVBO0VBQ0UsMkJBQTJCO0FBQzdCOztFQUVBO0VBQ0UsbUNBQW1DO0VBRW5DLDJCQUEyQjtBQUM3Qjs7RUFFQSxvQkFBb0I7O0VBQ3BCO0VBQ0UsbUJBQW1CO0FBQ3JCOztFQUVFO0lBQ0Usa0JBQWtCO0VBQ3BCIiwiZmlsZSI6InNyYy9hcHAvQWRtaW4vaW50ZXNlcnJhLXVzZXJzL2ludGVzZXJyYS1tYW5hZ2UtdXNlcnMuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5zd2l0Y2gge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgd2lkdGg6IDYwcHg7XHJcbiAgaGVpZ2h0OiAzNHB4O1xyXG59XHJcblxyXG4gIC5zd2l0Y2ggaW5wdXQge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbi5zbGlkZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgdHJhbnNpdGlvbjogLjRzO1xyXG59XHJcblxyXG4gIC5zbGlkZXI6YmVmb3JlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICB3aWR0aDogMjZweDtcclxuICAgIGxlZnQ6IDRweDtcclxuICAgIGJvdHRvbTogNHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC40cztcclxuICAgIHRyYW5zaXRpb246IC40cztcclxuICB9XHJcblxyXG5pbnB1dDpjaGVja2VkICsgLnNsaWRlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRjtcclxufVxyXG5cclxuaW5wdXQ6Zm9jdXMgKyAuc2xpZGVyIHtcclxuICBib3gtc2hhZG93OiAwIDAgMXB4ICMwMDM5QkY7XHJcbn1cclxuXHJcbmlucHV0OmNoZWNrZWQgKyAuc2xpZGVyOmJlZm9yZSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbn1cclxuXHJcbi8qIFJvdW5kZWQgc2xpZGVycyAqL1xyXG4uc2xpZGVyLnJvdW5kIHtcclxuICBib3JkZXItcmFkaXVzOiAzNHB4O1xyXG59XHJcblxyXG4gIC5zbGlkZXIucm91bmQ6YmVmb3JlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICB9XHJcbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder, FormControl } from '@angular/forms';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { stateMasterModel } from '../../../Models/stateMasterModel';\r\nimport { userModel } from '../../../Models/usersModel';\r\nimport { UsersService } from '../../../Services/users.service';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ProductsService } from '../../../Services/products.service';\r\nimport { AdminUserTypeModel } from 'src/Models/AdminUserTypeModel';\r\nimport { ClientCompanyModel } from 'src/Models/ClientCompanyModel';\r\nimport { AdminUserType } from '../../../Models/Common';\r\n\r\n@Component({\r\n selector: 'app-inteserra-manage-users',\r\n templateUrl: './inteserra-manage-users.component.html',\r\n styleUrls: ['./inteserra-manage-users.component.css']\r\n})\r\nexport class InteserraManageUsersComponent implements OnInit {\r\n userForm: FormGroup;\r\n loginuserID: number = 0;\r\n appModel: any;\r\n allstate: boolean = false;\r\n //clearstate: boolean = false; \r\n tokenKey: string = '';\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n statusCode: number = 0;\r\n _userID: number = 0;\r\n userModel: userModel = {\r\n userId: '',\r\n userName: '',\r\n password: '',\r\n companyName: '',\r\n firstName: '',\r\n lastName: '',\r\n email: '',\r\n phone: '',\r\n isActive: '',\r\n createdDate: null,\r\n createdBy: null,\r\n modifiedDate: null,\r\n modifiedBy: null\r\n };\r\n // Product List---------------\r\n dropdownListProduct = [];\r\n selectedItemsProduct = [];\r\n dropdownSettingsProduct = {};\r\n productFilter: string = '';\r\n listOfProductID = [];\r\n // Product List---------------\r\n SelectedTool: string;\r\n\r\n selectedAll: any;\r\n isloadingstates: boolean = false;\r\n\r\n adminTypeList: AdminUserTypeModel[];\r\n dropdownListAdminType = [];\r\n selectedItemsAdminType = [];\r\n dropdownSettingsAdminType = {};\r\n listOfAdminTypeID = [];\r\n\r\n clientCompanyList: ClientCompanyModel[];\r\n dropdownListclientCompany = [];\r\n selectedItemsclientCompany = [];\r\n dropdownSettingclientCompany = {};\r\n listOfCompany = [];\r\n\r\n isControlEnable: boolean = true;\r\n\r\n constructor(private _fb: FormBuilder, private checkAuth: CheckAuth, private UserService: UsersService\r\n , private activedRoute: ActivatedRoute, private toastr: ToastrService\r\n , private router: Router, private titleService: Title, private productsService: ProductsService) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.loginuserID = +sessionStorage.getItem('AdminUserId');\r\n this.userForm = this._fb.group({\r\n userid: 0,\r\n username: [''],\r\n password: [''],\r\n companyName: [''],\r\n firstname: [''],\r\n lastname: [''],\r\n email: [''],\r\n phone: [''],\r\n userTypeId: 2,\r\n isactive: 1,\r\n createdBy: this.loginuserID,\r\n modifiedBy: this.loginuserID,\r\n ListOfProducts: [''],\r\n adminTypeId: 0,\r\n clientCompanyId: [{}],\r\n })\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.titleService.setTitle('Manage Admin');\r\n this.GetAdminTypeData();\r\n this.GetCompanyList()\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() {\r\n this.movetotop();\r\n this.GetProductData();\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n //debugger\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this._userID = params['id'];\r\n this.Getuser();\r\n }\r\n }\r\n else {\r\n this._userID = 0;\r\n this.SetCompanyDropdownSetting();\r\n }\r\n });\r\n }\r\n\r\n Getuser(): void {\r\n this.isloadingstates = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.UserService.GetUserFindByUserID(this.tokenKey, this._userID).subscribe(\r\n data => {\r\n //debugger\r\n this.userModel = data[\"userMaster\"];\r\n this.userForm.setValue({\r\n 'userid': this.userModel[0].userId,\r\n 'username': this.userModel[0].userName,\r\n 'password': this.userModel[0].password,\r\n 'companyName': this.userModel[0].companyName,\r\n 'firstname': this.userModel[0].firstName,\r\n 'lastname': this.userModel[0].lastName,\r\n 'email': this.userModel[0].email,\r\n 'phone': this.userModel[0].phone,\r\n 'userTypeId': 2,\r\n 'isactive': this.userModel[0].isActive,\r\n 'createdBy': this.loginuserID,\r\n 'modifiedBy': this.loginuserID,\r\n 'ListOfProducts': '',\r\n 'adminTypeId': '',\r\n 'clientCompanyId': [{}],\r\n });\r\n this.selectedItemsProduct = [];\r\n for (let iCounter = 0; iCounter < data[\"userMaster\"][0].listOfProducts.length; iCounter++) {\r\n this.selectedItemsProduct.push({ \"id\": data[\"userMaster\"][0].listOfProducts[iCounter].productId, \"itemName\": data[\"userMaster\"][0].listOfProducts[iCounter].displayName });\r\n this.listOfProductID.push(data[\"userMaster\"][0].listOfProducts[iCounter].productId);\r\n }\r\n\r\n this.selectedItemsAdminType = [];\r\n if (data[\"userMaster\"][0].adminTypeId != null) {\r\n if (data[\"userMaster\"][0].adminTypeId > 0) {\r\n this.selectedItemsAdminType.push({ \"id\": data[\"userMaster\"][0].adminTypeId, \"itemName\": data[\"userMaster\"][0].adminUserName })\r\n this.listOfAdminTypeID.push(data[\"userMaster\"][0].adminTypeId);\r\n //debugger\r\n if (data[\"userMaster\"][0].adminTypeId == AdminUserType.systemuser) {\r\n this.isControlEnable = false;\r\n }\r\n this.SetCompanyDropdownSetting();\r\n }\r\n }\r\n\r\n this.selectedItemsclientCompany = [];\r\n if (data[\"userMaster\"][0].systemUserCompany != null) {\r\n if (data[\"userMaster\"][0].systemUserCompany.length > 0) {\r\n for (let iCounter = 0; iCounter < data[\"userMaster\"][0].systemUserCompany.length; iCounter++) {\r\n this.selectedItemsclientCompany.push({ \"id\": data[\"userMaster\"][0].systemUserCompany[iCounter].companyId, \"itemName\": data[\"userMaster\"][0].systemUserCompany[iCounter].companyName });\r\n this.listOfCompany.push(data[\"userMaster\"][0].systemUserCompany[iCounter].companyId);\r\n }\r\n }\r\n }\r\n this.unblockDocument();\r\n\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.unblockDocument();\r\n this.isloadingstates = false;\r\n }\r\n );\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n onSelectedProduct($event) {\r\n if (this.listOfProductID != null) {\r\n if (this.listOfProductID.length > 0) {\r\n this.listOfProductID = this.removeElemetninArray(this.listOfProductID, $event.id)\r\n this.listOfProductID.push($event.id);\r\n }\r\n else {\r\n this.listOfProductID.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeSelectedProduct($event) {\r\n if (this.listOfProductID != null) {\r\n if (this.listOfProductID.length > 0) {\r\n this.listOfProductID = this.removeElemetninArray(this.listOfProductID, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onSelectAllProduct($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfProductID != null) {\r\n if (this.listOfProductID.length > 0) {\r\n this.listOfProductID = this.removeElemetninArray(this.listOfProductID, $event[iCounter].id)\r\n this.listOfProductID.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfProductID.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllProduct($event) {\r\n this.listOfProductID = [];\r\n }\r\n\r\n saveuser(userForm: any) {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n if ((userForm.value[\"username\"] == null || userForm.value[\"username\"] == undefined ||\r\n userForm.value[\"username\"].trim() == \"\")) {\r\n this.showMessage('Please enter username.', 'Required', 'error');\r\n return;\r\n }\r\n if ((userForm.value[\"password\"] == null || userForm.value[\"password\"] == undefined ||\r\n userForm.value[\"password\"].trim() == \"\")) {\r\n this.showMessage('Please enter password.', 'Required', 'error');\r\n return;\r\n }\r\n //if ((userForm.value[\"companyName\"] == null || userForm.value[\"companyName\"] == undefined ||\r\n // userForm.value[\"companyName\"].trim() == \"\")) {\r\n // this.showMessage('Please enter company name.', 'Required', 'error');\r\n // return;\r\n //}\r\n if (userForm.value[\"email\"].trim() != '') {\r\n let result = this.isValidMailFormat(userForm.controls.email);\r\n if (result != null) {\r\n this.showMessage('Please provide a valid email', 'Invalid Email', 'error');\r\n return;\r\n }\r\n }\r\n if (userForm.value[\"password\"].length <= 5) {\r\n this.showMessage('Password must contain at least 6 character', 'Password To Short', 'error');\r\n return;\r\n }\r\n if (this.isPasswordFormat(userForm.value[\"password\"]) == null) {\r\n this.showMessage('password should contain at least 1 uppercase, lowercase, digit and special character', 'Password Pattern', 'error');\r\n return;\r\n }\r\n\r\n if (this.listOfProductID.length == 0) {\r\n this.showMessage('Please select atlist one product', 'Password Pattern', 'error');\r\n return;\r\n }\r\n\r\n if (this.listOfAdminTypeID.length == 0) {\r\n this.showMessage('Please select user type', 'User Type', 'error');\r\n return;\r\n }\r\n\r\n var SelectedProducts = [];\r\n if (this.selectedItemsProduct.length > 0) {\r\n for (let iCounter = 0; iCounter < this.selectedItemsProduct.length; iCounter++) {\r\n SelectedProducts.push({ \"ProductId\": this.selectedItemsProduct[iCounter].id });\r\n }\r\n\r\n userForm.value[\"ListOfProducts\"] = SelectedProducts;\r\n }\r\n else {\r\n this.showMessage('Please select tool(s)', 'Tools', 'error');\r\n return;\r\n }\r\n\r\n\r\n // if ((userForm.value[\"username\"] != null || userForm.value[\"username\"] != undefined ||\r\n // userForm.value[\"username\"].trim() != \"\")) {\r\n // if (userForm.value[\"username\"].toString().indexOf(' ') > -1)\r\n // {\r\n // this.showMessage('White space not allow in username.', 'Required', 'error');\r\n // return;\r\n // } \r\n // }\r\n\r\n this.blockDocument();\r\n userForm.value[\"userid\"] = this._userID;\r\n userForm.value[\"userTypeId\"] = 2;\r\n let msg = '';\r\n if (this._userID == 0) {\r\n msg = 'added';\r\n }\r\n else {\r\n msg = 'updated';\r\n }\r\n\r\n //debugger\r\n\r\n userForm.value['adminTypeId'] = this.listOfAdminTypeID.join(',');\r\n userForm.value['clientCompanyId'] = this.listOfCompany.join(',');\r\n\r\n\r\n this.UserService.addupdateuser(this.userForm.value, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n this.showMessage('User ' + msg + ' successfully', 'User ' + msg, 'success');\r\n this.unblockDocument();\r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n this.router.navigate(['/admin/' + toolName + '/users']);\r\n }\r\n else {\r\n if (data.message == 'duplicate') {\r\n this.showMessage('Duplicate user not allowed.', 'Duplicate', 'error');\r\n this.unblockDocument();\r\n }\r\n else if (data.message == 'duplicate email') {\r\n this.showMessage('Duplicate email id not allowed.', 'Duplicate', 'error');\r\n this.unblockDocument();\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n });\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n isValidMailFormat(control: FormControl) {\r\n let EMAIL_REGEXP = /^[a-z0-9!#$%&'*+\\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;\r\n\r\n if (control.value != \"\" && (control.value.length <= 5 || !EMAIL_REGEXP.test(control.value))) {\r\n return { \"Please provide a valid email\": true };\r\n }\r\n\r\n return null;\r\n }\r\n canceluser() {\r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n this.router.navigate(['/admin/' + toolName + '/users']);\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n\r\n isPasswordFormat(control: any) {\r\n let EMAIL_REGEXP = /^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{6,}$/;\r\n if (control != \"\" && (control.length > 5 && EMAIL_REGEXP.test(control))) {\r\n return { \"Password pattern are valid\": true };\r\n }\r\n return null;\r\n }\r\n\r\n \r\n // Product List---------------\r\n GetProductData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.productsService.GetProductList(this.tokenKey, this.loginuserID).subscribe(\r\n data => {\r\n if (data[\"product\"] != null) {\r\n // Set All Item\r\n for (let iCounter = 0; iCounter < data[\"product\"].length; iCounter++) {\r\n if (data[\"product\"][iCounter].displayName != 'i360 Alerts') {\r\n this.dropdownListProduct.push(\r\n { \"id\": data[\"product\"][iCounter].productId, \"itemName\": data[\"product\"][iCounter].displayName }\r\n );\r\n }\r\n\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsProduct = {\r\n singleSelection: false,\r\n text: \"Select\",\r\n enableSearchFilter: false,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No product available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n // Product List---------------\r\n\r\n GetAdminTypeData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.UserService.GetAdminUserType(this.tokenKey).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.adminTypeList = data['listOfadmintype'];\r\n if (this.adminTypeList != null) {\r\n for (let iCounter = 0; iCounter < this.adminTypeList.length; iCounter++) {\r\n this.dropdownListAdminType.push(\r\n { \"id\": this.adminTypeList[iCounter].adminUserTypeID, \"itemName\": this.adminTypeList[iCounter].adminUserName }\r\n );\r\n }\r\n }\r\n\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsAdminType = {\r\n singleSelection: true,\r\n text: \"Select\",\r\n enableSearchFilter: false,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No user type available',\r\n showCheckbox: false,\r\n enableFilterSelectAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n EnableDisableCompanyDropdown($event) {\r\n this.listOfCompany = [];\r\n this.selectedItemsclientCompany = [];\r\n if ($event.id == AdminUserType.systemuser)\r\n this.isControlEnable = false;\r\n else\r\n this.isControlEnable = true;\r\n this.SetCompanyDropdownSetting();\r\n }\r\n\r\n onSelectedAdminType($event) {\r\n this.listOfAdminTypeID = [];\r\n if (this.listOfAdminTypeID != null) {\r\n if (this.listOfAdminTypeID.length > 0) {\r\n this.listOfAdminTypeID = this.removeElemetninArray(this.listOfAdminTypeID, $event.id)\r\n this.listOfAdminTypeID.push($event.id);\r\n }\r\n else {\r\n this.listOfAdminTypeID.push($event.id);\r\n }\r\n this.EnableDisableCompanyDropdown($event);\r\n }\r\n }\r\n\r\n onDeSelectedAdminType($event) {\r\n if (this.listOfAdminTypeID != null) {\r\n if (this.listOfAdminTypeID.length > 0) {\r\n this.listOfAdminTypeID = this.removeElemetninArray(this.listOfAdminTypeID, $event.id)\r\n }\r\n }\r\n this.EnableDisableCompanyDropdown($event);\r\n }\r\n\r\n onSelectAllAdminType($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfAdminTypeID != null) {\r\n if (this.listOfAdminTypeID.length > 0) {\r\n this.listOfAdminTypeID = this.removeElemetninArray(this.listOfAdminTypeID, $event[iCounter].id)\r\n this.listOfAdminTypeID.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfAdminTypeID.push($event[iCounter].id);\r\n }\r\n }\r\n this.EnableDisableCompanyDropdown($event);\r\n }\r\n }\r\n\r\n onDeSelectAllAdminType($event) {\r\n this.listOfAdminTypeID = [];\r\n this.EnableDisableCompanyDropdown($event);\r\n }\r\n\r\n GetCompanyList(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.UserService.GetClientCompanyList(this.tokenKey).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n //debugger\r\n this.clientCompanyList = data['listOfCompany'];\r\n if (this.clientCompanyList != null) {\r\n for (let iCounter = 0; iCounter < this.clientCompanyList.length; iCounter++) {\r\n this.dropdownListclientCompany.push(\r\n { \"id\": this.clientCompanyList[iCounter].companyId, \"itemName\": this.clientCompanyList[iCounter].companyName }\r\n );\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n SetCompanyDropdownSetting() {\r\n this.dropdownSettingclientCompany = {\r\n singleSelection: false,\r\n text: \"Select\",\r\n enableSearchFilter: false,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No company available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n disabled: this.isControlEnable,\r\n };\r\n }\r\n // Company \r\n onSelectedCompany($event) {\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event.id)\r\n this.listOfCompany.push($event.id);\r\n }\r\n else {\r\n this.listOfCompany.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeSelectedCompany($event) {\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onSelectAllCompany($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event[iCounter].id)\r\n this.listOfCompany.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfCompany.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllCompany($event) {\r\n this.listOfCompany = [];\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL2ludGVzZXJyYS11c2Vycy9pbnRlc2VycmEtdXNlcnMuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { userModel } from '../../../Models/usersModel';\r\nimport { UsersService } from '../../../Services/users.service';\r\nimport { Router } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { StateMasterService } from 'src/Services/state-master.service';\r\nimport { stateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { AdminUserType } from 'src/Models/Common';\r\nimport { RouterExtService } from 'src/Services/RouterExtService';\r\n\r\n@Component({\r\n selector: 'app-inteserra-users',\r\n templateUrl: './inteserra-users.component.html',\r\n styleUrls: ['./inteserra-users.component.css']\r\n})\r\nexport class InteserraUsersComponent implements OnInit {\r\n tokenKey: string = '';\r\n listOfUser: userModel[];\r\n statusCode: any;\r\n PageNumber: number;\r\n PageSize: number;\r\n WhereCondition: string;\r\n OrderBy: string;\r\n totalRecordCount: number;\r\n\r\n isAscending: boolean;\r\n\r\n upDowUserNameCSS: string = '';\r\n upDowFirstNameCSS: string = '';\r\n upDowEmailCSS: string = '';\r\n upDowCompanyNameCSS: string = '';\r\n upDowPhoneCSS: string = '';\r\n upDowIsActiveCSS: string = '';\r\n upDowCreatedDateCSS: string = '';\r\n upDowStateNameCSS: string = '';\r\n upDowModifiedDateCSS: string = '';\r\n upDowadminUserNameCSS: string = '';\r\n\r\n listOfSubscription: stateMasterModel[];\r\n subscriptionCount: number = -1;\r\n isloading: boolean = false;\r\n keywordFilter: string = '';\r\n SelectedTool: string;\r\n loginUserId: number = 0;\r\n\r\n constructor(private router: Router, private checkAuth: CheckAuth, private userService: UsersService\r\n , private titleService: Title, private stateServices: StateMasterService\r\n , private routerService: RouterExtService) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.listOfUser = [];\r\n this.PageNumber = 1;\r\n this.PageSize = 10;\r\n this.WhereCondition = 'null';\r\n this.OrderBy = 'UserId DESC';\r\n this.totalRecordCount = -1;\r\n this.isAscending = true;\r\n this.listOfSubscription = [];\r\n this.subscriptionCount = -1;\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.titleService.setTitle('Admins');\r\n this.loginUserId = +sessionStorage.getItem('AdminUserId');\r\n\r\n \r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n if (AdminUserType.systemuser == parseInt(sessionStorage.getItem('adminTypeId')))\r\n this.router.navigate(['admin/' + toolName + '/dashboard'])\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() {\r\n this.keywordFilter = 'null';\r\n this.WhereCondition = ' UserTypeId = 2';\r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n if (this.routerService.getPreviousUrl().includes('admin/' + toolName + '/user/manage')) {\r\n this.setSaveFilter();\r\n }\r\n else {\r\n this.clearSession();\r\n }\r\n this.GetListOfUser();\r\n }\r\n\r\n GetListOfUser() {\r\n this.isloading = true;\r\n this.userService.GetUsers(this.tokenKey, this.PageNumber, this.PageSize, this.WhereCondition, this.OrderBy, this.keywordFilter, this.loginUserId,\"\",\"\").subscribe(\r\n data => {\r\n this.isloading = false;\r\n this.listOfUser = data['usersModel'];\r\n if (this.listOfUser != null) {\r\n if (this.listOfUser.length > 0) {\r\n this.totalRecordCount = data['usersModel'][0].totalRecordCount;\r\n }\r\n else {\r\n this.totalRecordCount = 0;\r\n }\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n this.isloading = false;\r\n }\r\n );\r\n }\r\n\r\n sort(sortBy: any) {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowadminUserNameCSS = '';\r\n\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.OrderBy = sortBy + ' DESC';\r\n\r\n this.setDescCSS(sortBy);\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.OrderBy = sortBy;\r\n\r\n this.setAscCSS(sortBy);\r\n }\r\n this.GetListOfUser();\r\n }\r\n editUser(userId: any) {\r\n this.saveSession(); // To Store All filtered and other data to restore once back.\r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n this.router.navigate(['admin/' + toolName + '/user/manage/' + userId]);\r\n }\r\n\r\n pageChanged($event: any) {\r\n this.PageNumber = parseInt($event.page);\r\n this.GetListOfUser();\r\n }\r\n\r\n addUser() {\r\n this.saveSession(); // To Store All filtered and other data to restore once back.\r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n this.router.navigate(['admin/' + toolName + '/user/manage']);\r\n }\r\n\r\n getSubscriptionState(clientId: any) {\r\n this.stateServices.GetStateMasterFindByClientId(this.tokenKey, clientId, 0).subscribe(\r\n data => {\r\n this.listOfSubscription = data['state'];\r\n if (this.listOfSubscription != null) {\r\n if (this.listOfSubscription.length > 0) {\r\n this.subscriptionCount = this.listOfSubscription.length;\r\n }\r\n else {\r\n this.subscriptionCount = 0;\r\n }\r\n }\r\n else {\r\n this.subscriptionCount = 0;\r\n }\r\n },\r\n error => { this.statusCode = error }\r\n );\r\n }\r\n\r\n keywordFilters($event) {\r\n this.PageNumber = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.keywordFilter = $event.target.value;\r\n else\r\n this.keywordFilter = 'null';\r\n\r\n this.GetListOfUser();\r\n }\r\n\r\n saveSession() {\r\n sessionStorage.setItem('saveFilterIsAscending', this.isAscending ? 'true' : 'false');\r\n sessionStorage.setItem('saveFilterPageNo', this.PageNumber.toString());\r\n sessionStorage.setItem('saveFilterOrderBy', this.OrderBy);\r\n sessionStorage.setItem('saveFilterWhereCondition', this.WhereCondition);\r\n sessionStorage.setItem('saveFilterKeywordValue', this.keywordFilter);\r\n }\r\n\r\n clearSession() {\r\n sessionStorage.removeItem('saveFilterIsAscending');\r\n sessionStorage.removeItem('saveFilterPageNo');\r\n sessionStorage.removeItem('saveFilterOrderBy');\r\n sessionStorage.removeItem('saveFilterWhereCondition');\r\n sessionStorage.removeItem('saveFilterKeywordValue');\r\n }\r\n\r\n setSaveFilter() {\r\n if (sessionStorage.getItem('saveFilterPageNo') != null && sessionStorage.getItem('saveFilterPageNo') != '' && sessionStorage.getItem('saveFilterPageNo') != 'undefined') {\r\n this.PageNumber = +sessionStorage.getItem('saveFilterPageNo'); \r\n }\r\n \r\n if (sessionStorage.getItem('saveFilterOrderBy') != null && sessionStorage.getItem('saveFilterOrderBy') != '' && sessionStorage.getItem('saveFilterOrderBy') != 'undefined') {\r\n this.OrderBy = sessionStorage.getItem('saveFilterOrderBy'); \r\n }\r\n \r\n if (sessionStorage.getItem('saveFilterWhereCondition') != null && sessionStorage.getItem('saveFilterWhereCondition') != '' && sessionStorage.getItem('saveFilterWhereCondition') != 'undefined') {\r\n this.WhereCondition = sessionStorage.getItem('saveFilterWhereCondition');\r\n }\r\n\r\n if (sessionStorage.getItem('saveFilterKeywordValue') != null && sessionStorage.getItem('saveFilterKeywordValue') != '' && sessionStorage.getItem('saveFilterKeywordValue') != 'undefined') {\r\n this.keywordFilter = sessionStorage.getItem('saveFilterKeywordValue');\r\n }\r\n\r\n if (sessionStorage.getItem('saveFilterIsAscending') != null && sessionStorage.getItem('saveFilterIsAscending') != '' && sessionStorage.getItem('saveFilterIsAscending') != 'undefined') {\r\n this.isAscending = sessionStorage.getItem('saveFilterIsAscending') == 'false' ? false : true;\r\n if (this.isAscending) {\r\n this.setDescCSS(this.OrderBy.replace('DESC', '').trim());\r\n } else {\r\n this.setAscCSS(this.OrderBy.replace('DESC', '').trim());\r\n }\r\n }\r\n this.clearSession();\r\n }\r\n\r\n setDescCSS(sortBy) {\r\n if (sortBy === \"userName\") {\r\n this.upDowUserNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"firstName\") {\r\n this.upDowFirstNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"email\") {\r\n this.upDowEmailCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"companyName\") {\r\n this.upDowCompanyNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"phone\") {\r\n this.upDowPhoneCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"isActive\") {\r\n this.upDowIsActiveCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"createdDate\") {\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"StateName\") {\r\n this.upDowStateNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"modifiedDate\") {\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"AdminTypeId\") {\r\n this.upDowadminUserNameCSS = 'fa fa-arrow-down';\r\n }\r\n }\r\n\r\n setAscCSS(sortBy) {\r\n if (sortBy === \"userName\") {\r\n this.upDowUserNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"firstName\") {\r\n this.upDowFirstNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"email\") {\r\n this.upDowEmailCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"companyName\") {\r\n this.upDowCompanyNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"phone\") {\r\n this.upDowPhoneCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"isActive\") {\r\n this.upDowIsActiveCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"createdDate\") {\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"StateName\") {\r\n this.upDowStateNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"modifiedDate\") {\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"AdminTypeId\") {\r\n this.upDowadminUserNameCSS = 'fa fa-arrow-up';\r\n }\r\n }\r\n}\r\n","export default \".field-icon {\\r\\n float: right;\\r\\n margin-left: -25px;\\r\\n margin-top: -25px;\\r\\n position: relative;\\r\\n z-index: 2;\\r\\n margin-right: 5px;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vcHJvZmlsZS9wcm9maWxlLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGlCQUFpQjtBQUNuQiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL3Byb2ZpbGUvcHJvZmlsZS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmZpZWxkLWljb24ge1xyXG4gIGZsb2F0OiByaWdodDtcclxuICBtYXJnaW4tbGVmdDogLTI1cHg7XHJcbiAgbWFyZ2luLXRvcDogLTI1cHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDI7XHJcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbn1cclxuIl19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder, FormControl } from '@angular/forms';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { stateMasterModel } from '../../../Models/stateMasterModel';\r\nimport { userModel } from '../../../Models/usersModel';\r\nimport { UsersService } from '../../../Services/users.service';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-profile',\r\n templateUrl: './profile.component.html',\r\n styleUrls: ['./profile.component.css']\r\n})\r\nexport class ProfileComponent implements OnInit {\r\n changepasswordForm: FormGroup;\r\n loginuserID: number = 0;\r\n appModel: any;\r\n tokenKey: string = '';\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n statusCode: number = 0;\r\n userModel: userModel = {\r\n userId: '',\r\n userName: '',\r\n companyName: '',\r\n firstName: '',\r\n lastName: '',\r\n email: '',\r\n phone: '',\r\n isActive: '',\r\n createdDate: null,\r\n createdBy: null,\r\n modifiedDate: null,\r\n modifiedBy: null\r\n };\r\n\r\n showoldeye: boolean = false;\r\n showold: boolean = false;\r\n showneweye: boolean = false;\r\n shownew: boolean = false;\r\n showconfirmeye: boolean = false;\r\n showconfirm: boolean = false;\r\n SelectedTool: string;\r\n constructor(private _fb: FormBuilder, private checkAuth: CheckAuth, private UserService: UsersService\r\n , private activedRoute: ActivatedRoute, private toastr: ToastrService\r\n , private router: Router, private titleService: Title) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.loginuserID = +sessionStorage.getItem('AdminUserId');\r\n this.changepasswordForm = this._fb.group({\r\n userid: 0,\r\n oldpassword: '',\r\n newpassword: '',\r\n confirmpassword: '',\r\n modifiedBy: this.loginuserID\r\n })\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.titleService.setTitle('My Profile');\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() { \r\n this.movetotop();\r\n this.Getuser();\r\n }\r\n\r\n Getuser(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.UserService.GetUserFindByUserID(this.tokenKey, this.loginuserID).subscribe(\r\n data => { \r\n this.userModel = data[\"userMaster\"][0];\r\n //this.userModel.userName = data[\"userMaster\"][0].userName;\r\n //this.userModel.companyName = data[\"userMaster\"][0].companyName;\r\n //this.userModel.firstName = data[\"userMaster\"][0].firstName;\r\n //this.userModel.lastName = data[\"userMaster\"][0].lastName;\r\n //this.userModel.email = data[\"userMaster\"][0].email;\r\n //this.userModel.phone = data[\"userMaster\"][0].phone;\r\n //this.userModel.listOfstate = data[\"userMaster\"][0].listOfstate;\r\n this.unblockDocument();\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n savepassword(changepasswordForm: any) { \r\n if ((changepasswordForm.value[\"oldpassword\"] == null || changepasswordForm.value[\"oldpassword\"] == undefined ||\r\n changepasswordForm.value[\"oldpassword\"].trim() == \"\")) {\r\n this.showMessage('Please enter old password.', 'Required', 'error');\r\n return;\r\n }\r\n else {\r\n if (changepasswordForm.value[\"oldpassword\"].trim() !=\r\n this.userModel.password.trim()) {\r\n this.showMessage('Incorrect old password.', 'Invalid Password', 'error');\r\n return;\r\n }\r\n }\r\n if ((changepasswordForm.value[\"newpassword\"] == null || changepasswordForm.value[\"newpassword\"] == undefined ||\r\n changepasswordForm.value[\"newpassword\"].trim() == \"\")) {\r\n this.showMessage('Please enter new password.', 'Required', 'error');\r\n return;\r\n }\r\n if ((changepasswordForm.value[\"confirmpassword\"] == null || changepasswordForm.value[\"confirmpassword\"] == undefined ||\r\n changepasswordForm.value[\"confirmpassword\"].trim() == \"\")) {\r\n this.showMessage('Please enter confirm password.', 'Required', 'error');\r\n return;\r\n }\r\n if (changepasswordForm.value[\"confirmpassword\"].trim() != changepasswordForm.value[\"newpassword\"].trim()) {\r\n this.showMessage('Password and Confirm password not matched', 'Invalid Password', 'error');\r\n return;\r\n }\r\n if (changepasswordForm.value[\"newpassword\"].length <= 5) {\r\n this.showMessage('Password must contain at least 6 character', 'Password To Short', 'error');\r\n return;\r\n }\r\n if (this.isPasswordFormat(changepasswordForm.value[\"newpassword\"]) == null) {\r\n this.showMessage('password should contain at least 1 uppercase, lowercase, digit and special character', 'Password Pattern', 'error');\r\n return;\r\n }\r\n this.blockDocument();\r\n changepasswordForm.value[\"userid\"] = this.loginuserID; \r\n this.userModel.userId = changepasswordForm.value[\"userid\"];\r\n this.userModel.password = changepasswordForm.value[\"newpassword\"];\r\n this.userModel.modifiedBy = this.loginuserID.toString();\r\n this.UserService.updatepassword(this.userModel, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n changepasswordForm.reset();\r\n this.showMessage('Password changed successfully', 'Password changed', 'success');\r\n this.unblockDocument();\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n });\r\n }\r\n\r\n isPasswordFormat(control: any) {\r\n let EMAIL_REGEXP = /^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{6,}$/;\r\n if (control != \"\" && (control.length > 5 && EMAIL_REGEXP.test(control))) {\r\n return { \"Password pattern are valid\": true };\r\n }\r\n\r\n return null;\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n isValidMailFormat(control: FormControl) {\r\n let EMAIL_REGEXP = /^[a-z0-9!#$%&'*+\\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;\r\n\r\n if (control.value != \"\" && (control.value.length <= 5 || !EMAIL_REGEXP.test(control.value))) {\r\n return { \"Please provide a valid email\": true };\r\n }\r\n\r\n return null;\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n changeoldpass($event) {\r\n if ($event.target.value != \"\" && $event.target.value != null) {\r\n this.showoldeye = true;\r\n }\r\n else {\r\n this.showoldeye = false;\r\n }\r\n }\r\n hideshowoldpassword() { this.showold = !this.showold; }\r\n changenewpass($event) {\r\n if ($event.target.value != \"\" && $event.target.value != null) {\r\n this.showneweye = true;\r\n }\r\n else {\r\n this.showneweye = false;\r\n }\r\n }\r\n hideshownewpassword() { this.shownew = !this.shownew; }\r\n changeconfirmpass($event) {\r\n if ($event.target.value != \"\" && $event.target.value != null) {\r\n this.showconfirmeye = true;\r\n }\r\n else {\r\n this.showconfirmeye = false;\r\n }\r\n }\r\n hideshowconfirmpassword() { this.showconfirm = !this.showconfirm; }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL3JlZGlyZWN0LWxpdmUvcmVkaXJlY3QtbGl2ZS5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-redirect-live',\r\n templateUrl: './redirect-live.component.html',\r\n styleUrls: ['./redirect-live.component.css']\r\n})\r\nexport class RedirectLiveComponent implements OnInit {\r\n\r\n constructor() {\r\n if (window.location.href.indexOf('stagingiris') == -1)\r\n window.location.href = 'https://inteserra360.com/#/admin';\r\n else\r\n window.location.href = 'https://staging.inteserra360.com/#/admin';\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL3JlcG9ydHMvcmVwb3J0cy5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-reports',\r\n templateUrl: './reports.component.html',\r\n styleUrls: ['./reports.component.css']\r\n})\r\nexport class ReportsComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL3N0YXRlLWZ1bmQtcHJldmlldy9zdGF0ZS1mdW5kLXByZXZpZXcuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-state-fund-preview',\r\n templateUrl: './state-fund-preview.component.html',\r\n styleUrls: ['./state-fund-preview.component.css']\r\n})\r\nexport class StateFundPreviewComponent implements OnInit {\r\n SelectedTool: string;\r\n constructor(private router: Router) {\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n }\r\n ngOnInit() {\r\n }\r\n\r\n backNavigation() {\r\n let stateId = sessionStorage.getItem('StateSetupManageRedirection');\r\n let URL = '';\r\n if (sessionStorage.getItem('isClickOnState') != 'true') { \r\n sessionStorage.removeItem('StateSetupManageRedirection');\r\n URL = 'admin/' + this.SelectedTool + '/state/setup/manage/' + stateId;\r\n }\r\n else {\r\n sessionStorage.removeItem('isClickOnState')\r\n URL = 'admin/' + this.SelectedTool + '/states';\r\n }\r\n this.router.navigate([URL]);\r\n }\r\n}\r\n","export default \".grabbable {\\r\\n cursor: move;\\r\\n /* fallback if grab cursor is unsupported */\\r\\n cursor: move;\\r\\n /*cursor: -moz-grab;\\r\\n cursor: -webkit-grab;*/\\r\\n}\\r\\n\\r\\n/* (Optional) Apply a \\\"closed-hand\\\" cursor during drag operation. */\\r\\n\\r\\n.grabbable:active {\\r\\n cursor: grabbing;\\r\\n cursor: -webkit-grabbing;\\r\\n}\\r\\n\\r\\n.icon-move {\\r\\n cursor: move !important;\\r\\n}\\r\\n\\r\\n.icon-move:hover {\\r\\n cursor: move !important;\\r\\n}\\r\\n\\r\\ntr:hover {\\r\\n cursor: default !important\\r\\n}\\r\\n\\r\\ntr:focus {\\r\\n cursor: default !important\\r\\n}\\r\\n\\r\\n.darggray {\\r\\n background-color: #aaa;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vc3RhdGUtbWF0cml4c2V0dXAvc3RhdGUtbWFuYW5nZXNldHVwLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxZQUFZO0VBQ1osMkNBQTJDO0VBQzNDLFlBQVk7RUFDWjt3QkFDc0I7QUFDeEI7O0FBRUEsbUVBQW1FOztBQUVuRTtFQUNFLGdCQUFnQjtFQUVoQix3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRTtBQUNGOztBQUVBO0VBQ0U7QUFDRjs7QUFFQTtFQUNFLHNCQUFzQjtBQUN4QiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL3N0YXRlLW1hdHJpeHNldHVwL3N0YXRlLW1hbmFuZ2VzZXR1cC5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmdyYWJiYWJsZSB7XHJcbiAgY3Vyc29yOiBtb3ZlO1xyXG4gIC8qIGZhbGxiYWNrIGlmIGdyYWIgY3Vyc29yIGlzIHVuc3VwcG9ydGVkICovXHJcbiAgY3Vyc29yOiBtb3ZlO1xyXG4gIC8qY3Vyc29yOiAtbW96LWdyYWI7XHJcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7Ki9cclxufVxyXG5cclxuLyogKE9wdGlvbmFsKSBBcHBseSBhIFwiY2xvc2VkLWhhbmRcIiBjdXJzb3IgZHVyaW5nIGRyYWcgb3BlcmF0aW9uLiAqL1xyXG5cclxuLmdyYWJiYWJsZTphY3RpdmUge1xyXG4gIGN1cnNvcjogZ3JhYmJpbmc7XHJcbiAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xyXG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcclxufVxyXG5cclxuLmljb24tbW92ZSB7XHJcbiAgY3Vyc29yOiBtb3ZlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5pY29uLW1vdmU6aG92ZXIge1xyXG4gIGN1cnNvcjogbW92ZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG50cjpob3ZlciB7XHJcbiAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnRcclxufVxyXG5cclxudHI6Zm9jdXMge1xyXG4gIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50XHJcbn1cclxuXHJcbi5kYXJnZ3JheSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhYTtcclxufSJdfQ== */\"","import { Component, OnInit, ViewChild, ViewChildren, ElementRef } from '@angular/core';\r\nimport { NgForm, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { EditorModule } from 'primeng/editor';\r\nimport { matrixfundService } from '../../../Services/matrixfund.service';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { matrixfundModel } from '../../../Models/matrixfundModel';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { Params, ActivatedRoute, Router } from '@angular/router';\r\nimport { matrixModel } from '../../../Models/matrixModel';\r\nimport { assessmentcategoryModel } from '../../../Models/assessmentcategoryModel';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ToolEnum } from '../../../Models/Common';\r\n\r\n@Component({\r\n selector: 'app-state-manangesetup',\r\n templateUrl: './state-manangesetup.component.html',\r\n styleUrls: ['./state-manangesetup.component.css']\r\n})\r\nexport class StateManangesetupComponent implements OnInit {\r\n userID: number = 0;\r\n stateid: number = 0;\r\n statename: string = '';\r\n isloading: boolean = false;\r\n //isloadingsave: boolean = false;\r\n tokenKey: string = '';\r\n matrixfundmodel: matrixfundModel[] = [];\r\n totalPageSize: number = 0;\r\n pageSize: number = 0;\r\n pageIndex: number = 0;\r\n orderBy: string = 'null';\r\n keywordFilter: string = '';\r\n whereCondition: string = 'null';\r\n isAscending: boolean;\r\n statusCode: number = 0;\r\n appModel: any;\r\n upDowTitleCSS: string = '';\r\n upDowAssementCatNameCSS: string = '';\r\n upDowCreatedByCSS: string = '';\r\n upDowCreatedDateCSS: string = '';\r\n upDowModifiedByCSS: string = '';\r\n upDowModifiedDateCSS: string = '';\r\n matrixModel: matrixModel = {\r\n matrixId: 0,\r\n stateId: 0,\r\n stateName: '',\r\n createdDate: null,\r\n createdBy: null,\r\n createdByName: null,\r\n modifiedDate: null,\r\n modifiedBy: null,\r\n modifiedByName: null\r\n };\r\n totalRecordsCount: number = -1;\r\n SelectedTool: string;\r\n productId: number = 1;\r\n //assessmentcategoryModel: assessmentcategoryModel[] = [];\r\n @ViewChildren('rdfundfield') rdfundfield;\r\n isRecords: boolean = false;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n\r\n matrixid: number = 0;\r\n matrixFundId: number = 0;\r\n assementCatId: number = 0;\r\n fundFieldId: number = 0;\r\n deletematrixfundId: number = 0;\r\n @ViewChild('deletecloseBtn', {static: false}) deletecloseBtn: ElementRef;\r\n\r\n constructor(private _fb: FormBuilder, private MatrixFundService: matrixfundService\r\n , private checkAuth: CheckAuth, private toastr: ToastrService\r\n , private activedRoute: ActivatedRoute, private router: Router\r\n , private titleService: Title) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('AdminUserId');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n this.titleService.setTitle('State Configurations');\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.fundFieldId = 1;\r\n this.pageSize = this.appModel.PageSize;\r\n this.totalPageSize = 1;\r\n this.pageIndex = 1;\r\n this.keywordFilter = 'null';\r\n this.whereCondition = 'null';\r\n this.orderBy = 'DisplayOrder';\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this.stateid = params['id'];\r\n this.isloading = true;\r\n this.GetMatrixbystateid();\r\n }\r\n }\r\n });\r\n }\r\n\r\n //Fund start\r\n GetMatrixbystateid(): void {\r\n //this.isloading = true; //moved to page init\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.MatrixFundService.GetMatrixByStateId(this.tokenKey, this.stateid.toString(), this.userID.toString(), this.productId.toString()).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.matrixModel.matrixId = data[\"matrix\"][0].matrixId;\r\n this.matrixModel.stateId = data[\"matrix\"][0].stateId;\r\n this.matrixModel.stateName = data[\"matrix\"][0].stateName;\r\n this.matrixModel.createdDate = data[\"matrix\"][0].createdDate;\r\n this.matrixModel.createdBy = data[\"matrix\"][0].createdBy;\r\n this.matrixModel.createdByName = data[\"matrix\"][0].createdByName;\r\n this.matrixModel.modifiedDate = data[\"matrix\"][0].modifiedDate;\r\n this.matrixModel.modifiedBy = data[\"matrix\"][0].modifiedBy;\r\n this.matrixModel.modifiedByName = data[\"matrix\"][0].modifiedByName;\r\n this.matrixid = this.matrixModel.matrixId;\r\n this.statename = this.matrixModel.stateName;\r\n this.whereCondition = '(MatrixId = ' + this.matrixid + ')';\r\n this.GetMatrixFund();\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n GetMatrixFund(): void {\r\n //this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.MatrixFundService.GetMatrixFundFilterByPage(this.tokenKey, this.pageIndex.toString(), this.pageSize.toString(), this.whereCondition, this.orderBy, this.keywordFilter, this.productId.toString()).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.matrixfundmodel = data[\"matrixFund\"];\r\n if (this.matrixfundmodel.length > 0) {\r\n this.isRecords = true;\r\n this.totalPageSize = parseInt(this.matrixfundmodel[0].totalRecordCount);\r\n this.totalRecordsCount = this.matrixfundmodel.length;\r\n }\r\n else {\r\n this.totalRecordsCount = 0;\r\n this.isRecords = false;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n\r\n onDropSuccess() {\r\n this.blockDocument();\r\n for (let iCounter = 0; iCounter < this.matrixfundmodel.length; iCounter++) {\r\n this.matrixfundmodel[iCounter].modifiedBy = this.userID.toString();\r\n }\r\n this.MatrixFundService.updatematrixfundDisplayOrder(this.tokenKey, this.matrixfundmodel)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.showMessage('Rearranged successfully', 'Rearranged', 'success');\r\n // this.GetMatrixFund();\r\n this.unblockDocument();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n });\r\n }\r\n\r\n onDragSuccess(){\r\n }\r\n\r\n allowDragDropFunction(a) {\r\n if (sessionStorage.getItem('UserLoginTool') == 'voip' && (a === 9 || a === 15))\r\n return false;\r\n else if (sessionStorage.getItem('UserLoginTool') == 'wireless' && (a === 7 || a === 8 || a === 1))\r\n return false;\r\n else\r\n return true;\r\n }\r\n\r\n setDeletematrixfundId(matrixfundId: any) {\r\n this.deletematrixfundId = matrixfundId;\r\n }\r\n\r\n DeleteFund() {\r\n this.blockDocument();\r\n this.MatrixFundService.deletefund(this.tokenKey, this.deletematrixfundId)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.showMessage('Deleted successfully', 'Deleted', 'success');\r\n this.deletecloseBtn.nativeElement.click();\r\n this.GetMatrixFund();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n ActiveInactiveFund(matrixfundId: any, isactive: any) {\r\n this.blockDocument();\r\n this.MatrixFundService.activeinactivefund(this.tokenKey, matrixfundId, isactive)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (isactive) {\r\n this.showMessage('Activated successfully', 'Active', 'success');\r\n }\r\n else {\r\n this.showMessage('Inactivated successfully', 'Inactive', 'success');\r\n }\r\n this.GetMatrixFund();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n redirectToStatePreview(stateid) {\r\n //sessionStorage.setItem('singleStatePreview', stateid);\r\n sessionStorage.setItem('StateSetupManageRedirection', stateid);\r\n sessionStorage.setItem('isAdminOpen', 'true');\r\n let navigation = '/admin/' + this.SelectedTool + '/state/matrix/preview';\r\n this.router.navigate([navigation]);\r\n }\r\n //Fund end\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n sort(sortBy: string) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"Title\") {\r\n this.upDowTitleCSS = 'fa fa-arrow-down';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"AssementCatName\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = 'fa fa-arrow-down';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedBy\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = 'fa fa-arrow-down';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-down';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedBy\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = 'fa fa-arrow-down';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-down';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.orderBy = sortBy;\r\n\r\n if (sortBy === \"Title\") {\r\n this.upDowTitleCSS = 'fa fa-arrow-up';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"AssementCatName\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = 'fa fa-arrow-up';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedBy\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = 'fa fa-arrow-up';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-up';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedBy\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = 'fa fa-arrow-up';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-up';\r\n }\r\n }\r\n this.GetMatrixFund();\r\n }\r\n pageChanged($event) {\r\n this.pageIndex = parseInt($event.page);\r\n this.GetMatrixFund();\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n keywordFilters($event) {\r\n this.pageIndex = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.keywordFilter = $event.target.value;\r\n else\r\n this.keywordFilter = 'null';\r\n\r\n this.GetMatrixFund();\r\n }\r\n redirecttoeditsetup(matrixFundId) {\r\n let navigation = '/admin/' + this.SelectedTool + '/state/setup/edit/' + this.stateid + '/' + matrixFundId;\r\n this.router.navigate([navigation]);\r\n }\r\n redirecttoaddsetup() {\r\n let navigation = '/admin/' + this.SelectedTool + '/state/setup/add/' + this.stateid;\r\n this.router.navigate([navigation]);\r\n }\r\n}\r\n","export default \".switch {\\r\\n position: relative;\\r\\n display: inline-block;\\r\\n width: 60px;\\r\\n height: 34px;\\r\\n}\\r\\n\\r\\n.switch input {\\r\\n opacity: 0;\\r\\n width: 0;\\r\\n height: 0;\\r\\n}\\r\\n\\r\\n.slider {\\r\\n position: absolute;\\r\\n cursor: pointer;\\r\\n top: 0;\\r\\n left: 0;\\r\\n right: 0;\\r\\n bottom: 0;\\r\\n background-color: #ccc;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n}\\r\\n\\r\\n.slider:before {\\r\\n position: absolute;\\r\\n content: \\\"\\\";\\r\\n height: 26px;\\r\\n width: 26px;\\r\\n left: 4px;\\r\\n bottom: 4px;\\r\\n background-color: white;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n}\\r\\n\\r\\ninput:checked+.slider {\\r\\n background-color: #2196F3;\\r\\n}\\r\\n\\r\\ninput:focus+.slider {\\r\\n box-shadow: 0 0 1px #2196F3;\\r\\n}\\r\\n\\r\\ninput:checked+.slider:before {\\r\\n -webkit-transform: translateX(26px);\\r\\n transform: translateX(26px);\\r\\n}\\r\\n\\r\\n/* Rounded sliders */\\r\\n\\r\\n.slider.round {\\r\\n border-radius: 34px;\\r\\n}\\r\\n\\r\\n.slider.round:before {\\r\\n border-radius: 50%;\\r\\n}\\r\\n\\r\\n.grabbable {\\r\\n cursor: move;\\r\\n /* fallback if grab cursor is unsupported */\\r\\n cursor: move;\\r\\n /*cursor: -moz-grab;\\r\\n cursor: -webkit-grab;*/\\r\\n}\\r\\n\\r\\n/* (Optional) Apply a \\\"closed-hand\\\" cursor during drag operation. */\\r\\n\\r\\n.grabbable:active {\\r\\n cursor: grabbing;\\r\\n cursor: -webkit-grabbing;\\r\\n}\\r\\n\\r\\n.ql-font {\\r\\n display: none !important;\\r\\n}\\r\\n\\r\\n/*---------------------*/\\r\\n\\r\\n/* The container */\\r\\n\\r\\n.container {\\r\\n display: block;\\r\\n position: relative;\\r\\n padding-left: 25px;\\r\\n margin-bottom: 12px;\\r\\n cursor: pointer;\\r\\n -webkit-user-select: none;\\r\\n -moz-user-select: none;\\r\\n -ms-user-select: none;\\r\\n user-select: none;\\r\\n}\\r\\n\\r\\n/* Hide the browser's default radio button */\\r\\n\\r\\n.container input {\\r\\n position: absolute;\\r\\n opacity: 0;\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n/* Create a custom radio button */\\r\\n\\r\\n.checkmark {\\r\\n position: absolute;\\r\\n top: 0;\\r\\n left: 0;\\r\\n height: 20px;\\r\\n width: 20px;\\r\\n background-color: #eee;\\r\\n border-radius: 50%;\\r\\n}\\r\\n\\r\\n/* On mouse-over, add a grey background color */\\r\\n\\r\\n.container:hover input~.checkmark {\\r\\n background-color: #ccc;\\r\\n}\\r\\n\\r\\n/* When the radio button is checked, add a blue background */\\r\\n\\r\\n.container input:checked~.checkmark {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n/* Create the indicator (the dot/circle - hidden when not checked) */\\r\\n\\r\\n.checkmark:after {\\r\\n content: \\\"\\\";\\r\\n position: absolute;\\r\\n display: none;\\r\\n}\\r\\n\\r\\n/* Show the indicator (dot/circle) when checked */\\r\\n\\r\\n.container input:checked~.checkmark:after {\\r\\n display: block;\\r\\n}\\r\\n\\r\\n/* Style the indicator (dot/circle) */\\r\\n\\r\\n.container .checkmark:after {\\r\\n top: 6px;\\r\\n left: 6px;\\r\\n width: 8px;\\r\\n height: 8px;\\r\\n border-radius: 50%;\\r\\n background: white;\\r\\n}\\r\\n\\r\\n.icon-move {\\r\\n cursor: move !important;\\r\\n}\\r\\n\\r\\n.icon-move:hover {\\r\\n cursor: move !important;\\r\\n}\\r\\n\\r\\nul {\\r\\n cursor: default !important;\\r\\n}\\r\\n\\r\\nul:active {\\r\\n cursor: default !important;\\r\\n}\\r\\n\\r\\n/* \\r\\nli {\\r\\n cursor: default !important;\\r\\n}\\r\\n\\r\\nli:focus {\\r\\n cursor: default !important;\\r\\n}\\r\\n\\r\\nli:hover {\\r\\n cursor: default !important;\\r\\n} */\\r\\n\\r\\n/* ::ng-deep h4, ::ng-deep [data-label=\\\"Citation\\\"] {\\r\\n color: #a4123f;\\r\\n font-weight: 600;\\r\\n font-style: italic;\\r\\n font-size: 13px;\\r\\n margin-top: 0;\\r\\n} */\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vc3RhdGUtbWF0cml4c2V0dXAvc3RhdGUtbWF0cml4c2V0dXAuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsV0FBVztFQUNYLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFVBQVU7RUFDVixRQUFRO0VBQ1IsU0FBUztBQUNYOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLFFBQVE7RUFDUixTQUFTO0VBQ1Qsc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixlQUFlO0FBQ2pCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxZQUFZO0VBQ1osV0FBVztFQUNYLFNBQVM7RUFDVCxXQUFXO0VBQ1gsdUJBQXVCO0VBQ3ZCLHVCQUF1QjtFQUN2QixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsbUNBQW1DO0VBRW5DLDJCQUEyQjtBQUM3Qjs7QUFFQSxvQkFBb0I7O0FBRXBCO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLDJDQUEyQztFQUMzQyxZQUFZO0VBQ1o7d0JBQ3NCO0FBQ3hCOztBQUVBLG1FQUFtRTs7QUFFbkU7RUFDRSxnQkFBZ0I7RUFFaEIsd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBLHdCQUF3Qjs7QUFFeEIsa0JBQWtCOztBQUVsQjtFQUNFLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUN0QixxQkFBcUI7RUFDckIsaUJBQWlCO0FBQ25COztBQUVBLDRDQUE0Qzs7QUFFNUM7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGVBQWU7QUFDakI7O0FBRUEsaUNBQWlDOztBQUVqQztFQUNFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztFQUNQLFlBQVk7RUFDWixXQUFXO0VBQ1gsc0JBQXNCO0VBQ3RCLGtCQUFrQjtBQUNwQjs7QUFFQSwrQ0FBK0M7O0FBRS9DO0VBQ0Usc0JBQXNCO0FBQ3hCOztBQUVBLDREQUE0RDs7QUFFNUQ7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUEsb0VBQW9FOztBQUVwRTtFQUNFLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsYUFBYTtBQUNmOztBQUVBLGlEQUFpRDs7QUFFakQ7RUFDRSxjQUFjO0FBQ2hCOztBQUVBLHFDQUFxQzs7QUFFckM7RUFDRSxRQUFRO0VBQ1IsU0FBUztFQUNULFVBQVU7RUFDVixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLDBCQUEwQjtBQUM1Qjs7QUFDQTs7Ozs7Ozs7Ozs7R0FXRzs7QUFFSDs7Ozs7O0dBTUciLCJmaWxlIjoic3JjL2FwcC9BZG1pbi9zdGF0ZS1tYXRyaXhzZXR1cC9zdGF0ZS1tYXRyaXhzZXR1cC5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnN3aXRjaCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB3aWR0aDogNjBweDtcclxuICBoZWlnaHQ6IDM0cHg7XHJcbn1cclxuXHJcbi5zd2l0Y2ggaW5wdXQge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4uc2xpZGVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gIHRyYW5zaXRpb246IC40cztcclxufVxyXG5cclxuLnNsaWRlcjpiZWZvcmUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIGhlaWdodDogMjZweDtcclxuICB3aWR0aDogMjZweDtcclxuICBsZWZ0OiA0cHg7XHJcbiAgYm90dG9tOiA0cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgdHJhbnNpdGlvbjogLjRzO1xyXG59XHJcblxyXG5pbnB1dDpjaGVja2VkKy5zbGlkZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7XHJcbn1cclxuXHJcbmlucHV0OmZvY3VzKy5zbGlkZXIge1xyXG4gIGJveC1zaGFkb3c6IDAgMCAxcHggIzIxOTZGMztcclxufVxyXG5cclxuaW5wdXQ6Y2hlY2tlZCsuc2xpZGVyOmJlZm9yZSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNnB4KTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbn1cclxuXHJcbi8qIFJvdW5kZWQgc2xpZGVycyAqL1xyXG5cclxuLnNsaWRlci5yb3VuZCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMzRweDtcclxufVxyXG5cclxuLnNsaWRlci5yb3VuZDpiZWZvcmUge1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxufVxyXG5cclxuLmdyYWJiYWJsZSB7XHJcbiAgY3Vyc29yOiBtb3ZlO1xyXG4gIC8qIGZhbGxiYWNrIGlmIGdyYWIgY3Vyc29yIGlzIHVuc3VwcG9ydGVkICovXHJcbiAgY3Vyc29yOiBtb3ZlO1xyXG4gIC8qY3Vyc29yOiAtbW96LWdyYWI7XHJcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7Ki9cclxufVxyXG5cclxuLyogKE9wdGlvbmFsKSBBcHBseSBhIFwiY2xvc2VkLWhhbmRcIiBjdXJzb3IgZHVyaW5nIGRyYWcgb3BlcmF0aW9uLiAqL1xyXG5cclxuLmdyYWJiYWJsZTphY3RpdmUge1xyXG4gIGN1cnNvcjogZ3JhYmJpbmc7XHJcbiAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xyXG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcclxufVxyXG5cclxuLnFsLWZvbnQge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLyogVGhlIGNvbnRhaW5lciAqL1xyXG5cclxuLmNvbnRhaW5lciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmctbGVmdDogMjVweDtcclxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4vKiBIaWRlIHRoZSBicm93c2VyJ3MgZGVmYXVsdCByYWRpbyBidXR0b24gKi9cclxuXHJcbi5jb250YWluZXIgaW5wdXQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLyogQ3JlYXRlIGEgY3VzdG9tIHJhZGlvIGJ1dHRvbiAqL1xyXG5cclxuLmNoZWNrbWFyayB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIGhlaWdodDogMjBweDtcclxuICB3aWR0aDogMjBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxufVxyXG5cclxuLyogT24gbW91c2Utb3ZlciwgYWRkIGEgZ3JleSBiYWNrZ3JvdW5kIGNvbG9yICovXHJcblxyXG4uY29udGFpbmVyOmhvdmVyIGlucHV0fi5jaGVja21hcmsge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XHJcbn1cclxuXHJcbi8qIFdoZW4gdGhlIHJhZGlvIGJ1dHRvbiBpcyBjaGVja2VkLCBhZGQgYSBibHVlIGJhY2tncm91bmQgKi9cclxuXHJcbi5jb250YWluZXIgaW5wdXQ6Y2hlY2tlZH4uY2hlY2ttYXJrIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG59XHJcblxyXG4vKiBDcmVhdGUgdGhlIGluZGljYXRvciAodGhlIGRvdC9jaXJjbGUgLSBoaWRkZW4gd2hlbiBub3QgY2hlY2tlZCkgKi9cclxuXHJcbi5jaGVja21hcms6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFNob3cgdGhlIGluZGljYXRvciAoZG90L2NpcmNsZSkgd2hlbiBjaGVja2VkICovXHJcblxyXG4uY29udGFpbmVyIGlucHV0OmNoZWNrZWR+LmNoZWNrbWFyazphZnRlciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8qIFN0eWxlIHRoZSBpbmRpY2F0b3IgKGRvdC9jaXJjbGUpICovXHJcblxyXG4uY29udGFpbmVyIC5jaGVja21hcms6YWZ0ZXIge1xyXG4gIHRvcDogNnB4O1xyXG4gIGxlZnQ6IDZweDtcclxuICB3aWR0aDogOHB4O1xyXG4gIGhlaWdodDogOHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxufVxyXG5cclxuLmljb24tbW92ZSB7XHJcbiAgY3Vyc29yOiBtb3ZlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5pY29uLW1vdmU6aG92ZXIge1xyXG4gIGN1cnNvcjogbW92ZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG51bCB7XHJcbiAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbnVsOmFjdGl2ZSB7XHJcbiAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XHJcbn1cclxuLyogXHJcbmxpIHtcclxuICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcclxufVxyXG5cclxubGk6Zm9jdXMge1xyXG4gIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5saTpob3ZlciB7XHJcbiAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XHJcbn0gKi9cclxuXHJcbi8qIDo6bmctZGVlcCBoNCwgOjpuZy1kZWVwIFtkYXRhLWxhYmVsPVwiQ2l0YXRpb25cIl0ge1xyXG4gIGNvbG9yOiAjYTQxMjNmO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59ICovIl19 */\"","import { Component, OnInit, ViewChild, ViewChildren, ElementRef } from '@angular/core';\r\nimport { NgForm, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { EditorModule } from 'primeng/editor';\r\nimport { matrixfundService } from '../../../Services/matrixfund.service';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { matrixfundModel } from '../../../Models/matrixfundModel';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { Params, ActivatedRoute, Router } from '@angular/router';\r\nimport { matrixModel } from '../../../Models/matrixModel';\r\nimport { assessmentcategoryModel } from '../../../Models/assessmentcategoryModel';\r\n// import { SortablejsOptions } from 'angular-sortablejs';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { otherRequirementModel } from '../../../Models/otherRequirementModel';\r\nimport { ToolEnum } from '../../../Models/Common';\r\n\r\n@Component({\r\n selector: 'app-state-matrixsetup',\r\n templateUrl: './state-matrixsetup.component.html',\r\n styleUrls: ['./state-matrixsetup.component.css']\r\n})\r\nexport class StateMatrixsetupComponent implements OnInit {\r\n fundForm: FormGroup;\r\n userID: number = 0;\r\n stateid: number = 0;\r\n statename: string = '';\r\n isloading: boolean = false;\r\n isloadingsave: boolean = false;\r\n tokenKey: string = '';\r\n matrixfundmodel: matrixfundModel[] = [];\r\n totalPageSize: number = 0;\r\n pageSize: number = 0;\r\n pageIndex: number = 0;\r\n orderBy: string = 'null';\r\n keywordFilter: string = '';\r\n whereCondition: string = 'null';\r\n isAscending: boolean;\r\n statusCode: number = 0;\r\n appModel: any;\r\n upDowTitleCSS: string = '';\r\n upDowAssementCatNameCSS: string = '';\r\n upDowCreatedByCSS: string = '';\r\n upDowCreatedDateCSS: string = '';\r\n upDowModifiedByCSS: string = '';\r\n upDowModifiedDateCSS: string = '';\r\n matrixModel: matrixModel = {\r\n matrixId: 0,\r\n stateId: 0,\r\n stateName: '',\r\n createdDate: null,\r\n createdBy: null,\r\n createdByName: null,\r\n modifiedDate: null,\r\n modifiedBy: null,\r\n modifiedByName: null\r\n };\r\n totalRecordsCount: number = -1;\r\n assessmentcategoryModel: assessmentcategoryModel[] = [];\r\n @ViewChildren('rdfundfield') rdfundfield;\r\n isRecords: boolean = false;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n matrixid: number = 0;\r\n matrixFundId: number = 0;\r\n assementCatId: number = 0;\r\n fundFieldId: number = 0;\r\n // options: SortablejsOptions = {\r\n // animation: 150\r\n // };\r\n // otherreqoptions: SortablejsOptions = {\r\n // animation: 150\r\n // };\r\n deletematrixfundId: number = 0;\r\n @ViewChild('deletecloseBtn', {static: false}) deletecloseBtn: ElementRef;\r\n @ViewChild('assementCat', {static: false}) inputassementCat: ElementRef;\r\n @ViewChild('title', {static: false}) inputtitle: ElementRef;\r\n //otherrequirmentid: number = 0;\r\n //otherrequirmenttitle: string = '';\r\n //otherrequirmentdesc: string = '';\r\n otherRequirementModel: otherRequirementModel = {\r\n otherRequirementId: 0,\r\n matrixFundId: this.matrixFundId,\r\n title: '',\r\n description: '',\r\n displayOrder: 0,\r\n createdDate: null,\r\n createdBy: this.userID.toString(),\r\n modifiedDate: null,\r\n modifiedBy: this.userID.toString()\r\n };\r\n @ViewChild('otherreqcloseBtn', {static: false}) otherreqcloseBtn: ElementRef;\r\n addotherreqinproceess: number = 0;\r\n deleteotherreqId: number = 0;\r\n SelectedTool: string;\r\n productId: number = 1;\r\n assessmentRequired: string = 'Yes';\r\n constructor(private _fb: FormBuilder, private MatrixFundService: matrixfundService\r\n , private checkAuth: CheckAuth, private toastr: ToastrService\r\n , private activedRoute: ActivatedRoute, private router: Router\r\n , private titleService: Title\r\n , el: ElementRef) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('AdminUserId');\r\n this.fundForm = this._fb.group({\r\n matrixFundId: this.matrixFundId,\r\n matrixId: this.matrixid,\r\n title: [''],\r\n applicable: [''],\r\n currentamount: [''],\r\n administrativerecovery: [''],\r\n remit: [''],\r\n billtocustomer: [''],\r\n separatelineitem: [''],\r\n addinfo: [''],\r\n assementCatId: this.assementCatId,\r\n fundFieldId: this.fundFieldId,\r\n displayOrder: 0,\r\n registration: [''],\r\n otherRequirement: [],\r\n handledby: [''],\r\n isActive: 1,\r\n isDeleted: 0,\r\n createdBy: this.userID,\r\n modifiedBy: this.userID,\r\n assessmentRequired: this.assessmentRequired\r\n })\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n // this.options = {\r\n // onUpdate: (event: any) => {\r\n // this.fundorderchange();\r\n // }\r\n // };\r\n // this.otherreqoptions = {\r\n // onUpdate: (event: any) => {\r\n // this.otherrequirmentorderchange();\r\n // }\r\n // };\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n // this.assessmentRequired = 'Yes';\r\n this.titleService.setTitle('State Matrix Setup');\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() {\r\n //this.movetotop();\r\n this.fundFieldId = 1;\r\n this.pageSize = this.appModel.PageSize;\r\n this.totalPageSize = 1;\r\n this.pageIndex = 1;\r\n this.keywordFilter = 'null';\r\n this.whereCondition = 'null';\r\n this.orderBy = 'DisplayOrder';\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this.stateid = params['id'];\r\n if (params['id2']) {\r\n this.matrixFundId = params['id2'];\r\n }\r\n this.GetMatrixbystateid();\r\n this.GetAssessmentCategory();\r\n }\r\n }\r\n });\r\n }\r\n\r\n //Fund start\r\n editfund() {\r\n //this.matrixFundId = matrixFundId; //This from query string\r\n let currentfund = this.matrixfundmodel.filter((item) => item.matrixFundId == this.matrixFundId);\r\n this.filldata(currentfund);\r\n this.movetotop();\r\n if (this.inputtitle.nativeElement.focus()) {\r\n setTimeout(() => this.inputtitle.nativeElement.focus());\r\n } this.isloading = false;\r\n }\r\n filldata(currentfund) {\r\n this.matrixFundId = currentfund[0].matrixFundId;\r\n this.assementCatId = currentfund[0].assementCatId;\r\n this.fundFieldId = +currentfund[0].fundFieldId;\r\n\r\n this.fundForm.setValue({\r\n 'matrixFundId': currentfund[0].matrixFundId,\r\n 'matrixId': currentfund[0].matrixId,\r\n 'title': currentfund[0].title,\r\n 'applicable': currentfund[0].applicable,\r\n 'currentamount': currentfund[0].currentAmount,\r\n 'administrativerecovery': currentfund[0].administrativeRecovery,\r\n 'remit': currentfund[0].remit,\r\n 'billtocustomer': currentfund[0].billToCustomer,\r\n 'separatelineitem': currentfund[0].separateLineItem,\r\n 'addinfo': currentfund[0].addinfo,\r\n 'assementCatId': currentfund[0].assementCatId,\r\n 'fundFieldId': currentfund[0].fundFieldId,\r\n 'displayOrder': currentfund[0].displayOrder,\r\n 'registration': currentfund[0].registration,\r\n 'otherRequirement': currentfund[0].listOfOtherRequirement,\r\n 'handledby': currentfund[0].handledby,\r\n 'isActive': 1,\r\n 'isDeleted': 0,\r\n 'createdBy': this.userID,\r\n 'modifiedBy': this.userID,\r\n 'assessmentRequired': currentfund[0].assessmentRequired\r\n });\r\n this.assessmentRequired = currentfund[0].assessmentRequired;\r\n //for (let i = 0; i < this.rdfundfield._results.length; i++) {\r\n // if (this.rdfundfield._results[i].nativeElement.checked) {\r\n // this.fundFieldId = this.rdfundfield._results[i].nativeElement.value;\r\n // }\r\n //}\r\n }\r\n\r\n GetMatrixbystateid(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.MatrixFundService.GetMatrixByStateId(this.tokenKey, this.stateid.toString(), this.userID.toString(), this.productId.toString()).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.matrixModel.matrixId = data[\"matrix\"][0].matrixId;\r\n this.matrixModel.stateId = data[\"matrix\"][0].stateId;\r\n this.matrixModel.stateName = data[\"matrix\"][0].stateName;\r\n this.matrixModel.createdDate = data[\"matrix\"][0].createdDate;\r\n this.matrixModel.createdBy = data[\"matrix\"][0].createdBy;\r\n this.matrixModel.createdByName = data[\"matrix\"][0].createdByName;\r\n this.matrixModel.modifiedDate = data[\"matrix\"][0].modifiedDate;\r\n this.matrixModel.modifiedBy = data[\"matrix\"][0].modifiedBy;\r\n this.matrixModel.modifiedByName = data[\"matrix\"][0].modifiedByName;\r\n this.matrixid = this.matrixModel.matrixId;\r\n this.statename = this.matrixModel.stateName;\r\n this.whereCondition = '(MatrixId = ' + this.matrixid + ')';\r\n this.GetMatrixFund();\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n GetMatrixFund(): void {\r\n //this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.MatrixFundService.GetMatrixFundFilterByPage(this.tokenKey, this.pageIndex.toString(), this.pageSize.toString(), this.whereCondition, this.orderBy, this.keywordFilter, this.productId.toString()).subscribe(\r\n data => {\r\n //this.isloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.matrixfundmodel = data[\"matrixFund\"];\r\n if (this.matrixfundmodel.length > 0) {\r\n this.isRecords = true;\r\n this.totalPageSize = parseInt(this.matrixfundmodel[0].totalRecordCount);\r\n this.totalRecordsCount = this.matrixfundmodel.length;\r\n if (this.matrixFundId > 0) {\r\n this.editfund();\r\n this.fundForm.controls['assementCatId'].disable();\r\n }\r\n else {\r\n this.isloading = false;\r\n }\r\n }\r\n else {\r\n this.totalRecordsCount = 0;\r\n this.isRecords = false;\r\n this.isloading = false;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n savefund(fundForm: any) {\r\n for (let i = 0; i < this.rdfundfield._results.length; i++) {\r\n if (this.rdfundfield._results[i].nativeElement.checked) {\r\n this.fundFieldId = this.rdfundfield._results[i].nativeElement.value;\r\n }\r\n }\r\n //if (this.assementCatId <= 0) {\r\n // this.showMessage('Please select assessment.', 'Required', 'error');\r\n // return;\r\n //}\r\n if ((fundForm.value[\"title\"] == null || fundForm.value[\"title\"] == undefined ||\r\n fundForm.value[\"title\"] == \"\") && (this.assementCatId != 1\r\n && this.assementCatId != 7 && this.assementCatId != 8 && this.assementCatId != 9 && this.assementCatId != 15 && this.assementCatId != 16 && this.assementCatId != 17)) {\r\n this.showMessage('Please enter title.', 'Required', 'error');\r\n return;\r\n }\r\n if ((fundForm.value[\"registration\"] == null || fundForm.value[\"registration\"] == undefined ||\r\n fundForm.value[\"registration\"] == \"\") && (this.assementCatId == 1 || this.assementCatId == 9 || this.assementCatId == 16 || this.assementCatId == 17)) {\r\n if (this.assementCatId == 16) {\r\n this.showMessage('Please enter agency regulation restricted description.', 'Required', 'error');\r\n }\r\n else if (this.assementCatId == 17) {\r\n this.showMessage('Please enter definition(s) description.', 'Required', 'error');\r\n }\r\n else {\r\n this.showMessage('Please enter registration description.', 'Required', 'error');\r\n }\r\n return;\r\n }\r\n //if ((fundForm.value[\"otherRequirement\"] == null || fundForm.value[\"otherRequirement\"] == undefined ||\r\n // fundForm.value[\"otherRequirement\"] == \"\") && this.assementCatId == 7) {\r\n // this.showMessage('Please enter other requirement.', 'Required', 'error');\r\n // return;\r\n //}\r\n if ((fundForm.value[\"handledby\"] == null || fundForm.value[\"handledby\"] == undefined ||\r\n fundForm.value[\"handledby\"] == \"\") && this.assementCatId == 8) {\r\n this.showMessage('Please enter customer complaints handled by name.', 'Required', 'error');\r\n return;\r\n }\r\n this.blockDocument();\r\n if (this.assementCatId == 1 || this.assementCatId == 9) {\r\n fundForm.value[\"title\"] = 'Registration';\r\n }\r\n if (this.assementCatId == 16) {\r\n fundForm.value[\"title\"] = 'Regulation';\r\n }\r\n if (this.assementCatId == 17) {\r\n fundForm.value[\"title\"] = 'Definition(s)';\r\n }\r\n if (this.assementCatId == 7 || this.assementCatId == 15) {\r\n fundForm.value[\"title\"] = 'Other Requirements';\r\n }\r\n if (this.assementCatId == 8) {\r\n fundForm.value[\"title\"] = 'Customer Complaints Handled By';\r\n }\r\n fundForm.value[\"matrixId\"] = this.matrixid;\r\n fundForm.value[\"matrixFundId\"] = this.matrixFundId;\r\n fundForm.value[\"assementCatId\"] = this.assementCatId;\r\n fundForm.value[\"fundFieldId\"] = this.fundFieldId;\r\n\r\n if (this.assementCatId == 0 || this.assementCatId == 15)\r\n fundForm.value[\"assessmentRequired\"] = 'Yes';\r\n else\r\n fundForm.value[\"assessmentRequired\"] = this.assessmentRequired;\r\n\r\n let msg = '';\r\n if (this.matrixFundId == 0) {\r\n msg = 'Added';\r\n }\r\n else {\r\n msg = 'Updated';\r\n }\r\n this.MatrixFundService.addupdatematrixfund(this.fundForm.value, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n if (this.addotherreqinproceess == 1) {\r\n this.matrixFundId = data.planReviewerId;\r\n this.otherRequirementModel.matrixFundId = data.planReviewerId;\r\n this.saveotherRequirement();\r\n }\r\n else {\r\n this.nevigatetomanagesetup();\r\n this.showMessage(msg + ' successfully', msg, 'success');\r\n this.unblockDocument();\r\n }\r\n }\r\n else {\r\n if (data.message == 'duplicate') {\r\n this.showMessage('Duplicate assessment category not allowed.', 'Duplicate', 'error');\r\n this.unblockDocument();\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n });\r\n }\r\n\r\n onDropSuccess() {\r\n this.otherrequirmentorderchange()\r\n // this.fundorderchange();\r\n }\r\n fundorderchange() {\r\n this.blockDocument();\r\n let _matrixfundmodel = this.matrixfundmodel;\r\n for (let iCounter = 0; iCounter < _matrixfundmodel.length; iCounter++) {\r\n _matrixfundmodel[iCounter].modifiedBy = this.userID.toString();\r\n }\r\n this.MatrixFundService.updatematrixfundDisplayOrder(this.tokenKey, this.matrixfundmodel)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.showMessage('Rearranged successfully', 'Rearranged', 'success');\r\n this.GetMatrixFund();\r\n this.isloadingsave = true;\r\n this.unblockDocument();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n setDeletematrixfundId(matrixfundId: any) {\r\n this.deletematrixfundId = matrixfundId;\r\n }\r\n\r\n DeleteFund() {\r\n this.blockDocument();\r\n this.MatrixFundService.deletefund(this.tokenKey, this.deletematrixfundId)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.showMessage('Deleted successfully', 'Deleted', 'success');\r\n this.deletecloseBtn.nativeElement.click();\r\n this.GetMatrixFund();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n ActiveInactiveFund(matrixfundId: any, isactive: any) {\r\n this.blockDocument();\r\n this.MatrixFundService.activeinactivefund(this.tokenKey, matrixfundId, isactive)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (isactive) {\r\n this.showMessage('Activated successfully', 'Active', 'success');\r\n }\r\n else {\r\n this.showMessage('Inactivated successfully', 'Inactive', 'success');\r\n }\r\n this.GetMatrixFund();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n redirectToStatePreview(stateid) {\r\n sessionStorage.setItem('singleStatePreview', stateid);\r\n let navigation = '/admin/' + this.SelectedTool + '/state/matrix/preview';\r\n this.router.navigate([navigation]);\r\n }\r\n //Fund end\r\n\r\n //Assessments -start\r\n GetAssessmentCategory(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.MatrixFundService.GetAssessmentCategoryAll(this.tokenKey, this.productId).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.assessmentcategoryModel = data[\"assessmentCategory\"];\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n assessmentcategoryChange(event) {\r\n let isexists = this.matrixfundmodel.filter((item) => item.assementCatId == event.target.value);\r\n if (isexists.length == 0) {\r\n this.assementCatId = event.target.value;\r\n // Registration\r\n if (this.assementCatId == 1 || this.assementCatId == 9) {\r\n this.fundFieldId = 8;\r\n this.clearform();\r\n }\r\n if (this.assementCatId == 2 || this.assementCatId == 3 || this.assementCatId == 4 || this.assementCatId == 5 || this.assementCatId == 6\r\n || this.assementCatId == 10 || this.assementCatId == 11 || this.assementCatId == 12 || this.assementCatId == 13 || this.assementCatId == 14\r\n ) {\r\n this.fundFieldId = 1;\r\n }\r\n //Other Requirement\r\n if (this.assementCatId == 7 || this.assementCatId == 15) {\r\n this.fundFieldId = 9;\r\n this.clearform();\r\n }\r\n //Customer Complaints Handled By\r\n if (this.assementCatId == 8) {\r\n this.fundFieldId = 0;\r\n this.clearform();\r\n }\r\n //Agency Regulation Restricted\r\n if (this.assementCatId == 16) {\r\n this.fundFieldId = 10;\r\n this.clearform();\r\n }\r\n //Definition(s)\r\n if (this.assementCatId == 17) {\r\n this.fundFieldId = 11;\r\n this.clearform();\r\n }\r\n }\r\n else {\r\n let cat = this.assessmentcategoryModel.filter((item) => item.assementCatId == event.target.value);\r\n this.fundForm.controls['assementCatId'].setValue(0);\r\n this.showMessage('Configuration for ' + cat[0].name + ' is already exists.', 'Duplicate', 'error');\r\n this.assementCatId = 0;\r\n }\r\n //if (this.matrixFundId > 0) { // Moved to category wise clear\r\n // this.clearform();\r\n //}\r\n }\r\n //Assessments -end\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n sort(sortBy: string) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"Title\") {\r\n this.upDowTitleCSS = 'fa fa-arrow-down';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"AssementCatName\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = 'fa fa-arrow-down';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedBy\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = 'fa fa-arrow-down';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-down';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedBy\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = 'fa fa-arrow-down';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-down';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.orderBy = sortBy;\r\n\r\n if (sortBy === \"Title\") {\r\n this.upDowTitleCSS = 'fa fa-arrow-up';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"AssementCatName\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = 'fa fa-arrow-up';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedBy\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = 'fa fa-arrow-up';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-up';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedBy\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = 'fa fa-arrow-up';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowTitleCSS = '';\r\n this.upDowAssementCatNameCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-up';\r\n }\r\n }\r\n this.GetMatrixFund();\r\n }\r\n pageChanged($event) {\r\n this.pageIndex = parseInt($event.page);\r\n this.GetMatrixFund();\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n cleardata() {\r\n this.fundForm.reset();\r\n this.matrixFundId = 0;\r\n this.assementCatId = 0;\r\n this.fundFieldId = 1;\r\n this.clearform();\r\n }\r\n clearform() {\r\n this.fundForm.patchValue(this.fundForm.value, { onlySelf: false, emitEvent: true });\r\n this.fundForm.setValue({\r\n 'matrixFundId': this.matrixFundId,\r\n 'matrixId': this.matrixid,\r\n 'title': '',\r\n 'applicable': '',\r\n 'currentamount': '',\r\n 'administrativerecovery': '',\r\n 'remit': '',\r\n 'billtocustomer': '',\r\n 'separatelineitem': '',\r\n 'addinfo': '',\r\n 'assementCatId': this.assementCatId,\r\n 'fundFieldId': this.fundFieldId,\r\n 'displayOrder': 0,\r\n 'registration': '',\r\n 'otherRequirement': [],\r\n 'handledby': '',\r\n 'isActive': 1,\r\n 'isDeleted': 0,\r\n 'createdBy': this.userID,\r\n 'modifiedBy': this.userID,\r\n 'assessmentRequired': 'Yes',\r\n });\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n keywordFilters($event) {\r\n this.pageIndex = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.keywordFilter = $event.target.value;\r\n else\r\n this.keywordFilter = 'null';\r\n\r\n this.GetMatrixFund();\r\n }\r\n cancelfund() {\r\n this.nevigatetomanagesetup();\r\n }\r\n nevigatetomanagesetup() {\r\n let navigation = '/admin/' + this.SelectedTool + '/state/setup/manage/' + this.stateid;\r\n this.router.navigate([navigation]);\r\n }\r\n\r\n addotherreq(otherRequirementId) {\r\n this.otherRequirementModel.otherRequirementId = otherRequirementId;\r\n this.otherRequirementModel.title = '';\r\n this.otherRequirementModel.description = '';\r\n }\r\n editotherreq(otherRequirementId) {\r\n let currentfund = this.matrixfundmodel.filter((item) => item.matrixFundId == this.matrixFundId);\r\n let listofreq = currentfund[0].listOfOtherRequirement;\r\n let currentreq = listofreq.filter((item) => item.otherRequirementId == otherRequirementId);\r\n this.otherRequirementModel.otherRequirementId = otherRequirementId;\r\n this.otherRequirementModel.title = currentreq[0].title;\r\n this.otherRequirementModel.description = currentreq[0].description;\r\n }\r\n saveotherRequirement() {\r\n if (this.matrixFundId == 0) {\r\n this.addotherreqinproceess = 1;\r\n this.savefund(this.fundForm);\r\n return;\r\n }\r\n if (this.otherRequirementModel.title.trim() == \"\") {\r\n this.showMessage('Please enter title.', 'Required', 'error');\r\n return;\r\n }\r\n if (this.otherRequirementModel.description.trim() == \"\") {\r\n this.showMessage('Please enter description.', 'Required', 'error');\r\n return;\r\n }\r\n this.otherRequirementModel.matrixFundId = this.matrixFundId;\r\n this.otherRequirementModel.createdBy = this.userID.toString();\r\n this.otherRequirementModel.modifiedBy = this.userID.toString();\r\n\r\n this.blockDocument();\r\n let msg = '';\r\n if (this.otherRequirementModel.otherRequirementId == 0) {\r\n msg = 'added';\r\n }\r\n else {\r\n msg = 'updated';\r\n }\r\n this.MatrixFundService.addupdateotherrequirment(this.otherRequirementModel, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n this.showMessage('Other Requirement ' + msg + ' successfully', 'Other Requirement ' + msg, 'success');\r\n this.unblockDocument();\r\n this.GetMatrixFund();\r\n this.otherreqcloseBtn.nativeElement.click();\r\n }\r\n else {\r\n if (data.message == 'duplicate') {\r\n this.showMessage('Duplicate title not allowed.', 'Duplicate', 'error');\r\n this.unblockDocument();\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n }\r\n if (this.addotherreqinproceess == 1 && this.matrixFundId > 0) {\r\n this.addotherreqinproceess = 0;\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/state/setup/edit/' + this.stateid + '/' + this.matrixFundId]);\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n });\r\n }\r\n otherrequirmentorderchange() {\r\n this.blockDocument();\r\n let _otherRequirementModel = this.fundForm.value.otherRequirement;\r\n this.MatrixFundService.updateotherrequirmentDisplayOrder(this.tokenKey, this.fundForm.value.otherRequirement)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.showMessage('Other requirements rearranged successfully', 'Rearranged', 'success');\r\n this.GetMatrixFund();\r\n this.unblockDocument();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n setotherreqid(deleteotherreqId) {\r\n this.deleteotherreqId = deleteotherreqId;\r\n }\r\n Deleteotherreq() {\r\n this.blockDocument();\r\n this.MatrixFundService.deleteotherreq(this.tokenKey, this.deleteotherreqId)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.showMessage('Deleted successfully', 'Deleted', 'success');\r\n this.deletecloseBtn.nativeElement.click();\r\n this.GetMatrixFund();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n assessmentRequiredChange(event) {\r\n this.assessmentRequired = event.target.value;\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL3N0YXRlcy9zdGF0ZXMuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { RouterModule, Router } from '@angular/router';\r\nimport { StateMasterService } from 'src/Services/state-master.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { stateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ToolEnum } from '../../../Models/Common';\r\n\r\n@Component({\r\n selector: 'app-states',\r\n templateUrl: './states.component.html',\r\n styleUrls: ['./states.component.css']\r\n})\r\nexport class StatesComponent implements OnInit {\r\n stateCode: any;\r\n tokenKey: string;\r\n listofState: stateMasterModel[];\r\n\r\n PageNumber: number;\r\n PageSize: number;\r\n WhereCondition: string;\r\n OrderBy: string;\r\n StateName: string;\r\n\r\n\r\n upDowNameCSS: string = '';\r\n upDowShortNameCSS: string = '';\r\n upDowActiveCSS: string = '';\r\n isAscending: boolean = false;\r\n isRecord: boolean = false;\r\n isloading: boolean = false;\r\n SelectedTool: string;\r\n productId: number = 1;\r\n\r\n constructor(private router: Router, private state: StateMasterService, private checkAuth: CheckAuth\r\n , private titleService: Title) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.listofState = [];\r\n\r\n this.PageNumber = 1;\r\n this.PageSize = 999;\r\n this.WhereCondition = 'null';\r\n this.OrderBy = 'DisplayOrder DESC';\r\n this.StateName = 'null';\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n this.titleService.setTitle('States');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.isloading = true;\r\n this.GetState();\r\n }\r\n\r\n GetState() { \r\n this.state.GetStateMasterFindByPaged(this.tokenKey, this.PageNumber, this.PageSize, this.WhereCondition, this.OrderBy, this.StateName, this.productId).subscribe(\r\n data => {\r\n this.isloading = false;\r\n this.listofState = data['state'];\r\n if (this.listofState != null) {\r\n if (this.listofState.length == 0)\r\n this.isRecord = true;\r\n else\r\n this.isRecord = false;\r\n }\r\n else\r\n this.isRecord = true;\r\n },\r\n error => { this.stateCode = error }\r\n );\r\n }\r\n\r\n redirecttostatematrix(stateid) {\r\n let navigation = '/admin/' + this.SelectedTool + '/state/setup/manage/' + stateid;\r\n this.router.navigate([navigation]);\r\n }\r\n\r\n redirectToStatePreview(stateid) { \r\n sessionStorage.setItem('StateSetupManageRedirection', stateid);\r\n sessionStorage.setItem('isAdminOpen', 'true');\r\n sessionStorage.setItem('isClickOnState', 'true');\r\n let navigation = '/admin/' + this.SelectedTool + '/state/matrix/preview/';\r\n this.router.navigate([navigation]);\r\n }\r\n\r\n keywordFilters($event) {\r\n this.PageNumber = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.StateName = $event.target.value;\r\n else\r\n this.StateName = 'null';\r\n\r\n this.GetState();\r\n }\r\n\r\n sort(sortBy: string) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.OrderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"Name\") {\r\n this.upDowNameCSS = 'fa fa-arrow-down';\r\n this.upDowShortNameCSS = '';\r\n this.upDowActiveCSS = '';\r\n }\r\n else if (sortBy === \"ShortName\") {\r\n this.upDowNameCSS = '';\r\n this.upDowShortNameCSS = 'fa fa-arrow-down';\r\n this.upDowActiveCSS = '';\r\n }\r\n else if (sortBy === \"IsActive\") {\r\n this.upDowNameCSS = '';\r\n this.upDowShortNameCSS = '';\r\n this.upDowActiveCSS = 'fa fa-arrow-down';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.OrderBy = sortBy;\r\n\r\n if (sortBy === \"Name\") {\r\n this.upDowNameCSS = 'fa fa-arrow-up';\r\n this.upDowShortNameCSS = '';\r\n this.upDowActiveCSS = '';\r\n }\r\n else if (sortBy === \"ShortName\") {\r\n this.upDowNameCSS = '';\r\n this.upDowShortNameCSS = 'fa fa-arrow-up';\r\n this.upDowActiveCSS = '';\r\n }\r\n else if (sortBy === \"IsActive\") {\r\n this.upDowNameCSS = '';\r\n this.upDowShortNameCSS = '';\r\n this.upDowActiveCSS = 'fa fa-arrow-up';\r\n }\r\n }\r\n this.GetState();\r\n }\r\n}\r\n","export default \"button.calendar, button.calendar:active {\\r\\n width: 2.75rem;\\r\\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAcCAYAAAAEN20fAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAEUSURBVEiJ7ZQxToVAEIY/YCHGxN6XGOIpnpaEsBSeQC9ArZbm9TZ6ADyBNzAhQGGl8Riv4BLAWAgmkpBYkH1b8FWT2WK/zJ8ZJ4qiI6XUI3ANnGKWBnht2/ZBDRK3hgVGNsCd7/ui+JkEIrKtqurLpEWaphd933+IyI3LEIdpCYCiKD6HcuOa/nwOa0ScJEnk0BJg0UTUWJRl6RxCYEzEmomsIlPU3IPW+grIAbquy+q6fluy/28RIBeRMwDXdXMgXLj/B2uimRXpui4D9sBeRLKl+1N+L+t6RwbWrZliTTTr1oxYtzVWiTQAcRxvTX+eJMnlUDaO1vpZRO5NS0x48sIwfPc87xg4B04MCzQi8hIEwe4bl1DnFMCN2zsAAAAASUVORK5CYII=') !important;\\r\\n background-repeat: no-repeat;\\r\\n background-size: 23px;\\r\\n background-position: center;\\r\\n}\\r\\n\\r\\n/* Customize the label (the container) */\\r\\n\\r\\n.container {\\r\\n display: block;\\r\\n position: relative;\\r\\n padding-left: 30px;\\r\\n margin-bottom: 0px;\\r\\n cursor: pointer;\\r\\n font-size: 12px;\\r\\n -webkit-user-select: none;\\r\\n -moz-user-select: none;\\r\\n -ms-user-select: none;\\r\\n user-select: none;\\r\\n}\\r\\n\\r\\n/* Hide the browser's default checkbox */\\r\\n\\r\\n.container input {\\r\\n position: absolute;\\r\\n opacity: 0;\\r\\n cursor: pointer;\\r\\n height: 0;\\r\\n width: 0;\\r\\n}\\r\\n\\r\\n/* Create a custom checkbox */\\r\\n\\r\\n.checkmark {\\r\\n position: absolute;\\r\\n top: 0;\\r\\n left: 0;\\r\\n height: 17px;\\r\\n width: 17px;\\r\\n background-color: #eee;\\r\\n border-radius: 5px;\\r\\n}\\r\\n\\r\\n/* On mouse-over, add a grey background color\\r\\n.container:hover input ~ .checkmark {\\r\\n background-color: #eeeeee !important;\\r\\n} */\\r\\n\\r\\n/* When the checkbox is checked, add a blue background */\\r\\n\\r\\n.container input:checked ~ .checkmark {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n/* Create the checkmark/indicator (hidden when not checked) */\\r\\n\\r\\n.checkmark:after {\\r\\n content: \\\"\\\";\\r\\n position: absolute;\\r\\n display: none;\\r\\n}\\r\\n\\r\\n/* Show the checkmark when checked */\\r\\n\\r\\ninput:checked ~ .checkmark:after {\\r\\n display: block;\\r\\n}\\r\\n\\r\\n/* Style the checkmark/indicator */\\r\\n\\r\\n.container .checkmark:after {\\r\\n left: 6px;\\r\\n top: 3px;\\r\\n width:6px;\\r\\n height: 9px;\\r\\n border: solid white;\\r\\n border-width: 0 2px 2px 0;\\r\\n -webkit-transform: rotate(45deg);\\r\\n transform: rotate(45deg);\\r\\n font-family: 'Sarabun', sans-serif;\\r\\n}\\r\\n\\r\\n/* ::ng-deep h4, ::ng-deep [data-label=\\\"Citation\\\"] {\\r\\n color: #a4123f;\\r\\n font-weight: 600;\\r\\n font-style: italic;\\r\\n font-size: 13px;\\r\\n margin-top: 0;\\r\\n} */\\r\\n\\r\\n.ui-chkbox.ui-widget .ui-chkbox-box.ui-widget.ui-corner-all.ui-state-default.ui-state-active\\r\\n{\\r\\n border-color: #0039BF !important;\\r\\n background-color: #0039BF !important;\\r\\n color: #ffffff;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vdXBkYXRlcy9tYW5hZ2V1cGRhdGUuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGNBQWM7RUFDZCwwbEJBQTBsQjtFQUMxbEIsNEJBQTRCO0VBQzVCLHFCQUFxQjtFQUNyQiwyQkFBMkI7QUFDN0I7O0FBRUEsd0NBQXdDOztBQUN4QztFQUNFLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsZUFBZTtFQUNmLHlCQUF5QjtFQUN6QixzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLGlCQUFpQjtBQUNuQjs7QUFDQSx3Q0FBd0M7O0FBQ3hDO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixlQUFlO0VBQ2YsU0FBUztFQUNULFFBQVE7QUFDVjs7QUFHQSw2QkFBNkI7O0FBQzdCO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsWUFBWTtFQUNaLFdBQVc7RUFDWCxzQkFBc0I7RUFDdEIsa0JBQWtCO0FBQ3BCOztBQUVBOzs7R0FHRzs7QUFFSCx3REFBd0Q7O0FBQ3hEO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBLDZEQUE2RDs7QUFDN0Q7RUFDRSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGFBQWE7QUFDZjs7QUFFQSxvQ0FBb0M7O0FBQ3BDO0VBQ0UsY0FBYztBQUNoQjs7QUFFQSxrQ0FBa0M7O0FBQ2xDO0VBQ0UsU0FBUztJQUNQLFFBQVE7SUFDUixTQUFTO0lBQ1QsV0FBVztFQUNiLG1CQUFtQjtFQUNuQix5QkFBeUI7RUFDekIsZ0NBQWdDO0VBRWhDLHdCQUF3QjtFQUN4QixrQ0FBa0M7QUFDcEM7O0FBR0E7Ozs7OztHQU1HOztBQUVIOztFQUVFLGdDQUFnQztFQUNoQyxvQ0FBb0M7RUFDcEMsY0FBYztBQUNoQiIsImZpbGUiOiJzcmMvYXBwL0FkbWluL3VwZGF0ZXMvbWFuYWdldXBkYXRlLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJidXR0b24uY2FsZW5kYXIsIGJ1dHRvbi5jYWxlbmRhcjphY3RpdmUge1xyXG4gIHdpZHRoOiAyLjc1cmVtO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDSUFBQUFjQ0FZQUFBQUVOMjBmQUFBQUJITkNTVlFJQ0FnSWZBaGtpQUFBQUFsd1NGbHpBQUFPeEFBQURzUUJsU3NPR3dBQUFCbDBSVmgwVTI5bWRIZGhjbVVBZDNkM0xtbHVhM05qWVhCbExtOXlaNXZ1UEJvQUFBRVVTVVJCVkVpSjdaUXhUb1ZBRUlZL1lDSEd4TjZYR09JcG5wYUVzQlNlUUM5QXJaYm05VFo2QUR5Qk56QWhRR0dsOFJpdjRCTEFXQWdta3BCWWtIMWI4RldUMldLL3pKOFpKNHFpSTZYVUkzQU5uR0tXQm5odDIvWkJEUkszaGdWR05zQ2Q3L3VpK0prRUlyS3RxdXJMcEVXYXBoZDkzMytJeUkzTEVJZHBDWUNpS0Q2SGN1T2EvbndPYTBTY0pFbmswQkpnMFVUVVdKUmw2UnhDWUV6RW1vbXNJbFBVM0lQVytncklBYnF1eStxNmZsdXkvMjhSSUJlUk13RFhkWE1nWExqL0IydWltUlhwdWk0RDlzQmVSTEtsKzFOK0wrdDZSd2JXclpsaVRUVHIxb3hZdHpWV2lUUUFjUnh2VFgrZUpNbmxVRGFPMXZwWlJPNU5TMHg0OHNJd2ZQYzg3eGc0QjA0TUN6UWk4aElFd2U0YmwxRG5GTUNOMnpzQUFBQUFTVVZPUks1Q1lJST0nKSAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAyM3B4O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxufVxyXG5cclxuLyogQ3VzdG9taXplIHRoZSBsYWJlbCAodGhlIGNvbnRhaW5lcikgKi9cclxuLmNvbnRhaW5lciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmctbGVmdDogMzBweDtcclxuICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcbi8qIEhpZGUgdGhlIGJyb3dzZXIncyBkZWZhdWx0IGNoZWNrYm94ICovXHJcbi5jb250YWluZXIgaW5wdXQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBoZWlnaHQ6IDA7XHJcbiAgd2lkdGg6IDA7XHJcbn1cclxuXHJcblxyXG4vKiBDcmVhdGUgYSBjdXN0b20gY2hlY2tib3ggKi9cclxuLmNoZWNrbWFyayB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIGhlaWdodDogMTdweDtcclxuICB3aWR0aDogMTdweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xyXG4gIGJvcmRlci1yYWRpdXM6IDVweDtcclxufVxyXG5cclxuLyogT24gbW91c2Utb3ZlciwgYWRkIGEgZ3JleSBiYWNrZ3JvdW5kIGNvbG9yXHJcbi5jb250YWluZXI6aG92ZXIgaW5wdXQgfiAuY2hlY2ttYXJrIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlICFpbXBvcnRhbnQ7XHJcbn0gKi9cclxuXHJcbi8qIFdoZW4gdGhlIGNoZWNrYm94IGlzIGNoZWNrZWQsIGFkZCBhIGJsdWUgYmFja2dyb3VuZCAqL1xyXG4uY29udGFpbmVyIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG59XHJcblxyXG4vKiBDcmVhdGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKGhpZGRlbiB3aGVuIG5vdCBjaGVja2VkKSAqL1xyXG4uY2hlY2ttYXJrOmFmdGVyIHtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBTaG93IHRoZSBjaGVja21hcmsgd2hlbiBjaGVja2VkICovXHJcbmlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrOmFmdGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLyogU3R5bGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKi9cclxuLmNvbnRhaW5lciAuY2hlY2ttYXJrOmFmdGVyIHtcclxuICBsZWZ0OiA2cHg7XHJcbiAgICB0b3A6IDNweDtcclxuICAgIHdpZHRoOjZweDtcclxuICAgIGhlaWdodDogOXB4O1xyXG4gIGJvcmRlcjogc29saWQgd2hpdGU7XHJcbiAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICBmb250LWZhbWlseTogJ1NhcmFidW4nLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG5cclxuLyogOjpuZy1kZWVwIGg0LCA6Om5nLWRlZXAgW2RhdGEtbGFiZWw9XCJDaXRhdGlvblwiXSB7XHJcbiAgY29sb3I6ICNhNDEyM2Y7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgZm9udC1zaXplOiAxM3B4O1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbn0gKi9cclxuXHJcbi51aS1jaGtib3gudWktd2lkZ2V0IC51aS1jaGtib3gtYm94LnVpLXdpZGdldC51aS1jb3JuZXItYWxsLnVpLXN0YXRlLWRlZmF1bHQudWktc3RhdGUtYWN0aXZlXHJcbntcclxuICBib3JkZXItY29sb3I6ICMwMDM5QkYgIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICNmZmZmZmY7XHJcbn0iXX0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder } from '@angular/forms';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { StateMasterService } from '../../../Services/state-master.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { updatesService } from '../../../Services/updatesService';\r\nimport { fieldModel } from '../../../Models/fieldModel';\r\nimport { updateCategoryModel } from '../../../Models/updateCategoryModel';\r\nimport { Router, Params, ActivatedRoute } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { matrixfundModel } from '../../../Models/matrixfundModel';\r\nimport { ToolEnum, AdminUserType } from '../../../Models/Common';\r\nimport { ClientCompanyModel } from 'src/Models/ClientCompanyModel';\r\nimport { UsersService } from 'src/Services/users.service';\r\nimport { userModel } from 'src/Models/usersModel';\r\nimport { updatesModel } from 'src/Models/updatesModel';\r\n\r\n@Component({\r\n selector: 'app-manageupdate',\r\n templateUrl: './manageupdate.component.html',\r\n styleUrls: ['./manageupdate.component.css']\r\n})\r\nexport class ManageupdateComponent implements OnInit {\r\n updateForm: FormGroup;\r\n userID: number = 0;\r\n appModel: any;\r\n tokenKey: string = '';\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n statusCode: number = 0;\r\n myDateValue: Date;\r\n\r\n //State List\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n stateFilter: string = '';\r\n\r\n\r\n //Fund List\r\n dropdownListFund = [];\r\n selectedItemsFund = [];\r\n dropdownSettingsFund = {};\r\n updatesofFilter: string = '';\r\n\r\n\r\n fieldModel: fieldModel[] = [];\r\n updateCategoryModel: updateCategoryModel[] = [];\r\n updateid: number = 0;\r\n isloading: boolean = false;\r\n listFund: matrixfundModel[] = [];\r\n isfieldenable: boolean = false;\r\n SelectedTool: string;\r\n productId: number = 1;\r\n\r\n clientCompanyList: ClientCompanyModel[];\r\n dropdownListclientCompany = [];\r\n selectedItemsclientCompany = [];\r\n dropdownSettingclientCompany = {};\r\n listOfCompany = [];\r\n\r\n userModel: userModel[];\r\n dropdownListclientCompanyUser = [];\r\n selectedItemsclientCompanyUser = [];\r\n dropdownSettingclientCompanyUser = {};\r\n listOfUsers = [];\r\n\r\n isEnableDisable: boolean = false;\r\n isThisUpdateRequiresActionToPerform: boolean = false;\r\n\r\n isUpdateRequiredValues: boolean = false;\r\n actionNotesValues: any = '';\r\n actionChargesValues: any = 0;\r\n\r\n isSendEmailNotificationChecked: boolean = true;\r\n systemUserCondition: string = '';\r\n\r\n constructor(private userServices: UsersService, private _fb: FormBuilder, private checkAuth: CheckAuth, private stateMasterService: StateMasterService\r\n , private toastr: ToastrService, private updatesService: updatesService\r\n , private router: Router, private titleService: Title\r\n , private activedRoute: ActivatedRoute) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('AdminUserId');\r\n this.updateForm = this._fb.group({\r\n updateId: 0,\r\n updateCategoryId: 0,\r\n updateType: [''],\r\n matrixFundId: 0,\r\n fundFieldId: 0,\r\n stateId: 0,\r\n updateDate: new Date(),\r\n description: [''],\r\n isactive: 1,\r\n createdBy: this.userID,\r\n modifiedBy: this.userID,\r\n productId: 1,\r\n clientCompanyId: [{}],\r\n isUpdateRequired: 0,\r\n actionCharges: 0,\r\n actionNotes: '',\r\n actionTypeId: 4,\r\n companyUserId: [{}],\r\n isPushActionItem: false,\r\n isSendEmailNotification: 0\r\n })\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.dropdownSettingsFund = {\r\n singleSelection: true,\r\n text: \"Select Fund Type\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No data available for selected state',\r\n showCheckbox: false\r\n };\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n this.titleService.setTitle('Manage Update');\r\n\r\n this.dropdownSettingclientCompanyUser = {\r\n singleSelection: false,\r\n text: \"Select User\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No data available for selected user',\r\n showCheckbox: true\r\n };\r\n\r\n if (AdminUserType.systemadmin == parseInt(sessionStorage.getItem('adminTypeId')))\r\n this.systemUserCondition = 'null'\r\n else\r\n this.systemUserCondition = ' (CompanyId IN (Select CompanyId From [SystemUserCompany] Where [SystemUserCompany].UserId = ' + this.userID + '))';\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() {\r\n this.movetotop();\r\n this.GetStateData();\r\n this.GetFieldsData();\r\n this.GetUpdateCategoryData();\r\n this.GetClientCompany();\r\n this.updateForm.controls['fundFieldId'].disable();\r\n }\r\n GetStateData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.stateMasterService.getState(this.tokenKey, this.productId).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n // Set All Item\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n }\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this.updateid = params['id'];\r\n this.Getupdates();\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: true,\r\n text: \"Select State Type\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No state available',\r\n showCheckbox: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n GetFundbyState(stateid, updatesform): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.updatesService.GetMatrixFundbyStateId(this.tokenKey, stateid, this.productId).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.listFund = data[\"funds\"];\r\n // Set All Item\r\n this.dropdownListFund = [];\r\n for (let iCounter = 0; iCounter < data[\"funds\"].length; iCounter++) {\r\n this.dropdownListFund.push(\r\n { \"id\": data[\"funds\"][iCounter].matrixFundId, \"itemName\": data[\"funds\"][iCounter].title }\r\n );\r\n }\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this.updateid = params['id'];\r\n this.fillform(updatesform);\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n FilterSelecteventState($event) {\r\n this.selectedItemsFund = [];\r\n this.stateFilter = \"\";\r\n if ($event.id != \"\" && $event.id != null) {\r\n if (this.stateFilter != \"null\") {\r\n this.stateFilter = this.stateFilter + \",\" + $event.id;\r\n }\r\n else {\r\n this.stateFilter = \",\" + $event.id;\r\n }\r\n }\r\n if (this.stateFilter.charAt(0) == \",\") {\r\n this.stateFilter = this.stateFilter.slice(1)\r\n }\r\n\r\n if (this.stateFilter.split(',').length == 1) {\r\n this.GetFundbyState(+this.stateFilter.split(',')[0], null);\r\n }\r\n else {\r\n this.GetFundbyState(0, null);\r\n }\r\n }\r\n\r\n FilterDeSelectseventState($event) {\r\n this.selectedItemsFund = [];\r\n if ($event.id != \"\" && $event.id != null) {\r\n this.stateFilter = this.stateFilter.replace($event.id, \"\");\r\n }\r\n this.stateFilter = this.stateFilter.replace(/,\\s*$/, \"\");\r\n this.stateFilter = this.stateFilter.replace(\",,\", \",\");\r\n if (this.stateFilter == \"\") { this.stateFilter = \"null\" }\r\n\r\n if (this.stateFilter.charAt(0) == \",\") {\r\n this.stateFilter = this.stateFilter.slice(1)\r\n }\r\n\r\n if (this.stateFilter.split(',').length == 1) {\r\n this.GetFundbyState(+this.stateFilter.split(',')[0], null);\r\n }\r\n else {\r\n this.GetFundbyState(0, null);\r\n }\r\n }\r\n\r\n onDeSelectAllState($event) {\r\n this.stateFilter = '';\r\n }\r\n\r\n GetFieldsData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.updatesService.getFundFields(this.tokenKey).subscribe(\r\n data => {\r\n if (data[\"fundField\"] != null) {\r\n this.fieldModel = data[\"fundField\"];\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n GetUpdateCategoryData(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.updatesService.getUpdateCategory(this.tokenKey).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data[\"updateCategory\"] != null) {\r\n this.updateCategoryModel = data[\"updateCategory\"];\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n dateFormat(dt: Date) {\r\n let dd = dt.getDate().toString();\r\n if (parseInt(dd.toString()) < 10)\r\n dd = '0' + dd.toString();\r\n\r\n let mm = (dt.getMonth() + 1).toString();\r\n if (parseInt(mm.toString()) < 10)\r\n mm = '0' + mm.toString();\r\n\r\n return mm + '/' + dd + '/' + dt.getFullYear() + ' 00:00:00';\r\n\r\n }\r\n\r\n saveupdates(updateForm: any) {\r\n\r\n let dt = new Date(updateForm.value['updateDate'])\r\n updateForm.value['updateDate'] = this.dateFormat(dt);\r\n\r\n\r\n\r\n if (updateForm.value[\"updateCategoryId\"] == null ||\r\n updateForm.value[\"updateCategoryId\"] == undefined ||\r\n updateForm.value[\"updateCategoryId\"] == \"\") {\r\n this.showMessage('Please select update category.', 'Required', 'error');\r\n return;\r\n }\r\n if ((updateForm.value[\"updateType\"] == null ||\r\n updateForm.value[\"updateType\"] == undefined ||\r\n updateForm.value[\"updateType\"] == \"\")) {\r\n this.showMessage('Please enter update type.', 'Required', 'error');\r\n return;\r\n }\r\n if (this.stateFilter == 'null' ||\r\n this.stateFilter == undefined ||\r\n this.stateFilter == \"\") {\r\n this.showMessage('Please select state.', 'Required', 'error');\r\n return;\r\n }\r\n\r\n // this.updatesModel.updateId = this.updateid;\r\n // this.updatesModel.stateId = this.stateFilter == '' ? 0 : parseInt(this.stateFilter);\r\n\r\n updateForm.value[\"updateId\"] = this.updateid;\r\n updateForm.value[\"stateId\"] = this.stateFilter;\r\n\r\n // if (updateForm.value[\"matrixFundId\"].length > 0) {\r\n // updateForm.value[\"matrixFundId\"] = updateForm.value[\"matrixFundId\"][0].id;\r\n // }\r\n // else {\r\n // updateForm.value[\"matrixFundId\"] = 0;\r\n // }\r\n\r\n updateForm.value[\"matrixFundId\"] = this.updatesofFilter == '' ? '0' : this.updatesofFilter;\r\n\r\n updateForm.value[\"productId\"] = this.productId;\r\n\r\n\r\n if (this.listOfCompany.length == 0) {\r\n updateForm.value[\"clientCompanyId\"] = 0;\r\n }\r\n else {\r\n updateForm.value[\"clientCompanyId\"] = this.listOfCompany.join(',');\r\n }\r\n\r\n\r\n\r\n if (this.listOfCompany.length == 0 && this.listOfUsers.length > 0) {\r\n this.showMessage('Please select company.', 'Required', 'error');\r\n return;\r\n }\r\n\r\n // if ((updateForm.value[\"clientCompanyId\"] > 0) && (updateForm.value[\"companyUserId\"].length == 0 || updateForm.value[\"companyUserId\"] == 'undefined')) {\r\n // this.showMessage('Please select user.', 'Required', 'error');\r\n // return;\r\n // }\r\n\r\n if (this.listOfUsers.length == 0) {\r\n updateForm.value[\"companyUserId\"] = 0;\r\n }\r\n else {\r\n updateForm.value[\"companyUserId\"] = this.listOfUsers.join(',');\r\n }\r\n\r\n let isDecimal = this.isDecimalValue(updateForm.value[\"actionCharges\"]);\r\n if (!isDecimal) {\r\n this.showMessage('Please enter valid action charges.', 'Required', 'error');\r\n return;\r\n }\r\n\r\n if (updateForm.value[\"isUpdateRequired\"] == false || typeof (updateForm.value[\"isUpdateRequired\"]) == 'undefined') {\r\n updateForm.value[\"actionCharges\"] = 0;\r\n updateForm.value[\"actionNotes\"] = null;\r\n }\r\n\r\n let msg = '';\r\n if (this.updateid == 0) {\r\n msg = 'Added';\r\n }\r\n else {\r\n msg = 'Updated';\r\n }\r\n\r\n // if (this.updateid == 0) \r\n // updateForm.value[\"isSendEmailNotification\"] = true;\r\n\r\n updateForm.value[\"isSendEmailNotification\"] = this.isSendEmailNotificationChecked;\r\n\r\n this.blockDocument();\r\n this.updatesService.addupdateupdates(this.updateForm.value, this.tokenKey).subscribe(data => {\r\n\r\n if (data.status == 'Success') {\r\n this.showMessage(msg + ' successfully', msg, 'success');\r\n this.unblockDocument();\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/updates']);\r\n }\r\n else {\r\n //if (data.message == 'duplicate') {\r\n // this.showMessage('Duplicate not allowed.', 'Duplicate', 'error');\r\n // this.unblockDocument();\r\n //}\r\n //else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n this.unblockDocument();\r\n //}\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n });\r\n }\r\n\r\n isDecimalValue(actionCharges: any) {\r\n var str = actionCharges.toString();\r\n var re = /^(0|[1-9]\\d*)(\\.\\d+)?$/;\r\n var found = str.match(re);\r\n return found == null ? false : true;\r\n }\r\n\r\n Getupdates(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.updatesService.getupdatesfindByID(this.tokenKey, this.updateid).subscribe(\r\n data => {\r\n\r\n if (data[\"updates\"] != null) {\r\n this.GetFundbyState(data[\"updates\"][0].stateId, data);\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n\r\n this.unblockDocument();\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n fillform(data) {\r\n this.updateForm.setValue({\r\n 'updateId': data[\"updates\"][0].updateId,\r\n 'updateCategoryId': data[\"updates\"][0].updateCategoryId,\r\n 'updateType': data[\"updates\"][0].updateType,\r\n 'matrixFundId': data[\"updates\"][0].matrixFundId,\r\n 'fundFieldId': data[\"updates\"][0].fundFieldId,\r\n 'stateId': data[\"updates\"][0].stateId,\r\n 'updateDate': new Date(data[\"updates\"][0].updateDate),\r\n 'description': data[\"updates\"][0].description,\r\n 'isactive': 1,\r\n 'createdBy': this.userID,\r\n 'modifiedBy': this.userID,\r\n 'productId': this.productId,\r\n 'clientCompanyId': [{}],\r\n 'isUpdateRequired': data['updates'][0].isUpdateRequired,\r\n 'actionCharges': data['updates'][0].actionCharges,\r\n 'actionNotes': data['updates'][0].actionNotes,\r\n 'actionTypeId': data['updates'][0].actionTypeId,\r\n 'companyUserId': [{}],\r\n 'isPushActionItem': data['updates'][0].isPushActionItem,\r\n 'isSendEmailNotification': this.isSendEmailNotificationChecked,\r\n });\r\n if (data['updates'][0].isPushActionItem) {\r\n this.isThisUpdateRequiresActionToPerform = true;\r\n }\r\n\r\n if (data['updates'][0].isUpdateRequired) {\r\n this.isEnableDisable = true;\r\n }\r\n this.selectedItemsState = [{\r\n \"id\": parseInt(data[\"updates\"][0].stateId),\r\n \"itemName\": data[\"updates\"][0].stateName\r\n }];\r\n this.stateFilter = data[\"updates\"][0].stateId;\r\n\r\n this.selectedItemsclientCompany = [];\r\n this.listOfCompany = [];\r\n if (data[\"updates\"][0].clientCompanyId != null && data[\"updates\"][0].clientCompanyId != '') {\r\n this.selectedItemsclientCompany.push({ \"id\": parseInt(data[\"updates\"][0].clientCompanyId), \"itemName\": data[\"updates\"][0].companyName });\r\n this.listOfCompany.push(parseInt(data[\"updates\"][0].clientCompanyId));\r\n this.GetCompanyUser(parseInt(data[\"updates\"][0].clientCompanyId));\r\n }\r\n\r\n this.selectedItemsclientCompanyUser = [];\r\n this.listOfUsers = [];\r\n if (data[\"updates\"][0].userUpdatelist != null) {\r\n if (data[\"updates\"][0].userUpdatelist.length > 0) {\r\n for (let iCounter = 0; iCounter < data[\"updates\"][0].userUpdatelist.length; iCounter++) {\r\n if (parseInt(data[\"updates\"][0].userUpdatelist[iCounter].userId) != 0) {\r\n this.selectedItemsclientCompanyUser.push({ \"id\": parseInt(data[\"updates\"][0].userUpdatelist[iCounter].userId), \"itemName\": data[\"updates\"][0].userUpdatelist[iCounter].userName });\r\n this.listOfUsers.push(parseInt(data[\"updates\"][0].userUpdatelist[iCounter].userId));\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (this.dropdownListFund.length > 0) {\r\n this.selectedItemsFund = [{\r\n \"id\": parseInt(data[\"updates\"][0].matrixFundId),\r\n \"itemName\": data[\"updates\"][0].matrixFundTitle\r\n }];\r\n\r\n this.updatesofFilter = data[\"updates\"][0].matrixFundId;\r\n const fundItem = this.listFund.filter((item) => item.matrixFundId == data[\"updates\"][0].matrixFundId);\r\n if (fundItem && fundItem.length > 0) {\r\n const assementCatId = fundItem[0].assementCatId;\r\n if (assementCatId != 7 && assementCatId != 9 && assementCatId != 15 && assementCatId != 16\r\n && assementCatId != 17) {\r\n this.updateForm.controls['fundFieldId'].enable();\r\n }\r\n }\r\n } else {\r\n this.selectedItemsFund = [];\r\n }\r\n }\r\n cancelupdates() {\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/updates']);\r\n }\r\n\r\n FilterSelecteventupdatesof($event) {\r\n this.updatesofFilter = \"\";\r\n if ($event.id != \"\" && $event.id != null) {\r\n if (this.updatesofFilter != \"null\") {\r\n this.updatesofFilter = this.updatesofFilter + \",\" + $event.id;\r\n }\r\n else {\r\n this.updatesofFilter = \",\" + $event.id;\r\n }\r\n }\r\n if (this.updatesofFilter.charAt(0) == \",\") {\r\n this.updatesofFilter = this.updatesofFilter.slice(1)\r\n }\r\n if (this.updatesofFilter.split(',').length == 1) {\r\n let currentfund = this.listFund.filter((item) => item.matrixFundId == +this.updatesofFilter);\r\n if (currentfund[0].assementCatId == 7 || currentfund[0].assementCatId == 1) {\r\n this.updateForm.controls['fundFieldId'].setValue(0);\r\n this.updateForm.controls['fundFieldId'].disable();\r\n }\r\n else {\r\n this.updateForm.controls['fundFieldId'].enable();\r\n }\r\n }\r\n else {\r\n this.updateForm.controls['fundFieldId'].setValue(0);\r\n this.updateForm.controls['fundFieldId'].disable();\r\n }\r\n }\r\n FilterDeSelectseventupdatesof($event) {\r\n this.updatesofFilter = \"\";\r\n if ($event.id != \"\" && $event.id != null) {\r\n this.updatesofFilter = this.updatesofFilter.replace($event.id, \"\");\r\n }\r\n this.updatesofFilter = this.updatesofFilter.replace(/,\\s*$/, \"\");\r\n this.updatesofFilter = this.updatesofFilter.replace(\",,\", \",\");\r\n if (this.updatesofFilter == \"\") { this.updatesofFilter = \"null\" }\r\n\r\n if (this.updatesofFilter.charAt(0) == \",\") {\r\n this.updatesofFilter = this.updatesofFilter.slice(1)\r\n }\r\n if (this.updatesofFilter.split(',').length == 1) {\r\n let currentfund = this.listFund.filter((item) => item.matrixFundId == +this.updatesofFilter);\r\n if (currentfund[0].assementCatId == 7 || currentfund[0].assementCatId == 1) {\r\n this.updateForm.controls['fundFieldId'].setValue(0);\r\n this.updateForm.controls['fundFieldId'].disable();\r\n }\r\n else {\r\n this.updateForm.controls['fundFieldId'].enable();\r\n }\r\n }\r\n else {\r\n this.updateForm.controls['fundFieldId'].setValue(0);\r\n this.updateForm.controls['fundFieldId'].disable();\r\n }\r\n }\r\n\r\n FilterDeSelectAllseventupdatesof($event) {\r\n this.updatesofFilter = '';\r\n }\r\n\r\n GetClientCompany() {\r\n this.clientCompanyList = [];\r\n this.updatesService.GetClientCompany(this.tokenKey, this.productId, this.systemUserCondition).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.clientCompanyList = data['clientCompanay'];\r\n\r\n if (this.clientCompanyList != null) {\r\n if (this.clientCompanyList.length > 0) {\r\n for (let iCounter = 0; iCounter < this.clientCompanyList.length; iCounter++) {\r\n this.dropdownListclientCompany.push(\r\n { \"id\": this.clientCompanyList[iCounter].companyId, \"itemName\": this.clientCompanyList[iCounter].companyName }\r\n );\r\n }\r\n }\r\n }\r\n\r\n this.dropdownSettingclientCompany = {\r\n singleSelection: true,\r\n text: \"Select Company\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No data available for selected company',\r\n showCheckbox: false\r\n };\r\n }\r\n },\r\n error => {\r\n this.statusCode = error;\r\n }\r\n );\r\n }\r\n\r\n isNumberKey(evt) {\r\n\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 setEnableDisable($event) {\r\n this.isEnableDisable = $event;\r\n }\r\n\r\n // Company \r\n onSelectedCompany($event) {\r\n this.listOfCompany = [];\r\n let companyId = $event.id;\r\n this.selectedItemsclientCompanyUser = [];\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event.id)\r\n this.listOfCompany.push($event.id);\r\n }\r\n else {\r\n this.listOfCompany.push($event.id);\r\n }\r\n }\r\n this.GetCompanyUser(companyId);\r\n }\r\n\r\n onDeSelectedCompany($event) {\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onSelectAllCompany($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event[iCounter].id)\r\n this.listOfCompany.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfCompany.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllCompany($event) {\r\n this.dropdownListclientCompanyUser = [];\r\n this.selectedItemsclientCompanyUser = [];\r\n this.listOfUsers = [];\r\n this.listOfCompany = [];\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n // Users\r\n // Users \r\n onSelectedUsers($event) {\r\n\r\n if (this.listOfUsers != null) {\r\n if (this.listOfUsers.length > 0) {\r\n this.listOfUsers = this.removeElemetninArray(this.listOfUsers, $event.id)\r\n this.listOfUsers.push($event.id);\r\n }\r\n else {\r\n this.listOfUsers.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeSelectedUsers($event) {\r\n if (this.listOfUsers != null) {\r\n if (this.listOfUsers.length > 0) {\r\n this.listOfUsers = this.removeElemetninArray(this.listOfUsers, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onSelectAllUsers($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfUsers != null) {\r\n if (this.listOfUsers.length > 0) {\r\n this.listOfUsers = this.removeElemetninArray(this.listOfUsers, $event[iCounter].id)\r\n this.listOfUsers.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfUsers.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllUsers($event) {\r\n this.listOfUsers = [];\r\n }\r\n\r\n GetCompanyUser(companyId: any) {\r\n this.dropdownListclientCompanyUser = [];\r\n this.userServices.GetUsersFindByCompanyId(this.tokenKey, companyId, this.productId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n if (data['companyUsers'] != null) {\r\n if (data['companyUsers'].length > 0) {\r\n this.userModel = data['companyUsers'];\r\n\r\n for (let iCounter = 0; iCounter < this.userModel.length; iCounter++) {\r\n if(this.userModel[iCounter].adminUserId != -1) {\r\n this.dropdownListclientCompanyUser.push(\r\n { \"id\": this.userModel[iCounter].userId, \"itemName\": this.userModel[iCounter].userName }\r\n );\r\n }\r\n }\r\n\r\n this.dropdownSettingclientCompanyUser = {\r\n singleSelection: false,\r\n text: \"Select User\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 2,\r\n noDataLabel: 'No data available for selected user',\r\n showCheckbox: true\r\n };\r\n\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n DisplayThisUpdateonActionItems($event) {\r\n this.isThisUpdateRequiresActionToPerform = $event.target.checked;\r\n if (!$event.target.checked) {\r\n this.isUpdateRequiredValues = $event.target.checked;\r\n this.isEnableDisable = $event.target.checked;\r\n }\r\n this.actionChargesValues = 0;\r\n this.actionNotesValues = '';\r\n }\r\n\r\n setSendEmailNotificationChecked($event) {\r\n this.isSendEmailNotificationChecked = $event.target.checked;\r\n }\r\n\r\n}\r\n","export default \".switch {\\r\\n position: relative;\\r\\n display: inline-block;\\r\\n width: 60px;\\r\\n height: 34px;\\r\\n }\\r\\n \\r\\n .switch input {\\r\\n opacity: 0;\\r\\n width: 0;\\r\\n height: 0;\\r\\n }\\r\\n \\r\\n .slider {\\r\\n position: absolute;\\r\\n cursor: pointer;\\r\\n top: 0;\\r\\n left: 0;\\r\\n right: 0;\\r\\n bottom: 0;\\r\\n background-color: #ccc;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n \\r\\n .slider:before {\\r\\n position: absolute;\\r\\n content: \\\"\\\";\\r\\n height: 26px;\\r\\n width: 26px;\\r\\n left: 4px;\\r\\n bottom: 4px;\\r\\n background-color: white;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n \\r\\n input:checked + .slider {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n input:focus + .slider {\\r\\n box-shadow: 0 0 1px #0039BF;\\r\\n }\\r\\n \\r\\n input:checked + .slider:before {\\r\\n -webkit-transform: translateX(26px);\\r\\n transform: translateX(26px);\\r\\n }\\r\\n \\r\\n /* Rounded sliders */\\r\\n \\r\\n .slider.round {\\r\\n border-radius: 34px;\\r\\n }\\r\\n \\r\\n .slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n \\r\\n .ehslabelscoll label {\\r\\n display: block;\\r\\n padding-bottom: 5px;\\r\\n font-weight: normal;\\r\\n }\\r\\n \\r\\n .ehslabelscoll input {\\r\\n margin-right: 3px;\\r\\n }\\r\\n \\r\\n .custom-checkbox .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #0039BF;\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n button.calendar, button.calendar:active {\\r\\n width: 2.75rem;\\r\\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAcCAYAAAAEN20fAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAEUSURBVEiJ7ZQxToVAEIY/YCHGxN6XGOIpnpaEsBSeQC9ArZbm9TZ6ADyBNzAhQGGl8Riv4BLAWAgmkpBYkH1b8FWT2WK/zJ8ZJ4qiI6XUI3ANnGKWBnht2/ZBDRK3hgVGNsCd7/ui+JkEIrKtqurLpEWaphd933+IyI3LEIdpCYCiKD6HcuOa/nwOa0ScJEnk0BJg0UTUWJRl6RxCYEzEmomsIlPU3IPW+grIAbquy+q6fluy/28RIBeRMwDXdXMgXLj/B2uimRXpui4D9sBeRLKl+1N+L+t6RwbWrZliTTTr1oxYtzVWiTQAcRxvTX+eJMnlUDaO1vpZRO5NS0x48sIwfPc87xg4B04MCzQi8hIEwe4bl1DnFMCN2zsAAAAASUVORK5CYII=') !important;\\r\\n background-repeat: no-repeat;\\r\\n background-size: 23px;\\r\\n background-position: center;\\r\\n }\\r\\n \\r\\n /* Customize the label (the container) */\\r\\n \\r\\n .container {\\r\\n display: block;\\r\\n position: relative;\\r\\n padding-left: 30px;\\r\\n margin-bottom: 0px;\\r\\n cursor: pointer;\\r\\n font-size: 12px;\\r\\n -webkit-user-select: none;\\r\\n -moz-user-select: none;\\r\\n -ms-user-select: none;\\r\\n user-select: none;\\r\\n }\\r\\n \\r\\n /* Hide the browser's default checkbox */\\r\\n \\r\\n .container input {\\r\\n position: absolute;\\r\\n opacity: 0;\\r\\n cursor: pointer;\\r\\n height: 0;\\r\\n width: 0;\\r\\n }\\r\\n \\r\\n /* Create a custom checkbox */\\r\\n \\r\\n .checkmark {\\r\\n position: absolute;\\r\\n top: 0;\\r\\n left: 0;\\r\\n height: 17px;\\r\\n width: 17px;\\r\\n background-color: #eee;\\r\\n border-radius: 5px;\\r\\n }\\r\\n \\r\\n /* On mouse-over, add a grey background color\\r\\n .container:hover input ~ .checkmark {\\r\\n background-color: #eeeeee !important;\\r\\n } */\\r\\n \\r\\n /* When the checkbox is checked, add a blue background */\\r\\n \\r\\n .container input:checked ~ .checkmark {\\r\\n background-color: #0039BF;\\r\\n }\\r\\n \\r\\n /* Create the checkmark/indicator (hidden when not checked) */\\r\\n \\r\\n .checkmark:after {\\r\\n content: \\\"\\\";\\r\\n position: absolute;\\r\\n display: none;\\r\\n }\\r\\n \\r\\n /* Show the checkmark when checked */\\r\\n \\r\\n input:checked ~ .checkmark:after {\\r\\n display: block;\\r\\n }\\r\\n \\r\\n /* Style the checkmark/indicator */\\r\\n \\r\\n .container .checkmark:after {\\r\\n left: 6px;\\r\\n top: 3px;\\r\\n width:6px;\\r\\n height: 9px;\\r\\n border: solid white;\\r\\n border-width: 0 2px 2px 0;\\r\\n -webkit-transform: rotate(45deg);\\r\\n transform: rotate(45deg);\\r\\n font-family: 'Sarabun', sans-serif;\\r\\n }\\r\\n \\r\\n /* ::ng-deep h4, ::ng-deep [data-label=\\\"Citation\\\"] {\\r\\n color: #a4123f;\\r\\n font-weight: 600;\\r\\n font-style: italic;\\r\\n font-size: 13px;\\r\\n margin-top: 0;\\r\\n } */\\r\\n \\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vdXBkYXRlcy91cGRhdGVzLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxrQkFBa0I7SUFDbEIscUJBQXFCO0lBQ3JCLFdBQVc7SUFDWCxZQUFZO0VBQ2Q7O0lBRUU7TUFDRSxVQUFVO01BQ1YsUUFBUTtNQUNSLFNBQVM7SUFDWDs7SUFFRjtJQUNFLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsTUFBTTtJQUNOLE9BQU87SUFDUCxRQUFRO0lBQ1IsU0FBUztJQUNULHNCQUFzQjtJQUN0Qix1QkFBdUI7SUFDdkIsZUFBZTtFQUNqQjs7SUFFRTtNQUNFLGtCQUFrQjtNQUNsQixXQUFXO01BQ1gsWUFBWTtNQUNaLFdBQVc7TUFDWCxTQUFTO01BQ1QsV0FBVztNQUNYLHVCQUF1QjtNQUN2Qix1QkFBdUI7TUFDdkIsZUFBZTtJQUNqQjs7SUFFRjtJQUNFLHlCQUF5QjtFQUMzQjs7SUFFQTtJQUNFLDJCQUEyQjtFQUM3Qjs7SUFFQTtJQUNFLG1DQUFtQztJQUVuQywyQkFBMkI7RUFDN0I7O0lBRUEsb0JBQW9COztJQUNwQjtJQUNFLG1CQUFtQjtFQUNyQjs7SUFFRTtNQUNFLGtCQUFrQjtJQUNwQjs7SUFFRjtJQUNFLGNBQWM7SUFDZCxtQkFBbUI7SUFDbkIsbUJBQW1CO0VBQ3JCOztJQUVBO0lBQ0UsaUJBQWlCO0VBQ25COztJQUVBO0lBQ0UseUJBQXlCO0VBQzNCOztJQUVBO0lBQ0UseUJBQXlCO0lBQ3pCLFdBQVc7RUFDYjs7SUFFQTtJQUNFLGNBQWM7SUFDZCwwbEJBQTBsQjtJQUMxbEIsNEJBQTRCO0lBQzVCLHFCQUFxQjtJQUNyQiwyQkFBMkI7RUFDN0I7O0lBRUEsd0NBQXdDOztJQUN4QztJQUNFLGNBQWM7SUFDZCxrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsZUFBZTtJQUNmLHlCQUF5QjtJQUN6QixzQkFBc0I7SUFDdEIscUJBQXFCO0lBQ3JCLGlCQUFpQjtFQUNuQjs7SUFDQSx3Q0FBd0M7O0lBQ3hDO0lBQ0Usa0JBQWtCO0lBQ2xCLFVBQVU7SUFDVixlQUFlO0lBQ2YsU0FBUztJQUNULFFBQVE7RUFDVjs7SUFHQSw2QkFBNkI7O0lBQzdCO0lBQ0Usa0JBQWtCO0lBQ2xCLE1BQU07SUFDTixPQUFPO0lBQ1AsWUFBWTtJQUNaLFdBQVc7SUFDWCxzQkFBc0I7SUFDdEIsa0JBQWtCO0VBQ3BCOztJQUVBOzs7S0FHRzs7SUFFSCx3REFBd0Q7O0lBQ3hEO0lBQ0UseUJBQXlCO0VBQzNCOztJQUVBLDZEQUE2RDs7SUFDN0Q7SUFDRSxXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLGFBQWE7RUFDZjs7SUFFQSxvQ0FBb0M7O0lBQ3BDO0lBQ0UsY0FBYztFQUNoQjs7SUFFQSxrQ0FBa0M7O0lBQ2xDO0lBQ0UsU0FBUztNQUNQLFFBQVE7TUFDUixTQUFTO01BQ1QsV0FBVztJQUNiLG1CQUFtQjtJQUNuQix5QkFBeUI7SUFDekIsZ0NBQWdDO0lBRWhDLHdCQUF3QjtJQUN4QixrQ0FBa0M7RUFDcEM7O0lBR0E7Ozs7OztLQU1HIiwiZmlsZSI6InNyYy9hcHAvQWRtaW4vdXBkYXRlcy91cGRhdGVzLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuc3dpdGNoIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgaGVpZ2h0OiAzNHB4O1xyXG4gIH1cclxuICBcclxuICAgIC5zd2l0Y2ggaW5wdXQge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB3aWR0aDogMDtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIFxyXG4gIC5zbGlkZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gICAgdHJhbnNpdGlvbjogLjRzO1xyXG4gIH1cclxuICBcclxuICAgIC5zbGlkZXI6YmVmb3JlIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICAgIHdpZHRoOiAyNnB4O1xyXG4gICAgICBsZWZ0OiA0cHg7XHJcbiAgICAgIGJvdHRvbTogNHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgICAgIHRyYW5zaXRpb246IC40cztcclxuICAgIH1cclxuICBcclxuICBpbnB1dDpjaGVja2VkICsgLnNsaWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG4gIH1cclxuICBcclxuICBpbnB1dDpmb2N1cyArIC5zbGlkZXIge1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDFweCAjMDAzOUJGO1xyXG4gIH1cclxuICBcclxuICBpbnB1dDpjaGVja2VkICsgLnNsaWRlcjpiZWZvcmUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gIH1cclxuICBcclxuICAvKiBSb3VuZGVkIHNsaWRlcnMgKi9cclxuICAuc2xpZGVyLnJvdW5kIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDM0cHg7XHJcbiAgfVxyXG4gIFxyXG4gICAgLnNsaWRlci5yb3VuZDpiZWZvcmUge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICB9XHJcbiAgXHJcbiAgLmVoc2xhYmVsc2NvbGwgbGFiZWwge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICB9XHJcbiAgXHJcbiAgLmVoc2xhYmVsc2NvbGwgaW5wdXQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAzcHg7XHJcbiAgfVxyXG4gIFxyXG4gIC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbiAgfVxyXG4gIFxyXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgfVxyXG5cclxuICBidXR0b24uY2FsZW5kYXIsIGJ1dHRvbi5jYWxlbmRhcjphY3RpdmUge1xyXG4gICAgd2lkdGg6IDIuNzVyZW07XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0lBQUFBY0NBWUFBQUFFTjIwZkFBQUFCSE5DU1ZRSUNBZ0lmQWhraUFBQUFBbHdTRmx6QUFBT3hBQUFEc1FCbFNzT0d3QUFBQmwwUlZoMFUyOW1kSGRoY21VQWQzZDNMbWx1YTNOallYQmxMbTl5WjV2dVBCb0FBQUVVU1VSQlZFaUo3WlF4VG9WQUVJWS9ZQ0hHeE42WEdPSXBucGFFc0JTZVFDOUFyWmJtOVRaNkFEeUJOekFoUUdHbDhSaXY0QkxBV0FnbWtwQllrSDFiOEZXVDJXSy96SjhaSjRxaUk2WFVJM0FObkdLV0JuaHQyL1pCRFJLM2hnVkdOc0NkNy91aStKa0VJckt0cXVyTHBFV2FwaGQ5MzMrSXlJM0xFSWRwQ1lDaUtENkhjdU9hL253T2EwU2NKRW5rMEJKZzBVVFVXSlJsNlJ4Q1lFekVtb21zSWxQVTNJUFcrZ3JJQWJxdXkrcTZmbHV5LzI4UklCZVJNd0RYZFhNZ1hMai9CMnVpbVJYcHVpNEQ5c0JlUkxLbCsxTitMK3Q2UndiV3JabGlUVFRyMW94WXR6VldpVFFBY1J4dlRYK2VKTW5sVURhTzF2cFpSTzVOUzB4NDhzSXdmUGM4N3hnNEIwNE1DelFpOGhJRXdlNGJsMURuRk1DTjJ6c0FBQUFBU1VWT1JLNUNZSUk9JykgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIzcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgfVxyXG4gIFxyXG4gIC8qIEN1c3RvbWl6ZSB0aGUgbGFiZWwgKHRoZSBjb250YWluZXIpICovXHJcbiAgLmNvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgfVxyXG4gIC8qIEhpZGUgdGhlIGJyb3dzZXIncyBkZWZhdWx0IGNoZWNrYm94ICovXHJcbiAgLmNvbnRhaW5lciBpbnB1dCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgfVxyXG4gIFxyXG4gIFxyXG4gIC8qIENyZWF0ZSBhIGN1c3RvbSBjaGVja2JveCAqL1xyXG4gIC5jaGVja21hcmsge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGhlaWdodDogMTdweDtcclxuICAgIHdpZHRoOiAxN3B4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICB9XHJcbiAgXHJcbiAgLyogT24gbW91c2Utb3ZlciwgYWRkIGEgZ3JleSBiYWNrZ3JvdW5kIGNvbG9yXHJcbiAgLmNvbnRhaW5lcjpob3ZlciBpbnB1dCB+IC5jaGVja21hcmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZSAhaW1wb3J0YW50O1xyXG4gIH0gKi9cclxuICBcclxuICAvKiBXaGVuIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLCBhZGQgYSBibHVlIGJhY2tncm91bmQgKi9cclxuICAuY29udGFpbmVyIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbiAgfVxyXG4gIFxyXG4gIC8qIENyZWF0ZSB0aGUgY2hlY2ttYXJrL2luZGljYXRvciAoaGlkZGVuIHdoZW4gbm90IGNoZWNrZWQpICovXHJcbiAgLmNoZWNrbWFyazphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgXHJcbiAgLyogU2hvdyB0aGUgY2hlY2ttYXJrIHdoZW4gY2hlY2tlZCAqL1xyXG4gIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrOmFmdGVyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICBcclxuICAvKiBTdHlsZSB0aGUgY2hlY2ttYXJrL2luZGljYXRvciAqL1xyXG4gIC5jb250YWluZXIgLmNoZWNrbWFyazphZnRlciB7XHJcbiAgICBsZWZ0OiA2cHg7XHJcbiAgICAgIHRvcDogM3B4O1xyXG4gICAgICB3aWR0aDo2cHg7XHJcbiAgICAgIGhlaWdodDogOXB4O1xyXG4gICAgYm9yZGVyOiBzb2xpZCB3aGl0ZTtcclxuICAgIGJvcmRlci13aWR0aDogMCAycHggMnB4IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICBmb250LWZhbWlseTogJ1NhcmFidW4nLCBzYW5zLXNlcmlmO1xyXG4gIH1cclxuICBcclxuICBcclxuICAvKiA6Om5nLWRlZXAgaDQsIDo6bmctZGVlcCBbZGF0YS1sYWJlbD1cIkNpdGF0aW9uXCJdIHtcclxuICAgIGNvbG9yOiAjYTQxMjNmO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfSAqL1xyXG4gICJdfQ== */\"","import { Component, OnInit, ViewChild, ViewChildren, ElementRef } from '@angular/core';\r\nimport { updatesModel } from '../../../Models/updatesModel';\r\nimport { updatesService } from '../../../Services/updatesService';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToolEnum, AdminUserType } from '../../../Models/Common';\r\n\r\n@Component({\r\n selector: 'app-updates',\r\n templateUrl: './updates.component.html',\r\n styleUrls: ['./updates.component.css']\r\n})\r\nexport class UpdatesComponent implements OnInit {\r\n userID: number = 0;\r\n totalPageSize: number = 0;\r\n pageSize: number = 0;\r\n pageIndex: number = 0;\r\n orderBy: string = 'null';\r\n keywordFilter: string = '';\r\n whereCondition: string = 'null';\r\n systemUserCondition: string = 'null';\r\n\r\n isActionRequired: boolean = false;\r\n isAscending: boolean;\r\n statusCode: number = 0;\r\n appModel: any;\r\n\r\n upDowUpdateCategoryNameCSS: string = '';\r\n upDowStateCSS: string = '';\r\n upDowUpdateTypeCSS: string = '';\r\n upDowCreatedByCSS: string = '';\r\n upDowCreatedDateCSS: string = '';\r\n upDowModifiedByCSS: string = '';\r\n upDowModifiedDateCSS: string = '';\r\n upDowCompanyNameCSS: string = '';\r\n upDowActionChargesCSS: string = '';\r\n upDowIsActionCSS: string = '';\r\n\r\n isloading: boolean = false;\r\n tokenKey: string = '';\r\n updatesModel: updatesModel[] = [];\r\n isRecords: boolean = false;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n totalRecordsCount: number = -1;\r\n deleteupdateId: number = 0;\r\n SelectedTool: string;\r\n productId: number = 1;\r\n\r\n\r\n //clientCompanay: any;\r\n\r\n @ViewChild('deletecloseBtn', { static: false }) deletecloseBtn: ElementRef;\r\n constructor(private updatesService: updatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth\r\n , private router: Router) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('AdminUserId');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n this.titleService.setTitle('Updates');\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() {\r\n this.movetotop();\r\n this.pageSize = this.appModel.PageSize;\r\n this.totalPageSize = 1;\r\n this.pageIndex = 1;\r\n this.keywordFilter = 'null';\r\n this.whereCondition = 'null';\r\n this.orderBy = 'ISNULL(ModifiedDate,CreatedDate) DESC'; \r\n if (AdminUserType.systemadmin == parseInt(sessionStorage.getItem('adminTypeId')))\r\n this.systemUserCondition = 'null'\r\n else\r\n this.systemUserCondition = ' (ISNULL(CompanyId,0) = 0 Or CompanyId IN (Select CompanyId From [SystemUserCompany] Where [SystemUserCompany].UserId = ' + this.userID + '))';\r\n\r\n this.GetUpdates();\r\n }\r\n GetUpdates(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.updatesModel = [];\r\n this.updatesService.GetUpdatesFilterByPage(this.tokenKey, this.pageIndex.toString(), this.pageSize.toString(), this.whereCondition, this.orderBy, this.keywordFilter, this.productId, this.isActionRequired, this.systemUserCondition).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.updatesModel = data[\"updates\"];\r\n if (this.updatesModel.length > 0) {\r\n this.isRecords = true;\r\n this.totalPageSize = parseInt(this.updatesModel[0].totalRecordCount);\r\n this.totalRecordsCount = this.updatesModel.length;\r\n }\r\n else {\r\n this.totalRecordsCount = 0;\r\n this.isRecords = false;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n editupdate(updateId) {\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/updates/manage/' + updateId]);\r\n }\r\n addnewupdate() {\r\n this.router.navigate(['/admin/' + this.SelectedTool + '/updates/manage']);\r\n }\r\n setDeleteupdateId(updateId: any) {\r\n this.deleteupdateId = updateId;\r\n }\r\n\r\n DeleteUpdate() {\r\n this.blockDocument();\r\n this.updatesService.deleteupdates(this.tokenKey, this.deleteupdateId)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.showMessage('Deleted successfully', 'Deleted', 'success');\r\n this.deletecloseBtn.nativeElement.click();\r\n this.GetUpdates();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n ActiveInactiveUpdates(updateId: any, isactive: any) {\r\n this.blockDocument();\r\n this.updatesService.activeinactiveupdates(this.tokenKey, updateId, isactive)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (isactive) {\r\n this.showMessage('Activated successfully', 'Active', 'success');\r\n }\r\n else {\r\n this.showMessage('Inactivated successfully', 'Inactive', 'success');\r\n }\r\n this.GetUpdates();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n sort(sortBy: string) {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowActionChargesCSS = '';\r\n this.upDowIsActionCSS = '';\r\n\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"UpdateCategoryName\") {\r\n this.upDowUpdateCategoryNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"StateShortName\") {\r\n this.upDowStateCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"UpdateType\") {\r\n this.upDowUpdateTypeCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"CreatedBy\") {\r\n this.upDowCreatedByCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"ModifiedBy\") {\r\n this.upDowModifiedByCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"CompanyName\") {\r\n this.upDowCompanyNameCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"ActionCharges\") {\r\n this.upDowActionChargesCSS = 'fa fa-arrow-down';\r\n }\r\n else if (sortBy === \"IsAction\") {\r\n this.upDowIsActionCSS = 'fa fa-arrow-down';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.orderBy = sortBy;\r\n\r\n if (sortBy === \"UpdateCategoryName\") {\r\n this.upDowUpdateCategoryNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"StateShortName\") {\r\n this.upDowStateCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"UpdateType\") {\r\n this.upDowUpdateTypeCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"CreatedBy\") {\r\n this.upDowCreatedByCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"ModifiedBy\") {\r\n this.upDowModifiedByCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"CompanyName\") {\r\n this.upDowCompanyNameCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"ActionCharges\") {\r\n this.upDowActionChargesCSS = 'fa fa-arrow-up';\r\n }\r\n else if (sortBy === \"IsAction\") {\r\n this.upDowIsActionCSS = 'fa fa-arrow-up';\r\n }\r\n }\r\n this.GetUpdates();\r\n }\r\n\r\n IsActionRequired($event) {\r\n this.isActionRequired = $event.target.checked;\r\n this.GetUpdates();\r\n }\r\n\r\n pageChanged($event) {\r\n this.pageIndex = parseInt($event.page);\r\n this.GetUpdates();\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n keywordFilters($event) {\r\n this.pageIndex = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.keywordFilter = $event.target.value;\r\n else\r\n this.keywordFilter = 'null';\r\n\r\n this.GetUpdates();\r\n }\r\n\r\n // GetUpdateModelCompanyList(updateId: any) {\r\n // this.clientCompanay = [];\r\n // this.updatesService.GetUpdateModelCompanyList(this.tokenKey, updateId).subscribe(\r\n // data => {\r\n // if (data['status'] == 'Success')\r\n // this.clientCompanay = data['clientCompanay']\r\n // },\r\n // error => {\r\n\r\n // }\r\n // );\r\n // }\r\n}\r\n","export default \".switch {\\r\\n position: relative;\\r\\n display: inline-block;\\r\\n width: 60px;\\r\\n height: 34px;\\r\\n}\\r\\n\\r\\n .switch input {\\r\\n opacity: 0;\\r\\n width: 0;\\r\\n height: 0;\\r\\n }\\r\\n\\r\\n .slider {\\r\\n position: absolute;\\r\\n cursor: pointer;\\r\\n top: 0;\\r\\n left: 0;\\r\\n right: 0;\\r\\n bottom: 0;\\r\\n background-color: #ccc;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n}\\r\\n\\r\\n .slider:before {\\r\\n position: absolute;\\r\\n content: \\\"\\\";\\r\\n height: 26px;\\r\\n width: 26px;\\r\\n left: 4px;\\r\\n bottom: 4px;\\r\\n background-color: white;\\r\\n -webkit-transition: .4s;\\r\\n transition: .4s;\\r\\n }\\r\\n\\r\\n input:checked + .slider {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n input:focus + .slider {\\r\\n box-shadow: 0 0 1px #0039BF;\\r\\n}\\r\\n\\r\\n input:checked + .slider:before {\\r\\n -webkit-transform: translateX(26px);\\r\\n transform: translateX(26px);\\r\\n}\\r\\n\\r\\n /* Rounded sliders */\\r\\n\\r\\n .slider.round {\\r\\n border-radius: 34px;\\r\\n}\\r\\n\\r\\n .slider.round:before {\\r\\n border-radius: 50%;\\r\\n }\\r\\n\\r\\n .ehslabelscoll label {\\r\\n display: block;\\r\\n padding-bottom: 5px;\\r\\n font-weight: normal;\\r\\n}\\r\\n\\r\\n .ehslabelscoll input {\\r\\n margin-right: 3px;\\r\\n}\\r\\n\\r\\n .custom-checkbox .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #0039BF;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vdXNlcnMvbWFuYWdldXNlci5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsWUFBWTtBQUNkOztFQUVFO0lBQ0UsVUFBVTtJQUNWLFFBQVE7SUFDUixTQUFTO0VBQ1g7O0VBRUY7RUFDRSxrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLE1BQU07RUFDTixPQUFPO0VBQ1AsUUFBUTtFQUNSLFNBQVM7RUFDVCxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLGVBQWU7QUFDakI7O0VBRUU7SUFDRSxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFlBQVk7SUFDWixXQUFXO0lBQ1gsU0FBUztJQUNULFdBQVc7SUFDWCx1QkFBdUI7SUFDdkIsdUJBQXVCO0lBQ3ZCLGVBQWU7RUFDakI7O0VBRUY7RUFDRSx5QkFBeUI7QUFDM0I7O0VBRUE7RUFDRSwyQkFBMkI7QUFDN0I7O0VBRUE7RUFDRSxtQ0FBbUM7RUFFbkMsMkJBQTJCO0FBQzdCOztFQUVBLG9CQUFvQjs7RUFDcEI7RUFDRSxtQkFBbUI7QUFDckI7O0VBRUU7SUFDRSxrQkFBa0I7RUFDcEI7O0VBRUY7RUFDRSxjQUFjO0VBQ2QsbUJBQW1CO0VBQ25CLG1CQUFtQjtBQUNyQjs7RUFFQTtFQUNFLGlCQUFpQjtBQUNuQjs7RUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7RUFFQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0FBQ2IiLCJmaWxlIjoic3JjL2FwcC9BZG1pbi91c2Vycy9tYW5hZ2V1c2VyLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuc3dpdGNoIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiA2MHB4O1xyXG4gIGhlaWdodDogMzRweDtcclxufVxyXG5cclxuICAuc3dpdGNoIGlucHV0IHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICB9XHJcblxyXG4uc2xpZGVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gIHRyYW5zaXRpb246IC40cztcclxufVxyXG5cclxuICAuc2xpZGVyOmJlZm9yZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgaGVpZ2h0OiAyNnB4O1xyXG4gICAgd2lkdGg6IDI2cHg7XHJcbiAgICBsZWZ0OiA0cHg7XHJcbiAgICBib3R0b206IDRweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XHJcbiAgICB0cmFuc2l0aW9uOiAuNHM7XHJcbiAgfVxyXG5cclxuaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbn1cclxuXHJcbmlucHV0OmZvY3VzICsgLnNsaWRlciB7XHJcbiAgYm94LXNoYWRvdzogMCAwIDFweCAjMDAzOUJGO1xyXG59XHJcblxyXG5pbnB1dDpjaGVja2VkICsgLnNsaWRlcjpiZWZvcmUge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xyXG59XHJcblxyXG4vKiBSb3VuZGVkIHNsaWRlcnMgKi9cclxuLnNsaWRlci5yb3VuZCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMzRweDtcclxufVxyXG5cclxuICAuc2xpZGVyLnJvdW5kOmJlZm9yZSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgfVxyXG5cclxuLmVoc2xhYmVsc2NvbGwgbGFiZWwge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuLmVoc2xhYmVsc2NvbGwgaW5wdXQge1xyXG4gIG1hcmdpbi1yaWdodDogM3B4O1xyXG59XHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRjtcclxufVxyXG5cclxuLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcbiJdfQ== */\"","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, FormControl } from '@angular/forms';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { stateMasterModel } from '../../../Models/stateMasterModel';\r\nimport { userModel } from '../../../Models/usersModel';\r\nimport { UsersService } from '../../../Services/users.service';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ProductsService } from '../../../Services/products.service';\r\nimport { ToolEnum } from 'src/Models/Common';\r\nimport { TabsetComponent } from 'ngx-bootstrap';\r\n\r\n\r\n@Component({\r\n selector: 'app-manageuser',\r\n templateUrl: './manageuser.component.html',\r\n styleUrls: ['./manageuser.component.css']\r\n})\r\nexport class ManageuserComponent implements OnInit {\r\n @ViewChild('statesTabs', { static: false }) statesTabs: TabsetComponent;\r\n userForm: FormGroup;\r\n loginuserID: number = 0;\r\n\r\n allstate: boolean = false;\r\n //clearstate: boolean = false;\r\n tokenKey: string = '';\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean;\r\n statusCode: number = 0;\r\n _userID: number = 0;\r\n userModel: userModel = {\r\n userId: '',\r\n userName: '',\r\n companyName: '',\r\n firstName: '',\r\n lastName: '',\r\n email: '',\r\n phone: '',\r\n isActive: '',\r\n createdDate: null,\r\n createdBy: null,\r\n modifiedDate: null,\r\n modifiedBy: null,\r\n isICalSubscription: ''\r\n };\r\n // Product List---------------\r\n dropdownListProduct = [];\r\n selectedItemsProduct = [];\r\n dropdownSettingsProduct = {};\r\n productFilter: string = '';\r\n listOfProductID = [];\r\n // Product List---------------\r\n SelectedTool: string;\r\n\r\n // Company List\r\n company: any[];\r\n filteredCompanySingle: any[];\r\n\r\n selectedAllWireless: boolean;\r\n selectedAllVoIP: boolean;\r\n selectedAlliPR: boolean;\r\n selectedAllAction: boolean;\r\n\r\n selectedWirelessCount = 0;\r\n selectedVoIPCount = 0;\r\n selectedIPRCount = 0;\r\n selectedActionCount = 0;\r\n\r\n selectedProducts = [];\r\n isloadingstates: boolean = false;\r\n isShowICalCheckBox: boolean = false;\r\n\r\n constructor(private _fb: FormBuilder, private checkAuth: CheckAuth, private UserService: UsersService\r\n , private activedRoute: ActivatedRoute, private toastr: ToastrService\r\n , private router: Router, private titleService: Title, private productsService: ProductsService) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.loginuserID = +sessionStorage.getItem('AdminUserId');\r\n this.userForm = this._fb.group({\r\n userid: 0,\r\n username: [''],\r\n companyName: [''],\r\n firstname: [''],\r\n lastname: [''],\r\n email: [''],\r\n phone: [''],\r\n userTypeId: 3,\r\n isactive: 1,\r\n createdBy: this.loginuserID,\r\n modifiedBy: this.loginuserID,\r\n wirelessStates: [],\r\n voIPStates: [],\r\n iprStates: [],\r\n actionStates: [],\r\n ListOfProducts: [''],\r\n isiCalSubscription: 0\r\n });\r\n\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.titleService.setTitle('Manage Client');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.movetotop();\r\n this.GetProductData();\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this._userID = params['id'];\r\n this.Getuser();\r\n }\r\n }\r\n else {\r\n this._userID = 0;\r\n this.Getstates();\r\n }\r\n });\r\n }\r\n\r\n selectAll(productType) {\r\n switch (productType) {\r\n case ToolEnum.wireless:\r\n for (let i = 0; i < this.userModel.wirelessStates.length; i++) {\r\n this.userModel.wirelessStates[i].isSelected = this.selectedAllWireless;\r\n }\r\n break;\r\n case ToolEnum.ipr:\r\n for (let i = 0; i < this.userModel.iprStates.length; i++) {\r\n this.userModel.iprStates[i].isSelected = this.selectedAlliPR;\r\n }\r\n break;\r\n case ToolEnum.voip:\r\n for (let i = 0; i < this.userModel.voIPStates.length; i++) {\r\n this.userModel.voIPStates[i].isSelected = this.selectedAllVoIP;\r\n }\r\n case ToolEnum.actionitem:\r\n for (let i = 0; i < this.userModel.actionStates.length; i++) {\r\n this.userModel.actionStates[i].isSelected = this.selectedAllAction;\r\n }\r\n break;\r\n }\r\n this.calculateCheckedCount();\r\n }\r\n\r\n checkIfAllSelected(productType) {\r\n switch (productType) {\r\n case ToolEnum.wireless:\r\n this.selectedAllWireless = this.userModel.wirelessStates.every(function (item: any) {\r\n return item.ischecked == true;\r\n });\r\n break;\r\n case ToolEnum.ipr:\r\n this.selectedAlliPR = this.userModel.iprStates.every(function (item: any) {\r\n return item.ischecked == true;\r\n });\r\n break;\r\n case ToolEnum.voip:\r\n this.selectedAllVoIP = this.userModel.voIPStates.every(function (item: any) {\r\n return item.ischecked == true;\r\n });\r\n case ToolEnum.actionitem:\r\n this.selectedAllAction = this.userModel.actionStates.every(function (item: any) {\r\n return item.ischecked == true;\r\n });\r\n break;\r\n }\r\n this.calculateCheckedCount();\r\n }\r\n\r\n calculateCheckedCount() {\r\n this.selectedWirelessCount = this.userModel.wirelessStates.filter((item) => item.isSelected).length;\r\n this.selectedIPRCount = this.userModel.iprStates.filter((item) => item.isSelected).length;\r\n this.selectedVoIPCount = this.userModel.voIPStates.filter((item) => item.isSelected).length;\r\n this.selectedActionCount = this.userModel.actionStates.filter((item) => item.isSelected).length;\r\n }\r\n\r\n Getuser(): void {\r\n this.isloadingstates = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.UserService.GetUserFindByUserID(this.tokenKey, this._userID).subscribe(\r\n data => {\r\n this.userModel = data['userMaster'];\r\n this.userForm.setValue({\r\n 'userid': this.userModel[0].userId,\r\n 'username': this.userModel[0].userName,\r\n 'companyName': this.userModel[0].companyName,\r\n 'firstname': this.userModel[0].firstName,\r\n 'lastname': this.userModel[0].lastName,\r\n 'email': this.userModel[0].email,\r\n 'phone': this.userModel[0].phone,\r\n 'userTypeId': 3,\r\n 'isactive': this.userModel[0].isActive,\r\n 'createdBy': this.loginuserID,\r\n 'modifiedBy': this.loginuserID,\r\n 'wirelessStates': this.userModel[0].wirelessStates,\r\n 'voIPStates': this.userModel[0].voIPStates,\r\n 'iprStates': this.userModel[0].iprStates,\r\n 'actionStates': this.userModel[0].actionStates,\r\n 'ListOfProducts': '',\r\n 'isiCalSubscription': this.userModel[0].isICalSubscription\r\n });\r\n\r\n this.userModel.wirelessStates = data['userMaster'][0].wirelessStates;\r\n this.userModel.voIPStates = data['userMaster'][0].voIPStates;\r\n this.userModel.iprStates = data['userMaster'][0].iprStates;\r\n this.userModel.actionStates = data['userMaster'][0].actionStates;\r\n this.selectedItemsProduct = [];\r\n for (let iCounter = 0; iCounter < data['userMaster'][0].listOfProducts.length; iCounter++) {\r\n this.selectedItemsProduct.push({ 'id': data['userMaster'][0].listOfProducts[iCounter].productId, 'itemName': data['userMaster'][0].listOfProducts[iCounter].displayName });\r\n this.listOfProductID.push(data['userMaster'][0].listOfProducts[iCounter].productId);\r\n }\r\n this.addProductInList();\r\n\r\n this.unblockDocument();\r\n const selectedWirelessStates = this.userModel.wirelessStates.filter((item) => item.isSelected);\r\n if (selectedWirelessStates.length == this.userModel.wirelessStates.length) {\r\n this.selectedAllWireless = true;\r\n }\r\n\r\n const selectediprStates = this.userModel.iprStates.filter((item) => item.isSelected);\r\n if (selectediprStates.length == this.userModel.voIPStates.length) {\r\n this.selectedAlliPR = true;\r\n }\r\n\r\n const selectedVoIPStates = this.userModel.voIPStates.filter((item) => item.isSelected);\r\n if (selectedVoIPStates.length == this.userModel.voIPStates.length) {\r\n this.selectedAllVoIP = true;\r\n }\r\n\r\n const selectedActionStates = this.userModel.actionStates.filter((item) => item.isSelected);\r\n if (selectedActionStates.length == this.userModel.actionStates.length) {\r\n this.selectedAllAction = true;\r\n }\r\n this.calculateCheckedCount();\r\n this.isloadingstates = false;\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.unblockDocument();\r\n this.isloadingstates = false;\r\n }\r\n );\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n addProductInList() {\r\n \r\n this.selectedProducts = this.selectedItemsProduct.map(x => x.id);\r\n let isActionIdSelected = this.selectedProducts.filter((item) => item === ToolEnum.actionitem);\r\n if (isActionIdSelected.length > 0) {\r\n this.isShowICalCheckBox = true;\r\n }\r\n else {\r\n this.isShowICalCheckBox = false;\r\n }\r\n }\r\n\r\n onSelectedProduct($event) {\r\n if (this.selectedProducts != null) {\r\n if (this.selectedProducts.length > 0) {\r\n this.selectedProducts = this.removeElemetninArray(this.selectedProducts, $event.id)\r\n this.selectedProducts.push($event.id);\r\n }\r\n else {\r\n this.selectedProducts.push($event.id);\r\n }\r\n }\r\n this.addProductInList(); \r\n }\r\n\r\n onSelectAllProduct($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.selectedProducts != null) {\r\n if (this.selectedProducts.length > 0) {\r\n this.selectedProducts = this.removeElemetninArray(this.selectedProducts, $event[iCounter].id)\r\n this.selectedProducts.push($event[iCounter].id);\r\n }\r\n else {\r\n this.selectedProducts.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n this.addProductInList(); \r\n }\r\n\r\n onDeSelectAllProduct($event) {\r\n this.selectedProducts = [];\r\n //this.addProductInList(); \r\n }\r\n\r\n onDeSelectedProduct($event) {\r\n if (this.selectedProducts != null) {\r\n if (this.selectedProducts.length > 0) {\r\n this.selectedProducts = this.removeElemetninArray(this.selectedProducts, $event.id)\r\n }\r\n }\r\n this.addProductInList(); \r\n }\r\n\r\n\r\n productOnClose() {\r\n if (this.statesTabs.tabs.length > 0) { this.statesTabs.tabs[0].active = true; }\r\n }\r\n\r\n Getstates(): void {\r\n this.isloadingstates = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.UserService.GetStateFindByUserID(this.tokenKey, this._userID).subscribe(\r\n data => {\r\n this.userModel.wirelessStates = data.wirelessStates;\r\n this.userModel.iprStates = data.iprStates;\r\n this.userModel.voIPStates = data.voIPStates;\r\n this.userModel.actionStates = data.actionStates;\r\n this.unblockDocument();\r\n this.isloadingstates = false;\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.unblockDocument();\r\n this.isloadingstates = false;\r\n }\r\n );\r\n }\r\n\r\n saveuser(userForm: any) {\r\n if ((userForm.value['username'] == null || userForm.value['username'] == undefined ||\r\n userForm.value['username'].trim() == '')) {\r\n this.showMessage('Please enter username.', 'Required', 'error');\r\n return;\r\n }\r\n\r\n if ((userForm.value['companyName'] == null || userForm.value['companyName'] == undefined ||\r\n userForm.value['companyName'].trim() == '')) {\r\n this.showMessage('Please enter company name.', 'Required', 'error');\r\n return;\r\n }\r\n if (this.selectedItemsProduct.find(x => x.id === ToolEnum.wireless) && this.selectedWirelessCount == 0) {\r\n this.showMessage('Please select atleast one state of Wireless tool.', 'Required', 'error');\r\n return;\r\n }\r\n if (this.selectedItemsProduct.find(x => x.id === ToolEnum.ipr) && this.selectedIPRCount == 0) {\r\n this.showMessage('Please select atleast one state of IPR tool.', 'Required', 'error');\r\n return;\r\n }\r\n if (this.selectedItemsProduct.find(x => x.id === ToolEnum.voip) && this.selectedVoIPCount == 0) {\r\n this.showMessage('Please select atleast one state of VoIP tool.', 'Required', 'error');\r\n return;\r\n }\r\n if (this.selectedItemsProduct.find(x => x.id === ToolEnum.actionitem) && this.selectedActionCount == 0) {\r\n this.showMessage('Please select atleast one state of Trac-It tool.', 'Required', 'error');\r\n return;\r\n }\r\n if (userForm.value['email'].trim() != '') {\r\n let result = this.isValidMailFormat(userForm.controls.email);\r\n if (result != null) {\r\n this.showMessage('Please provide a valid email', 'Invalid Email', 'error');\r\n return;\r\n }\r\n }\r\n\r\n if (this.selectedProducts.length == 0) {\r\n this.showMessage('Please select atlist one product(s)', 'Invalid Email', 'error');\r\n return;\r\n }\r\n\r\n var SelectedProducts = [];\r\n if (this.selectedItemsProduct.length > 0) {\r\n for (let iCounter = 0; iCounter < this.selectedItemsProduct.length; iCounter++) {\r\n SelectedProducts.push({ 'ProductId': this.selectedItemsProduct[iCounter].id });\r\n }\r\n\r\n userForm.value['ListOfProducts'] = SelectedProducts;\r\n }\r\n else {\r\n this.showMessage('Please select tool(s)', 'Tools', 'error');\r\n return;\r\n }\r\n\r\n this.blockDocument();\r\n userForm.value['userid'] = this._userID;\r\n\r\n for (let iCounter = 0; iCounter < this.userModel.wirelessStates.length; iCounter++) {\r\n this.userModel.wirelessStates[iCounter].createdBy = this.loginuserID.toString();\r\n this.userModel.wirelessStates[iCounter].modifiedBy = this.loginuserID.toString();\r\n this.userModel.wirelessStates[iCounter].productId = ToolEnum.wireless;\r\n }\r\n for (let iCounter = 0; iCounter < this.userModel.iprStates.length; iCounter++) {\r\n this.userModel.iprStates[iCounter].createdBy = this.loginuserID.toString();\r\n this.userModel.iprStates[iCounter].modifiedBy = this.loginuserID.toString();\r\n this.userModel.iprStates[iCounter].productId = ToolEnum.ipr;\r\n }\r\n for (let iCounter = 0; iCounter < this.userModel.voIPStates.length; iCounter++) {\r\n this.userModel.voIPStates[iCounter].createdBy = this.loginuserID.toString();\r\n this.userModel.voIPStates[iCounter].modifiedBy = this.loginuserID.toString();\r\n this.userModel.voIPStates[iCounter].productId = ToolEnum.voip;\r\n }\r\n for (let iCounter = 0; iCounter < this.userModel.actionStates.length; iCounter++) {\r\n this.userModel.actionStates[iCounter].createdBy = this.loginuserID.toString();\r\n this.userModel.actionStates[iCounter].modifiedBy = this.loginuserID.toString();\r\n this.userModel.actionStates[iCounter].productId = ToolEnum.actionitem;\r\n }\r\n\r\n userForm.value['wirelessStates'] = this.userModel.wirelessStates;\r\n userForm.value['voIPStates'] = this.userModel.voIPStates;\r\n userForm.value['iprStates'] = this.userModel.iprStates;\r\n userForm.value['actionStates'] = this.userModel.actionStates;\r\n userForm.value['userTypeId'] = 3;\r\n userForm.value['createdBy'] = this.loginuserID;\r\n userForm.value['modifiedBy'] = this.loginuserID;\r\n let msg = '';\r\n if (this._userID == 0) {\r\n msg = 'added';\r\n }\r\n else {\r\n msg = 'updated';\r\n }\r\n this.UserService.addupdateuser(this.userForm.value, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n this.showMessage('Client ' + msg + ' successfully', 'Client ' + msg, 'success');\r\n this.unblockDocument();\r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n this.router.navigate(['/admin/' + toolName + '/clients']);\r\n }\r\n else {\r\n if (data.message == 'duplicate') {\r\n this.showMessage('Duplicate client not allowed.', 'Duplicate', 'error');\r\n this.unblockDocument();\r\n }\r\n else if (data.message == 'duplicate email') {\r\n this.showMessage('Duplicate email id not allowed.', 'Duplicate', 'error');\r\n this.unblockDocument();\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n });\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n isValidMailFormat(control: FormControl) {\r\n let EMAIL_REGEXP = /^[a-z0-9!#$%&'*+\\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;\r\n\r\n if (control.value != '' && (control.value.length <= 5 || !EMAIL_REGEXP.test(control.value))) {\r\n return { 'Please provide a valid email': true };\r\n }\r\n\r\n return null;\r\n }\r\n canceluser() {\r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n this.router.navigate(['/admin/' + toolName + '/clients']);\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n\r\n\r\n // Product List---------------\r\n GetProductData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.productsService.GetProductList(this.tokenKey, this.loginuserID).subscribe(\r\n data => {\r\n if (data['product'] != null) {\r\n // Set All Item\r\n for (let iCounter = 0; iCounter < data['product'].length; iCounter++) {\r\n this.dropdownListProduct.push(\r\n { 'id': data['product'][iCounter].productId, 'itemName': data['product'][iCounter].displayName }\r\n );\r\n }\r\n }\r\n else {\r\n this.showMessage(data['message'], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsProduct = {\r\n singleSelection: false,\r\n text: 'Select',\r\n enableSearchFilter: false,\r\n classes: 'borderLessTextBoxGreen',\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No product available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n // Product List---------------\r\n\r\n // Company List---------------\r\n\r\n filterCompanySingle(event) {\r\n let query = event.query;\r\n this.UserService.GetCompanyList(this.tokenKey).subscribe(data => {\r\n if (data['status'] !== 'Failure') {\r\n \r\n this.filteredCompanySingle = this.filterCompany(query, data['companyModel']);\r\n }\r\n });\r\n }\r\n\r\n filterCompany(query, companies: any[]): any[] {\r\n let filtered: any[] = [];\r\n for (let i = 0; i < companies.length; i++) {\r\n let companyname = companies[i];\r\n if (companyname.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(companyname);\r\n }\r\n }\r\n return filtered;\r\n }\r\n // Company List\r\n\r\n}\r\n","export default \".modal-body .tab-content {\\r\\n float: left;\\r\\n width: 100%;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQWRtaW4vdXNlcnMvdXNlcnMuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLFdBQVc7RUFDWCxXQUFXO0FBQ2IiLCJmaWxlIjoic3JjL2FwcC9BZG1pbi91c2Vycy91c2Vycy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm1vZGFsLWJvZHkgLnRhYi1jb250ZW50IHtcclxuICBmbG9hdDogbGVmdDtcclxuICB3aWR0aDogMTAwJTtcclxufSJdfQ== */\"","import { Component, OnInit, ViewChild, Inject } from '@angular/core';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { userModel } from '../../../Models/usersModel';\r\nimport { UsersService } from '../../../Services/users.service';\r\nimport { Router } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { StateMasterService } from 'src/Services/state-master.service';\r\nimport { stateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { TabsetComponent } from 'ngx-bootstrap';\r\nimport { ToolEnum, AdminUserType } from 'src/Models/Common';\r\nimport { RouterExtService } from 'src/Services/RouterExtService';\r\nimport { ProductsService } from 'src/Services/products.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ClientCompanyModel } from 'src/Models/ClientCompanyModel';\r\nimport { updatesService } from 'src/Services/updatesService';\r\n\r\n@Component({\r\n selector: 'app-users',\r\n templateUrl: './users.component.html',\r\n styleUrls: ['./users.component.css']\r\n})\r\nexport class UsersComponent implements OnInit {\r\n @ViewChild('statesTabs', { static: false }) statesTabs: TabsetComponent;\r\n\r\n tokenKey: string = '';\r\n listOfUser: userModel[];\r\n statusCode: any;\r\n PageNumber: number;\r\n PageSize: number;\r\n WhereCondition: string;\r\n OrderBy: string;\r\n totalRecordCount: number;\r\n\r\n isAscending: boolean;\r\n\r\n upDowUserNameCSS: string = '';\r\n upDowFirstNameCSS: string = '';\r\n upDowEmailCSS: string = '';\r\n upDowCompanyNameCSS: string = '';\r\n upDowPhoneCSS: string = '';\r\n upDowIsActiveCSS: string = '';\r\n upDowCreatedDateCSS: string = '';\r\n upDowStateNameCSS: string = '';\r\n upDowModifiedDateCSS: string = '';\r\n isloading: boolean = false;\r\n keywordFilter: string = '';\r\n SelectedTool: string;\r\n stateSubscription: any;\r\n\r\n isGeneralAlertSubscription: boolean = false;\r\n loginUserId: number = 0;\r\n\r\n isUserSystemAdmin: boolean = false;\r\n\r\n // Product List---------------\r\n dropdownListProduct = [];\r\n selectedItemsProduct = [];\r\n dropdownSettingsProduct = {};\r\n productFilter: string = '';\r\n listOfProductID: string[] = [];\r\n // Product List---------------\r\n listOfProduct?: string;\r\n\r\n clientCompanyList: ClientCompanyModel[];\r\n dropdownListclientCompany = [];\r\n selectedItemsclientCompany = [];\r\n dropdownSettingclientCompany = {};\r\n listOfCompany = [];\r\n\r\n productId: number = 1;\r\n systemUserCondition: string = '';\r\n constructor(@Inject(Window) private win: Window, private router: Router, private checkAuth: CheckAuth, private userService: UsersService\r\n , private titleService: Title, private stateServices: StateMasterService\r\n , private routerService: RouterExtService\r\n , private productsService: ProductsService\r\n , private toastr: ToastrService\r\n , private updatesService: updatesService) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.listOfUser = [];\r\n this.PageNumber = 1;\r\n this.PageSize = 10;\r\n this.WhereCondition = 'null';\r\n this.OrderBy = 'UserId DESC';\r\n this.totalRecordCount = -1;\r\n this.isAscending = true;\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.titleService.setTitle('Clients');\r\n this.loginUserId = +sessionStorage.getItem('AdminUserId');\r\n this.productId = ToolEnum[this.SelectedTool];\r\n if (AdminUserType.systemadmin == parseInt(sessionStorage.getItem('adminTypeId')))\r\n this.systemUserCondition = 'null'\r\n else\r\n this.systemUserCondition = ' (CompanyId IN (Select CompanyId From [SystemUserCompany] Where [SystemUserCompany].UserId = ' + this.loginUserId + '))';\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() {\r\n this.keywordFilter = 'null';\r\n if (AdminUserType.systemadmin == parseInt(sessionStorage.getItem('adminTypeId'))) {\r\n this.isUserSystemAdmin = true;\r\n this.WhereCondition = ' (UserTypeId = 3)';\r\n }\r\n else {\r\n this.WhereCondition = ' (UserTypeId = 3 And CompanyId IN (Select CompanyId From [SystemUserCompany] Where [SystemUserCompany].UserId = ' + this.loginUserId + '))';\r\n }\r\n this.listOfProduct = '';\r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n if (this.routerService.getPreviousUrl().includes('admin/' + toolName + '/client/manage')) {\r\n this.setSaveFilter();\r\n }\r\n else {\r\n this.clearSession();\r\n }\r\n this.GetListOfUser();\r\n this.setDropDownSetting();\r\n this.GetProductData();\r\n this.GetClientCompany();\r\n }\r\n\r\n GetListOfUser() {\r\n this.isloading = true;\r\n let selectedcompany = this.listOfCompany.join(',');\r\n this.userService.GetUsers(this.tokenKey, this.PageNumber, this.PageSize, this.WhereCondition, this.OrderBy, this.keywordFilter, this.loginUserId, this.listOfProduct, selectedcompany).subscribe(\r\n data => {\r\n this.isloading = false;\r\n this.listOfUser = data['usersModel'];\r\n if (this.listOfUser != null) {\r\n if (this.listOfUser.length > 0) {\r\n this.totalRecordCount = data['usersModel'][0].totalRecordCount;\r\n }\r\n else {\r\n this.totalRecordCount = 0;\r\n }\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n this.isloading = false;\r\n }\r\n );\r\n }\r\n\r\n GetProductData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.productsService.GetProductList(this.tokenKey, this.loginUserId).subscribe(\r\n data => {\r\n if (data['product'] != null) {\r\n // Set All Item \r\n for (let iCounter = 0; iCounter < data['product'].length; iCounter++) {\r\n this.dropdownListProduct.push(\r\n { 'id': data['product'][iCounter].productId, 'itemName': data['product'][iCounter].displayName }\r\n );\r\n }\r\n\r\n if (this.listOfProductID != null && this.listOfProductID != undefined) {\r\n for (let iCounter = 0; iCounter < this.listOfProductID.length; iCounter++) {\r\n if (this.listOfProductID[iCounter] != '') {\r\n let obj = data[\"product\"].filter(m => m.productId == this.listOfProductID[iCounter]);\r\n if (obj != null) {\r\n this.selectedItemsProduct.push({ \"id\": obj[0].productId, \"itemName\": obj[0].displayName });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data['message'], 'Error', 'error');\r\n }\r\n this.dropdownSettingsProduct = {\r\n singleSelection: false,\r\n text: 'Filter by Product(s)',\r\n enableSearchFilter: false,\r\n classes: 'borderLessTextBoxGreen',\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No product available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n sort(sortBy: any) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.OrderBy = sortBy + ' DESC';\r\n\r\n this.setDescCSS(sortBy);\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.OrderBy = sortBy;\r\n\r\n this.setAscCSS(sortBy);\r\n }\r\n this.GetListOfUser();\r\n }\r\n editUser(userId: any) {\r\n this.saveSession(); // To Store All filtered and other data to restore once back.\r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n this.router.navigate(['admin/' + toolName + '/client/manage/' + userId]);\r\n }\r\n\r\n pageChanged($event: any) {\r\n this.PageNumber = parseInt($event.page);\r\n this.GetListOfUser();\r\n }\r\n\r\n addUser() {\r\n this.saveSession(); // To Store All filtered and other data to restore once back.\r\n let toolName = this.SelectedTool == 'actionitem' ? 'trac-it' : this.SelectedTool;\r\n this.router.navigate(['admin/' + toolName + '/client/manage']);\r\n }\r\n\r\n getSubscriptionState(clientId: any) {\r\n this.stateSubscription = null;\r\n this.stateServices.GetStateMasterFindByClientId(this.tokenKey, clientId, 0).subscribe(\r\n data => {\r\n this.stateSubscription = {\r\n wirelessStates: data.wirelessStates,\r\n wirelessStatesCount: data.wirelessStates ? data.wirelessStates.length : 0,\r\n iprStates: data.iprStates,\r\n iprStatesCount: data.iprStates ? data.iprStates.length : 0,\r\n voIPStates: data.voIPStates,\r\n voIPStatesCount: data.voIPStates ? data.voIPStates.length : 0,\r\n actionStates: data.actionStates,\r\n actionStatesCount: data.actionStates ? data.actionStates.length : 0,\r\n productAccess: data.productAccess,\r\n };\r\n\r\n if (data.productAccess.length > 0) {\r\n let sub = data.productAccess.filter(m => m.productId !== ToolEnum.actionitem && m.productId !== ToolEnum.ipr && m.productId !== ToolEnum.voip && m.productId !== ToolEnum.wireless)\r\n if (sub.length > 0) {\r\n this.isGeneralAlertSubscription = true;\r\n }\r\n else {\r\n if (this.statesTabs != null && typeof (this.statesTabs) != 'undefined') {\r\n this.statesTabs.tabs[0].active = true;\r\n }\r\n this.isGeneralAlertSubscription = false;\r\n }\r\n }\r\n },\r\n error => { this.statusCode = error }\r\n );\r\n }\r\n\r\n keywordFilters($event) {\r\n this.PageNumber = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null) { this.keywordFilter = $event.target.value; }\r\n else { this.keywordFilter = 'null'; }\r\n\r\n this.GetListOfUser();\r\n }\r\n\r\n redirectToClientLogin(userId) {\r\n let URL = '/#/adminclientlogin/' + this.loginUserId + '/' + userId;\r\n //this.router.navigate([URL]);\r\n this.win.open(URL);\r\n }\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n onSelect($event) {\r\n this.PageNumber = 1;\r\n if (this.listOfProductID != null) {\r\n if (this.listOfProductID.length > 0) {\r\n this.listOfProductID = this.removeElemetninArray(this.listOfProductID, $event.id)\r\n this.listOfProductID.push($event.id);\r\n }\r\n else {\r\n this.listOfProductID.push($event.id);\r\n }\r\n }\r\n\r\n this.listOfProduct = this.listOfProductID.join(',');\r\n this.GetListOfUser();\r\n }\r\n\r\n onSelectAll($event) {\r\n this.PageNumber = 1;\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfProductID != null) {\r\n if (this.listOfProductID.length > 0) {\r\n this.listOfProductID = this.removeElemetninArray(this.listOfProductID, $event[iCounter].id)\r\n this.listOfProductID.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfProductID.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n this.listOfProduct = this.listOfProductID.join(',');\r\n this.GetListOfUser();\r\n }\r\n\r\n onDeSelectAll($event) {\r\n this.PageNumber = 1;\r\n this.listOfProductID = [];\r\n this.listOfProduct = '';\r\n this.GetListOfUser();\r\n }\r\n\r\n onDeSelect($event) {\r\n this.PageNumber = 1;\r\n if (this.listOfProductID != null) {\r\n if (this.listOfProductID.length > 0) {\r\n this.listOfProductID = this.removeElemetninArray(this.listOfProductID, $event.id)\r\n }\r\n }\r\n this.listOfProduct = this.listOfProductID.join(',');\r\n this.GetListOfUser();\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n saveSession() {\r\n sessionStorage.setItem('saveFilterIsAscending', this.isAscending ? 'true' : 'false');\r\n sessionStorage.setItem('saveFilterPageNo', this.PageNumber.toString());\r\n sessionStorage.setItem('saveFilterOrderBy', this.OrderBy);\r\n sessionStorage.setItem('saveFilterWhereCondition', this.WhereCondition);\r\n sessionStorage.setItem('saveFilterKeywordValue', this.keywordFilter);\r\n sessionStorage.setItem('saveFilterProductID', JSON.stringify(this.listOfProductID));\r\n sessionStorage.setItem('saveFilterCompanylist', JSON.stringify(this.listOfCompany));\r\n }\r\n\r\n clearSession() {\r\n sessionStorage.removeItem('saveFilterIsAscending');\r\n sessionStorage.removeItem('saveFilterPageNo');\r\n sessionStorage.removeItem('saveFilterOrderBy');\r\n sessionStorage.removeItem('saveFilterWhereCondition');\r\n sessionStorage.removeItem('saveFilterKeywordValue');\r\n sessionStorage.removeItem('saveFilterProductID');\r\n sessionStorage.removeItem('saveFilterCompanylist');\r\n }\r\n\r\n setSaveFilter() {\r\n this.systemUserCondition = this.systemUserCondition;\r\n if (sessionStorage.getItem('saveFilterProductID') != null && sessionStorage.getItem('saveFilterProductID') != '' && sessionStorage.getItem('saveFilterProductID') != 'undefined') {\r\n this.listOfProductID = JSON.parse(sessionStorage.getItem('saveFilterProductID'));\r\n this.listOfProduct = this.listOfProductID.join(',');\r\n }\r\n if (sessionStorage.getItem('saveFilterCompanylist') != null && sessionStorage.getItem('saveFilterCompanylist') != '' && sessionStorage.getItem('saveFilterCompanylist') != 'undefined') {\r\n this.listOfCompany = JSON.parse(sessionStorage.getItem('saveFilterCompanylist'));\r\n }\r\n if (sessionStorage.getItem('saveFilterPageNo') != null && sessionStorage.getItem('saveFilterPageNo') != '' && sessionStorage.getItem('saveFilterPageNo') != 'undefined') {\r\n this.PageNumber = +sessionStorage.getItem('saveFilterPageNo');\r\n }\r\n\r\n if (sessionStorage.getItem('saveFilterOrderBy') != null && sessionStorage.getItem('saveFilterOrderBy') != '' && sessionStorage.getItem('saveFilterOrderBy') != 'undefined') {\r\n this.OrderBy = sessionStorage.getItem('saveFilterOrderBy');\r\n }\r\n\r\n if (sessionStorage.getItem('saveFilterWhereCondition') != null && sessionStorage.getItem('saveFilterWhereCondition') != '' && sessionStorage.getItem('saveFilterWhereCondition') != 'undefined') {\r\n this.WhereCondition = sessionStorage.getItem('saveFilterWhereCondition');\r\n }\r\n\r\n if (sessionStorage.getItem('saveFilterKeywordValue') != null && sessionStorage.getItem('saveFilterKeywordValue') != '' && sessionStorage.getItem('saveFilterKeywordValue') != 'undefined') {\r\n this.keywordFilter = sessionStorage.getItem('saveFilterKeywordValue');\r\n }\r\n\r\n if (sessionStorage.getItem('saveFilterIsAscending') != null && sessionStorage.getItem('saveFilterIsAscending') != '' && sessionStorage.getItem('saveFilterIsAscending') != 'undefined') {\r\n this.isAscending = sessionStorage.getItem('saveFilterIsAscending') == 'false' ? false : true;\r\n if (this.isAscending) {\r\n this.setDescCSS(this.OrderBy.replace('DESC', '').trim());\r\n } else {\r\n this.setAscCSS(this.OrderBy.replace('DESC', '').trim());\r\n }\r\n }\r\n this.clearSession();\r\n }\r\n\r\n setDescCSS(sortBy) {\r\n if (sortBy === \"userName\") {\r\n this.upDowUserNameCSS = 'fa fa-arrow-down';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"firstName\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = 'fa fa-arrow-down';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"email\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = 'fa fa-arrow-down';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"companyName\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = 'fa fa-arrow-down';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"phone\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = 'fa fa-arrow-down';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"isActive\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = 'fa fa-arrow-down';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"createdDate\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-down';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"StateName\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = 'fa fa-arrow-down';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"modifiedDate\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-down';\r\n }\r\n }\r\n\r\n setAscCSS(sortBy) {\r\n if (sortBy === \"userName\") {\r\n this.upDowUserNameCSS = 'fa fa-arrow-up';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"firstName\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = 'fa fa-arrow-up';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"email\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = 'fa fa-arrow-up';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"companyName\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = 'fa fa-arrow-up';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"phone\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = 'fa fa-arrow-up';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"isActive\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = 'fa fa-arrow-up';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"createdDate\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = 'fa fa-arrow-up';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"StateName\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = 'fa fa-arrow-up';\r\n this.upDowModifiedDateCSS = '';\r\n }\r\n else if (sortBy === \"modifiedDate\") {\r\n this.upDowUserNameCSS = '';\r\n this.upDowFirstNameCSS = '';\r\n this.upDowEmailCSS = '';\r\n this.upDowCompanyNameCSS = '';\r\n this.upDowPhoneCSS = '';\r\n this.upDowIsActiveCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowModifiedDateCSS = 'fa fa-arrow-up';\r\n }\r\n }\r\n\r\n setDropDownSetting() {\r\n this.dropdownSettingsProduct = {\r\n singleSelection: false,\r\n text: 'Filter by Product(s)',\r\n enableSearchFilter: false,\r\n classes: 'borderLessTextBoxGreen',\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No product available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: false\r\n };\r\n this.dropdownSettingclientCompany = {\r\n singleSelection: false,\r\n text: \"Filter by Company(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No company available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: false\r\n };\r\n }\r\n GetClientCompany() {\r\n this.clientCompanyList = [];\r\n this.updatesService.GetClientCompany(this.tokenKey, 0, this.systemUserCondition).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.clientCompanyList = data['clientCompanay'];\r\n\r\n if (this.clientCompanyList != null) {\r\n if (this.clientCompanyList.length > 0) {\r\n for (let iCounter = 0; iCounter < this.clientCompanyList.length; iCounter++) {\r\n this.dropdownListclientCompany.push(\r\n { \"id\": this.clientCompanyList[iCounter].companyId, \"itemName\": this.clientCompanyList[iCounter].companyName }\r\n );\r\n }\r\n }\r\n }\r\n\r\n if (this.listOfCompany != null && this.listOfCompany != undefined) {\r\n for (let iCounter = 0; iCounter < this.listOfCompany.length; iCounter++) {\r\n if (this.listOfCompany[iCounter] != '') {\r\n let obj = data[\"clientCompanay\"].filter(m => m.companyId == this.listOfCompany[iCounter]);\r\n if (obj != null) {\r\n this.selectedItemsclientCompany.push({ \"id\": obj[0].companyId, \"itemName\": obj[0].companyName });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n onSelectedCompany($event) {\r\n this.PageNumber = 1;\r\n let companyId = $event.id;\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event.id)\r\n this.listOfCompany.push($event.id);\r\n }\r\n else {\r\n this.listOfCompany.push($event.id);\r\n }\r\n }\r\n this.GetListOfUser();\r\n }\r\n\r\n onDeSelectedCompany($event) {\r\n this.PageNumber = 1;\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event.id)\r\n }\r\n }\r\n this.GetListOfUser();\r\n }\r\n\r\n onSelectAllCompany($event) {\r\n this.PageNumber = 1;\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfCompany != null) {\r\n if (this.listOfCompany.length > 0) {\r\n this.listOfCompany = this.removeElemetninArray(this.listOfCompany, $event[iCounter].id)\r\n this.listOfCompany.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfCompany.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n this.GetListOfUser();\r\n }\r\n\r\n onDeSelectAllCompany($event) {\r\n this.PageNumber = 1;\r\n this.listOfCompany = [];\r\n this.GetListOfUser();\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L0FjdGlvbkl0ZW0vYWN0aW9uLXVwZGF0ZXMvYWN0aW9uLXVwZGF0ZXMuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ActionItemListViewModel } from 'src/Models/ActionItemListViewModel';\r\nimport { ActionCalendarSearch } from 'src/Models/actionCalendarSearchModel';\r\nimport { ToolEnum } from '../../../../Models/Common';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { ActionStatusPopupComponent } from 'src/app/Shared/action-status-popup/action-status-popup.component';\r\nimport { NotesPopupComponent } from 'src/app/Shared/notes-popup/notes-popup.component';\r\nimport { ActionActivity } from 'src/Models/Common';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-action-updates',\r\n templateUrl: './action-updates.component.html',\r\n styleUrls: ['./action-updates.component.css']\r\n})\r\nexport class ActionUpdatesComponent implements OnInit {\r\n tokenKey: string = '';\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean;\r\n loginUser: any;\r\n\r\n ClientSelectedTool: string;\r\n productId: number = 1;\r\n\r\n isRecords: number = -1;\r\n isDataLoad: boolean = false;\r\n\r\n parentSearchModel = new ActionCalendarSearch();\r\n listView: ActionItemListViewModel[];\r\n orderBy: any = 'ModifiedDate DESC';\r\n isAscending: boolean = false;\r\n upDowDeadlineDateCSS: string = '';\r\n upDowUpdateDateCSS:string ='';\r\n upDowStateCSS: string = '';\r\n upDowTypeCSS: string = '';\r\n upDowCategoryCSS: string = '';\r\n upDowStatusCSS: string = '';\r\n upDowNotesCSS: string = '';\r\n unReadCount:number=0;\r\n\r\n totalRecordCount: number = 0;\r\n\r\n constructor(private titleService: Title, private router: Router, private modalService: NgbModal, private checkAuth: CheckAuth, private actionServices: ActionItemService, private activedRoute: ActivatedRoute, private appActivity: ApplicationActivityService\r\n ) {\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.loginUser = sessionStorage.getItem('UserId');\r\n this.unReadCount = +sessionStorage.getItem('actionUnread');\r\n\r\n this.parentSearchModel.statusIds = '0';\r\n this.parentSearchModel.userId = this.loginUser;\r\n this.parentSearchModel.dateFrom = null;\r\n this.parentSearchModel.toDate = null;\r\n\r\n this.parentSearchModel.pageNumber = 1;\r\n this.parentSearchModel.pageSize = 50;\r\n\r\n this.titleService.setTitle('Updates');\r\n }\r\n\r\n ngOnInit() {\r\n // sessionStorage.setItem('actionUnread','0');\r\n\r\n this.GetActionItemSearchListForUpdate();\r\n ApplicationActivityStore('View', 'Trac It - Updates', this.appActivity, ToolEnum.actionitem, ActionActivity['Trac It'], '/trac-it/Updates');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n GetActionItemSearchListForUpdate() {\r\n this.blockDocument();\r\n this.isDataLoad = true;\r\n this.listView = [];\r\n this.actionServices.GetActionItemSearchListForUpdateV2(this.tokenKey, this.orderBy, this.parentSearchModel).subscribe(\r\n data => {\r\n this.isDataLoad = false;\r\n this.unblockDocument();\r\n this.listView = data['listView'];\r\n this.totalRecordCount = data['listView'][0].totalRecords;\r\n this.isRecords=this.totalRecordCount;\r\n // this.parentSearchModel.listOfActionID = data['actionIds'];\r\n // this.parentSearchModel.listOfUpdateID = data['updateIds'];\r\n // this.parentSearchModel.listOfBriefingId = data['briefingIds'];\r\n // if (this.listView != null) {\r\n // this.isRecords = this.listView.length;\r\n // }\r\n },\r\n error => {\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n OpenActionStatusPopup(actionId: any, updateId: any, isInformationOnly: boolean, briefingId) {\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n sessionStorage.setItem('actionId', actionId);\r\n sessionStorage.setItem('updateId', updateId);\r\n sessionStorage.setItem('briefingId', briefingId); \r\n if (isInformationOnly) {\r\n this.OpenNotesPopup(actionId, updateId, briefingId);\r\n }\r\n else {\r\n const modalRef = this.modalService.open(ActionStatusPopupComponent, { size: 'lg' }).result.then(\r\n result => {\r\n if (result == 'Yes') {\r\n this.parentSearchModel.statusIds = '1';\r\n this.GetActionItemSearchListForUpdate();\r\n }\r\n },\r\n reason => {\r\n });\r\n }\r\n }\r\n\r\n OpenNotesPopup(actionId: any, updateId: any, briefingId: any) {\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n sessionStorage.setItem('actionId', actionId);\r\n sessionStorage.setItem('updateId', updateId);\r\n sessionStorage.setItem('briefingId', briefingId); \r\n const modalRef = this.modalService.open(NotesPopupComponent, { size: 'lg' }).result.then(\r\n result => {\r\n this.parentSearchModel.statusIds = '1';\r\n this.GetActionItemSearchListForUpdate();\r\n },\r\n reason => {\r\n //this.isHoverButtonClick = false; \r\n });\r\n }\r\n\r\n setClass(status) {\r\n if (status === 'Acknowledged') {\r\n return 'btn label label-primary ack_message';\r\n } else if (status === 'Done') {\r\n return 'btn label label-success done_message';\r\n } else if (status === 'Pending') {\r\n return 'btn label label-danger btn_pendding';\r\n } else {\r\n return 'btn label label-default ign_message';\r\n }\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n sort(sortBy: string) {\r\n this.parentSearchModel.statusIds = '1';\r\n this.upDowDeadlineDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowTypeCSS = '';\r\n this.upDowCategoryCSS = '';\r\n this.upDowStatusCSS = '';\r\n this.upDowNotesCSS = '';\r\n\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"DeadlineDate\") {\r\n this.upDowDeadlineDateCSS = 'active';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowUpdateDateCSS = 'active';\r\n }\r\n else if (sortBy === \"State\") {\r\n this.upDowStateCSS = 'active';\r\n }\r\n else if (sortBy === \"Type\") {\r\n this.upDowTypeCSS = 'active';\r\n }\r\n else if (sortBy === \"Category\") {\r\n this.upDowCategoryCSS = 'active';\r\n }\r\n else if (sortBy === \"Status\") {\r\n this.upDowStatusCSS = 'active';\r\n }\r\n else if (sortBy === \"Notes\") {\r\n this.upDowNotesCSS = 'active';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.orderBy = sortBy;\r\n\r\n if (sortBy === \"DeadlineDate\") {\r\n this.upDowDeadlineDateCSS = 'active-up';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowUpdateDateCSS = 'active-up';\r\n }\r\n else if (sortBy === \"State\") {\r\n this.upDowStateCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Type\") {\r\n this.upDowTypeCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Category\") {\r\n this.upDowCategoryCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Status\") {\r\n this.upDowStatusCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Notes\") {\r\n this.upDowNotesCSS = 'active-up';\r\n }\r\n }\r\n this.viewallupdates();\r\n }\r\n\r\n viewallupdates()\r\n {\r\n this.unReadCount=0;\r\n this.isDataLoad = true;\r\n this.listView = [];\r\n this.actionServices.GetActionItemSearchListForAllUpdatesV2(this.tokenKey, this.orderBy, this.parentSearchModel).subscribe(\r\n data => {\r\n this.isDataLoad = false;\r\n this.unblockDocument();\r\n this.listView = data['listView'];\r\n this.totalRecordCount = data['listView'][0].totalRecords;\r\n this.isRecords=this.totalRecordCount;\r\n\r\n // this.parentSearchModel.listOfActionID = data['actionIds'];\r\n // this.parentSearchModel.listOfUpdateID = data['updateIds'];\r\n // this.parentSearchModel.listOfBriefingId = data['briefingIds'];\r\n // if (this.listView != null) {\r\n // this.isRecords = this.listView.length;\r\n // }\r\n },\r\n error => {\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n pageChanged($event: any) {\r\n this.parentSearchModel.pageNumber = $event.page;\r\n this.GetActionItemSearchListForUpdate();\r\n }\r\n\r\n}\r\n","export default \"body .calendar_mn .fc .fc-toolbar .fc-button{\\r\\n background-color: #0039BF !important;\\r\\n border: 1px solid #0039BF !important;\\r\\n}\\r\\n\\r\\nbody .fc .fc-toolbar .fc-button{\\r\\n background-color: #0039BF !important; \\r\\n border: 1px solid #0039BF !important;\\r\\n}\\r\\n\\r\\n.noscroll {\\r\\n min-width: 100% !important;\\r\\n}\\r\\n\\r\\n.fc-view-container *, .fc-view-container :after, .fc-view-container :before {\\r\\n box-sizing: content-box !important;\\r\\n cursor: pointer !important;\\r\\n}\\r\\n\\r\\n.calenderpart {\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n.calenderpart .calenderMonth {\\r\\n position: absolute;\\r\\n position: absolute;\\r\\n max-width: 300px;\\r\\n width: 100%;\\r\\n left: 50%;\\r\\n -webkit-transform: translate(-50%, 10px);\\r\\n transform: translate(-50%, 10px);\\r\\n z-index: 999;\\r\\n}\\r\\n\\r\\n::ng-deep.calenderpart .calenderMonth .selected-list .c-btn {\\r\\n background: none !important;\\r\\n border: none !important;\\r\\n font-size: 24px !important;\\r\\n line-height: 0;\\r\\n padding-right: 30px;\\r\\n -webkit-box-pack: end;\\r\\n justify-content: flex-end;\\r\\n}\\r\\n\\r\\n.calenderpart .calenderMonth input.form-control {\\r\\n background: none;\\r\\n border: none;\\r\\n font-size: 24px;\\r\\n padding-left: 0px;\\r\\n width: 90px;\\r\\n height: 38px;\\r\\n}\\r\\n\\r\\n::ng-deep.calenderpart .arrow-down, ::ng-deep.calenderpart .arrow-up{\\r\\n margin-left: 85px;\\r\\n}\\r\\n\\r\\n::ng-deep.calenderpart .fc-center h2, ::ng-deep.calenderpart .c-remove{\\r\\n display: none;\\r\\n}\\r\\n\\r\\n::ng-deep.body .fc .fc-event\\r\\n{\\r\\n color: black;\\r\\n}\\r\\n\\r\\n::ng-deep .calenderpart .fc-scroller,::ng-deep .calenderpart .fc-time-grid-container{\\r\\n height: 884.325px !important;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvQWN0aW9uSXRlbS9haWFjdGlvbi1jYWxlbmRhci9haWFjdGlvbi1jYWxlbmRhci5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usb0NBQW9DO0VBQ3BDLG9DQUFvQztBQUN0Qzs7QUFFQTtFQUNFLG9DQUFvQztFQUNwQyxvQ0FBb0M7QUFDdEM7O0FBRUE7RUFDRSwwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSxrQ0FBa0M7RUFDbEMsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLFNBQVM7RUFDVCx3Q0FBZ0M7VUFBaEMsZ0NBQWdDO0VBQ2hDLFlBQVk7QUFDZDs7QUFFQTtFQUNFLDJCQUEyQjtFQUMzQix1QkFBdUI7RUFDdkIsMEJBQTBCO0VBQzFCLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIscUJBQXlCO1VBQXpCLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osZUFBZTtFQUNmLGlCQUFpQjtFQUNqQixXQUFXO0VBQ1gsWUFBWTtBQUNkOztBQUNBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBOztFQUVFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLDRCQUE0QjtBQUM5QiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L0FjdGlvbkl0ZW0vYWlhY3Rpb24tY2FsZW5kYXIvYWlhY3Rpb24tY2FsZW5kYXIuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbImJvZHkgLmNhbGVuZGFyX21uIC5mYyAuZmMtdG9vbGJhciAuZmMtYnV0dG9ue1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkYgIWltcG9ydGFudDtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjMDAzOUJGICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmJvZHkgLmZjIC5mYy10b29sYmFyIC5mYy1idXR0b257XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRiAhaW1wb3J0YW50OyBcclxuICBib3JkZXI6IDFweCBzb2xpZCAjMDAzOUJGICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5ub3Njcm9sbCB7XHJcbiAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5mYy12aWV3LWNvbnRhaW5lciAqLCAuZmMtdmlldy1jb250YWluZXIgOmFmdGVyLCAuZmMtdmlldy1jb250YWluZXIgOmJlZm9yZSB7XHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3ggIWltcG9ydGFudDtcclxuICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNhbGVuZGVycGFydCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uY2FsZW5kZXJwYXJ0IC5jYWxlbmRlck1vbnRoIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIG1heC13aWR0aDogMzAwcHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDEwcHgpO1xyXG4gIHotaW5kZXg6IDk5OTtcclxufVxyXG5cclxuOjpuZy1kZWVwLmNhbGVuZGVycGFydCAuY2FsZW5kZXJNb250aCAuc2VsZWN0ZWQtbGlzdCAuYy1idG4ge1xyXG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICBmb250LXNpemU6IDI0cHggIWltcG9ydGFudDtcclxuICBsaW5lLWhlaWdodDogMDtcclxuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbn1cclxuXHJcbi5jYWxlbmRlcnBhcnQgLmNhbGVuZGVyTW9udGggaW5wdXQuZm9ybS1jb250cm9sIHtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBmb250LXNpemU6IDI0cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbiAgd2lkdGg6IDkwcHg7XHJcbiAgaGVpZ2h0OiAzOHB4O1xyXG59XHJcbjo6bmctZGVlcC5jYWxlbmRlcnBhcnQgLmFycm93LWRvd24sIDo6bmctZGVlcC5jYWxlbmRlcnBhcnQgLmFycm93LXVwe1xyXG4gIG1hcmdpbi1sZWZ0OiA4NXB4O1xyXG59XHJcblxyXG46Om5nLWRlZXAuY2FsZW5kZXJwYXJ0IC5mYy1jZW50ZXIgaDIsIDo6bmctZGVlcC5jYWxlbmRlcnBhcnQgLmMtcmVtb3Zle1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbjo6bmctZGVlcC5ib2R5IC5mYyAuZmMtZXZlbnRcclxue1xyXG4gIGNvbG9yOiBibGFjaztcclxufVxyXG5cclxuOjpuZy1kZWVwIC5jYWxlbmRlcnBhcnQgLmZjLXNjcm9sbGVyLDo6bmctZGVlcCAuY2FsZW5kZXJwYXJ0IC5mYy10aW1lLWdyaWQtY29udGFpbmVye1xyXG4gIGhlaWdodDogODg0LjMyNXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuIl19 */\"","import { Component, OnInit, ViewChild, Directive, ElementRef, OnDestroy, Inject } from '@angular/core';\r\nimport dayGridPlugin from '@fullcalendar/daygrid';\r\nimport timeGridPlugin from '@fullcalendar/timegrid';\r\nimport interactionPlugin from '@fullcalendar/interaction';\r\nimport { ActionItemService } from '../../../../Services/actionitem.service';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { AppConfig } from '../../../../Services/app.config';\r\nimport { ActionItemCalendarModel } from 'src/Models/ActionItemCalendarModel';\r\nimport { ActionItemListViewModel } from 'src/Models/ActionItemListViewModel';\r\nimport { OverlayPanel } from 'primeng/overlaypanel';\r\nimport { ActionItemTypeModel } from 'src/Models/ActionItemTypeModel';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { ToolEnum } from '../../../../Models/Common';\r\nimport { stateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { ActionCalendarSearch } from 'src/Models/actionCalendarSearchModel';\r\nimport { FullCalendar } from 'primeng/fullcalendar/primeng-fullcalendar';\r\nimport { Search } from 'angular2-multiselect-dropdown/lib/menu-item';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { SearchPanelComponent } from '../../../Shared/search-panel/search-panel.component';\r\nimport { AddNewActionPopupComponent } from 'src/app/Shared/add-new-action-popup/add-new-action-popup.component';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ActionStatusPopupComponent } from 'src/app/Shared/action-status-popup/action-status-popup.component';\r\nimport { htmlToPdf } from 'src/Services/htmlToPdf';\r\nimport * as FileSaver from 'file-saver';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NotesPopupComponent } from 'src/app/Shared/notes-popup/notes-popup.component';\r\nimport { ActionItemDetailsPopupComponent } from 'src/app/Shared/action-item-details-popup/action-item-details-popup.component';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { EditActionPopupComponent } from 'src/app/Shared/edit-action-popup/edit-action-popup.component';\r\nimport { ActionActivity} from 'src/Models/Common';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-aiaction-calendar',\r\n templateUrl: './aiaction-calendar.component.html',\r\n styleUrls: ['./aiaction-calendar.component.css']\r\n})\r\n\r\nexport class AIActionCalendarComponent implements OnInit, OnDestroy {\r\n parentSearchModel = new ActionCalendarSearch();\r\n listOfStateId: string = '';\r\n listOfState: stateMasterModel[];\r\n productId: number = 1;\r\n ClientSelectedTool: string;\r\n loginUser: any;\r\n chkselectAll: boolean = false;\r\n actionItemsList: ActionItemTypeModel[];\r\n tokenKey: string = '';\r\n events: ActionItemCalendarModel[];\r\n options: any;\r\n appModel: any;\r\n actionTypes: string = '';\r\n carrierCategories: string = '';\r\n actionSatus: string = '';\r\n isListShow: boolean = false;\r\n defaultView: string = 'dayGridMonth';\r\n showDescription: boolean = true;\r\n\r\n listView: ActionItemListViewModel[];\r\n whereCondition: any = 'null';\r\n orderBy: any = '';\r\n totalPageSize: any = 0;\r\n isAscending: boolean = true;\r\n\r\n upDowDeadlineDateCSS: string = '';\r\n upDowStateCSS: string = '';\r\n upDowTypeCSS: string = '';\r\n upDowCategoryCSS: string = '';\r\n upDowStatusCSS: string = '';\r\n upDowNotesCSS: string = '';\r\n\r\n actionId: number = 0;\r\n updateId: number = 0;\r\n baseUrl: string\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean;\r\n headerString: string = '';\r\n briefingId: number = 0;\r\n\r\n @ViewChild('ucCalendar', { static: false }) fc: FullCalendar;\r\n @ViewChild('search', { static: false }) search: SearchPanelComponent;\r\n //@ViewChild('op', { static: false }) overlayPanel: any;\r\n\r\n\r\n isHoverButtonClick: boolean = false;\r\n dashboardSummaryType: number = 0;\r\n dashboardCarrierCategories: number = 0;\r\n dashboardActionStatus: number = 0;\r\n isClickOnDashboard: boolean = false;\r\n\r\n emailActionId: string = '0';\r\n emailUpdateId: string = '0';\r\n emailDeadlineDate: string = '';\r\n emailProductId: number = 0;\r\n emailBriefingId: string = '0';\r\n\r\n deletedId: number = 0;\r\n bsRangeValue: Date[];\r\n isNextPrevBtnClick: boolean = false;\r\n\r\n isActionCompanySpecific: boolean = false;\r\n isInformativeOnly: boolean = false;\r\n\r\n isDateChange: boolean = false;\r\n recurranceId = 0;\r\n monthList = [];\r\n yearList = [];\r\n monthyearSettings = {};\r\n selectdMonth = [];\r\n selectedYear = [];\r\n currentYear = new Date().getFullYear();\r\n titleSearch:string;\r\n Cstartdate:string='';\r\n Cenddate:string='';\r\n\r\n constructor(private titleService: Title, private toastr: ToastrService, @Inject('BASE_URL') baseUrl, private htmlToPdf: htmlToPdf, private router: Router, private actionServices: ActionItemService,\r\n private checkAuth: CheckAuth, private matrix: MatrixService, private modalService: NgbModal, private activedRoute: ActivatedRoute,\r\n private appActivity: ApplicationActivityService) {\r\n this.listOfStateId = 'null';\r\n this.baseUrl = baseUrl;\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.loginUser = sessionStorage.getItem('UserId');\r\n this.actionTypes = 'null';\r\n this.carrierCategories = 'null';\r\n this.actionSatus = 'null';\r\n this.titleSearch=\"\";\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.loadCalanderSetting();\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n if (sessionStorage.getItem('isClickOnDashboard') == 'true')\r\n this.isClickOnDashboard = true;\r\n else\r\n this.isClickOnDashboard = false;\r\n sessionStorage.removeItem('isClickOnDashboard');\r\n this.titleService.setTitle('Calendar');\r\n this.fillMonths();\r\n this.fillYear();\r\n this.monthyearSettings = {\r\n singleSelection: true,\r\n text: \"Select\",\r\n classes: \"borderLessTextBoxGreen\",\r\n noDataLabel: 'No record available',\r\n showCheckbox: false,\r\n };\r\n }\r\n\r\n setEmailAutoLoginParameter() {\r\n if (sessionStorage.getItem('emailProductId') != null && sessionStorage.getItem('emailProductId') != ''\r\n && sessionStorage.getItem('emailActionId') != '' && sessionStorage.getItem('emailActionId') != null\r\n && sessionStorage.getItem('emailActionId') != '' && sessionStorage.getItem('emailActionId') != null\r\n && sessionStorage.getItem('emailDeadlineDate') != '' && sessionStorage.getItem('emailDeadlineDate') != null\r\n && sessionStorage.getItem('emailBriefingId') != '' && sessionStorage.getItem('emailBriefingId') != null\r\n ) {\r\n\r\n this.emailProductId = +sessionStorage.getItem('emailProductId');\r\n this.emailActionId = sessionStorage.getItem('emailActionId');\r\n this.emailUpdateId = sessionStorage.getItem('emailUpdatedId');\r\n this.emailDeadlineDate = sessionStorage.getItem('emailDeadlineDate');\r\n this.emailBriefingId = sessionStorage.getItem('emailBriefingId');\r\n if (this.emailActionId != '' && this.emailUpdateId != '' && this.emailDeadlineDate != '' && this.emailProductId > 0 && this.emailBriefingId != '') {\r\n this.search.showHideCalendar(true);\r\n this.isListShow = true;\r\n this.productId = this.emailProductId;\r\n this.parentSearchModel.emailActionId = this.emailActionId;\r\n this.parentSearchModel.emailUpdateId = this.emailUpdateId;\r\n this.parentSearchModel.emailBriefingId = this.emailBriefingId;\r\n if (this.emailDeadlineDate !== null && this.emailDeadlineDate !== '') {\r\n let dddt = new Date(this.emailDeadlineDate);\r\n let dd1 = dddt.getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (dddt.getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n this.parentSearchModel.emailDeadlineDate = mm1 + '-' + dd1 + '-' + dddt.getFullYear();\r\n this.bsRangeValue = [dddt, dddt];\r\n }\r\n }\r\n\r\n sessionStorage.removeItem('emailProductId');\r\n sessionStorage.removeItem('emailActionId');\r\n sessionStorage.removeItem('emailUpdatedId');\r\n sessionStorage.removeItem('emailDeadlineDate');\r\n sessionStorage.removeItem('emailBriefingId');\r\n }\r\n else {\r\n if (sessionStorage.getItem('displayMessage') != null) {\r\n this.showMessage(sessionStorage.getItem('displayMessage') + ' - user not have access', 'Error', 'error');\r\n sessionStorage.removeItem('displayMessage');\r\n }\r\n }\r\n }\r\n\r\n\r\n setDashboardSession() {\r\n this.dashboardSummaryType = +sessionStorage.getItem('dashboardSummaryType');\r\n this.dashboardCarrierCategories = +sessionStorage.getItem('dashboardCarrierCategories');\r\n this.dashboardActionStatus = +sessionStorage.getItem('dashboardActionStatus');\r\n if (this.dashboardSummaryType > 0 || this.dashboardCarrierCategories > 0 || this.dashboardActionStatus > 0) {\r\n this.defaultView = 'customList'\r\n this.search.showHideCalendar(true);\r\n this.isListShow = true;\r\n }\r\n if ((sessionStorage.getItem('dashboardFromDate') != '' && sessionStorage.getItem('dashboardFromDate') != null) && (sessionStorage.getItem('dashboardToDate') != '' && sessionStorage.getItem('dashboardToDate') != null)) {\r\n this.parentSearchModel.dateFrom = sessionStorage.getItem('dashboardFromDate');\r\n this.parentSearchModel.toDate = sessionStorage.getItem('dashboardToDate');\r\n let CurrentTime = new Date(this.parentSearchModel.dateFrom);\r\n let EndTime = new Date(this.parentSearchModel.toDate);\r\n this.bsRangeValue = [CurrentTime, EndTime];\r\n sessionStorage.removeItem('dashboardFromDate');\r\n sessionStorage.removeItem('dashboardToDate');\r\n }\r\n sessionStorage.removeItem('dashboardSummaryType');\r\n sessionStorage.removeItem('dashboardCarrierCategories');\r\n sessionStorage.removeItem('dashboardActionStatus');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n loadCalanderSetting() {\r\n this.options = {\r\n editable: false,\r\n plugins: [dayGridPlugin, timeGridPlugin, interactionPlugin],\r\n //defaultDate: '2020-02-01',\r\n defaultView: this.defaultView,\r\n displayEventTime: false,\r\n displayEventEnd: false,\r\n minTime: '00:00:00',\r\n maxTime: '00:00:00',\r\n views: {\r\n dayGrid: {\r\n eventLimit: 4\r\n }\r\n },\r\n header: {\r\n left: 'prev,next, today',\r\n center: 'title',\r\n right: 'dayGridMonth,timeGridWeek,customList'\r\n },\r\n buttonText:\r\n {\r\n today: 'Today',\r\n month: 'Month',\r\n week: 'Week',\r\n list: 'List'\r\n },\r\n customButtons: {\r\n customList: {\r\n text: \"List\",\r\n click: r => {\r\n this.defaultView = 'customList'\r\n this.unBindEvents();\r\n this.search.showHideCalendar(true);\r\n this.listView = [];\r\n\r\n //debugger\r\n this.set120Day();\r\n\r\n // const d = new Date(this.fc.calendar.view.activeStart);\r\n // const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n // const e = new Date(this.fc.calendar.view.activeEnd);\r\n // const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n // this.parentSearchModel.dateFrom = a;\r\n // this.parentSearchModel.toDate = f;\r\n\r\n // this.bsRangeValue = [d, e];\r\n\r\n this.isListShow = true;\r\n //this.setDefaultDate();\r\n //this.GetListViewData();\r\n this.sort(\"DeadlineDate\");\r\n }\r\n },\r\n // addAction: {\r\n // text: \"Add Action\",\r\n // click: r => {\r\n // // this.defaultView = 'customList'\r\n // // this.unBindEvents();\r\n // // this.search.showHideCalendar(true);\r\n // // this.listView = [];\r\n // // this.isListShow = true;\r\n // // //this.GetListViewData();\r\n // // this.sort(\"DeadlineDate\")\r\n // this.openAddNewActionItemPopup();\r\n // }\r\n // }\r\n },\r\n eventRender: function (event, element, view) {\r\n\r\n },\r\n eventAfterRender: function (event, element, view) {\r\n\r\n }\r\n };\r\n }\r\n\r\n set120Day() {\r\n let CurrentTime = new Date(this.fc.calendar.view.currentStart);\r\n\r\n var firstDay = new Date(CurrentTime.getFullYear(), CurrentTime.getMonth(), 1);\r\n\r\n firstDay.setDate(firstDay.getDate() - 30);\r\n\r\n var lastDay = new Date(CurrentTime.getFullYear(), CurrentTime.getMonth(), this.daysInMonth(CurrentTime.getMonth() + 1,\r\n CurrentTime.getFullYear()));\r\n\r\n lastDay.setDate(lastDay.getDate() + 60);\r\n\r\n const dd = new Date(firstDay);\r\n const aa = [this.pad(dd.getMonth() + 1), this.pad(dd.getDate()), dd.getFullYear()].join('/');\r\n\r\n const ee = new Date(lastDay);\r\n const ff = [this.pad(ee.getMonth() + 1), this.pad(ee.getDate()), ee.getFullYear()].join('/');\r\n\r\n this.parentSearchModel.dateFrom = aa;\r\n this.parentSearchModel.toDate = ff;\r\n this.bsRangeValue = [dd, ee];\r\n }\r\n\r\n pad(s) {\r\n return (s < 10) ? '0' + s : s;\r\n }\r\n\r\n daysInMonth(month, year) {\r\n return new Date(year, month, 0).getDate();\r\n }\r\n\r\n ngOnInit() {\r\n ApplicationActivityStore('View', 'Trac It - Calendar ', this.appActivity, ToolEnum.actionitem, ActionActivity['Trac It'], '/trac-it/Calendar');\r\n }\r\n\r\n GetCalendarData(searchModel: ActionCalendarSearch) {\r\n this.blockDocument();\r\n searchModel.Search=this.titleSearch;\r\n this.actionServices.getCalendarData(this.tokenKey, searchModel).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n this.events = data['actionItem'];\r\n searchModel.toDate = this.parentSearchModel.toDate;\r\n searchModel.dateFrom = this.parentSearchModel.dateFrom;\r\n },\r\n error => {\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n GetListViewData() {\r\n this.listView = [];\r\n this.blockDocument();\r\n this.parentSearchModel.Search=this.titleSearch;\r\n this.actionServices.getListViewData(this.tokenKey, this.orderBy, this.parentSearchModel).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n this.isDateChange = false;\r\n this.listView = data['listView'];\r\n if (this.listView != null) {\r\n if (this.listView.length > 0) {\r\n }\r\n }\r\n this.search.showHideCalendar(true);\r\n this.headerString = '';\r\n if (this.parentSearchModel != null) {\r\n if (this.parentSearchModel.toDate != '' && this.parentSearchModel.toDate != null && this.parentSearchModel.dateFrom != '' && this.parentSearchModel.dateFrom != null) {\r\n if (this.parentSearchModel.emailDeadlineDate != '' && this.parentSearchModel.emailDeadlineDate != null) {\r\n let sDate = new Date(this.parentSearchModel.emailDeadlineDate);\r\n let eDate = new Date(this.parentSearchModel.emailDeadlineDate);\r\n\r\n const start = [this.pad(sDate.getMonth() + 1), this.pad(sDate.getDate()), sDate.getFullYear()].join('/');\r\n const end = [this.pad(eDate.getMonth() + 1), this.pad(eDate.getDate()), eDate.getFullYear()].join('/');\r\n this.headerString = \"Calendar Items From \" + start + \" To \" + end;\r\n\r\n this.Cstartdate=start;\r\n this.Cenddate=end;\r\n }\r\n else {\r\n //debugger\r\n let sDate = new Date(this.parentSearchModel.dateFrom);\r\n let eDate = new Date(this.parentSearchModel.toDate);\r\n\r\n const start = [this.pad(sDate.getMonth() + 1), this.pad(sDate.getDate()), sDate.getFullYear()].join('/');\r\n const end = [this.pad(eDate.getMonth() + 1), this.pad(eDate.getDate()), eDate.getFullYear()].join('/');\r\n this.headerString = \"Calendar Items From \" + start + \" To \" + end;\r\n\r\n this.Cstartdate=start;\r\n this.Cenddate=end;\r\n }\r\n }\r\n }\r\n\r\n\r\n },\r\n error => {\r\n this.listView = [];\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n eventClick(event: any) {\r\n\r\n if (event.target.className == \"fc-title\" || event.target.className == \"fc-content\") {\r\n let parentOffset = event.target.offsetParent;\r\n if (event.target.className == \"fc-title\") {\r\n parentOffset = event.target.offsetParent.offsetParent;\r\n }\r\n if (parentOffset) {\r\n const classes = parentOffset.className.split(' ');\r\n if (classes.length > 0) {\r\n classes.forEach((element, i) => {\r\n if (element.includes('event-format_')) {\r\n this.actionId = element.split('_')[1];\r\n this.updateId = element.split('_')[2];\r\n let companySpecific = element.split('_')[3];\r\n let isInformativeOnly = element.split('_')[4];\r\n this.briefingId = element.split('_')[5];\r\n if (companySpecific > 0)\r\n this.isActionCompanySpecific = true;\r\n else\r\n this.isActionCompanySpecific = false;\r\n\r\n if (isInformativeOnly > 0) {\r\n this.isInformativeOnly = true;\r\n this.OpenNoteHoverPopup();\r\n }\r\n else {\r\n this.isInformativeOnly = false;\r\n this.OpenStatusHoverPopup()\r\n }\r\n\r\n }\r\n });\r\n }\r\n }\r\n //this.overlayPanel.show(event, event.target);\r\n }\r\n }\r\n\r\n showCalander(defaultView: any) {\r\n this.clearEmailAutoLoginParameter();\r\n this.fc.calendar.changeView(defaultView);\r\n if (defaultView == 'dayGridMonth') {\r\n this.loadMonthData();\r\n }\r\n else if (defaultView == 'timeGridWeek') {\r\n this.loadWeekData();\r\n }\r\n\r\n this.defaultView = defaultView;\r\n this.isListShow = false;\r\n //this.loadCalanderSetting();\r\n this.search.showHideCalendar(false);\r\n\r\n\r\n // setTimeout(() => {\r\n // this.bindEvents();\r\n // this.hideWeekViewTimeLine();\r\n // }, 200);\r\n this.setCurrentMonthAndYear(true);\r\n }\r\n\r\n setClass(status) {\r\n if (status === 'Acknowledged') {\r\n return 'btn label label-primary ack_message';\r\n } else if (status === 'Done') {\r\n return 'btn label label-success done_message';\r\n } else if (status === 'Pending') {\r\n return 'btn label label-danger btn_pendding';\r\n } else {\r\n return 'btn label label-default ign_message';\r\n }\r\n }\r\n\r\n hideWeekViewTimeLine() {\r\n try {\r\n const timeViewDiv = this.fc.el.nativeElement.getElementsByClassName('fc-time-grid-container');\r\n if (timeViewDiv.length > 0) {\r\n timeViewDiv[0].style = \"display:none\";\r\n }\r\n } catch (error) {\r\n }\r\n }\r\n\r\n sort(sortBy: string) {\r\n this.upDowDeadlineDateCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowTypeCSS = '';\r\n this.upDowCategoryCSS = '';\r\n this.upDowStatusCSS = '';\r\n this.upDowNotesCSS = '';\r\n\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"DeadlineDate\") {\r\n this.upDowDeadlineDateCSS = 'active';\r\n }\r\n else if (sortBy === \"State\") {\r\n this.upDowStateCSS = 'active';\r\n }\r\n else if (sortBy === \"Type\") {\r\n this.upDowTypeCSS = 'active';\r\n }\r\n else if (sortBy === \"Category\") {\r\n this.upDowCategoryCSS = 'active';\r\n }\r\n else if (sortBy === \"Status\") {\r\n this.upDowStatusCSS = 'active';\r\n }\r\n else if (sortBy === \"Notes\") {\r\n this.upDowNotesCSS = 'active';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.orderBy = sortBy;\r\n\r\n if (sortBy === \"DeadlineDate\") {\r\n this.upDowDeadlineDateCSS = 'active-up';\r\n }\r\n else if (sortBy === \"State\") {\r\n this.upDowStateCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Type\") {\r\n this.upDowTypeCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Category\") {\r\n this.upDowCategoryCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Status\") {\r\n this.upDowStatusCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Notes\") {\r\n this.upDowNotesCSS = 'active-up';\r\n }\r\n }\r\n this.GetListViewData();\r\n }\r\n selectCar(event, overlaypanel: OverlayPanel) {\r\n overlaypanel.toggle(event);\r\n }\r\n\r\n parentFun(searchModel: ActionCalendarSearch) {\r\n\r\n this.parentSearchModel.actionTypeIds = searchModel.actionTypeIds;\r\n this.parentSearchModel.carrierCatIds = searchModel.carrierCatIds;\r\n this.parentSearchModel.isNeworChanged = searchModel.isNeworChanged;\r\n this.parentSearchModel.stateIds = searchModel.stateIds;\r\n this.parentSearchModel.statusIds = searchModel.statusIds;\r\n this.parentSearchModel.userId = searchModel.userId;\r\n this.parentSearchModel.emailDeadlineDate = searchModel.emailDeadlineDate;\r\n this.parentSearchModel.isFavorite = searchModel.isFavorite;\r\n this.parentSearchModel.isMyTracIt = searchModel.isMyTracIt;\r\n this.parentSearchModel.companySpecificIds = searchModel.companySpecificIds;\r\n //debugger\r\n if (this.defaultView === 'dayGridMonth' || this.defaultView === 'timeGridWeek') {\r\n if (this.fc != null && this.fc != undefined && !this.isClickOnDashboard) {\r\n const d = new Date(this.fc.calendar.view.activeStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n const e = new Date(this.fc.calendar.view.activeEnd);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n // this.parentSearchModel.dateFrom = a;\r\n // this.parentSearchModel.toDate = f;\r\n searchModel.toDate = f;\r\n searchModel.dateFrom = a;\r\n\r\n this.set120Day();\r\n //\r\n // let CurrentTime = new Date(this.fc.calendar.view.currentStart);\r\n // var firstDay = new Date(CurrentTime.getFullYear(), CurrentTime.getMonth(), 1);\r\n // firstDay.setDate(firstDay.getDate() - 30);\r\n // var lastDay = new Date(CurrentTime.getFullYear(), CurrentTime.getMonth(), this.daysInMonth(CurrentTime.getMonth() + 1,\r\n // CurrentTime.getFullYear()));\r\n\r\n // lastDay.setDate(lastDay.getDate() + 60);\r\n // const dd = new Date(firstDay);\r\n // const aa = [this.pad(dd.getMonth() + 1), this.pad(dd.getDate()), dd.getFullYear()].join('/');\r\n\r\n // const ee = new Date(lastDay);\r\n // const ff = [this.pad(ee.getMonth() + 1), this.pad(ee.getDate()), ee.getFullYear()].join('/');\r\n\r\n // this.parentSearchModel.dateFrom = aa;\r\n // this.parentSearchModel.toDate = ff;\r\n }\r\n }\r\n else {\r\n\r\n if (searchModel.toDate && searchModel.dateFrom) {\r\n if (typeof (searchModel.toDate) != undefined && typeof (searchModel.dateFrom) != undefined) {\r\n this.parentSearchModel.dateFrom = searchModel.dateFrom;\r\n this.parentSearchModel.toDate = searchModel.toDate;\r\n }\r\n }\r\n else {\r\n searchModel.dateFrom = this.parentSearchModel.dateFrom;;\r\n searchModel.toDate = this.parentSearchModel.toDate;\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n if (!this.isListShow) {\r\n this.GetCalendarData(searchModel);\r\n } else {\r\n this.GetListViewData();\r\n }\r\n }\r\n\r\n showdescription($event) {\r\n this.showDescription = $event.srcElement.checked;\r\n }\r\n\r\n setDefaultDate() {\r\n if (this.fc != null && this.fc != undefined && !this.isClickOnDashboard) {\r\n const d = new Date(this.fc.calendar.view.currentStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n const e = new Date(this.fc.calendar.view.currentEnd);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setDefaultDate();\r\n this.setDashboardSession();\r\n this.bindEvents();\r\n this.setEmailAutoLoginParameter();\r\n\r\n if (this.emailActionId != '' && this.emailUpdateId != '' && this.emailDeadlineDate != '' && this.emailProductId > 0 && this.emailBriefingId) {\r\n this.OpenActionStatusPopup(this.emailActionId, this.emailUpdateId, false, this.emailBriefingId);\r\n this.clearEmailAutoLoginParameter();\r\n }\r\n\r\n }\r\n\r\n clearEmailAutoLoginParameter() {\r\n\r\n this.emailActionId = '';\r\n this.emailUpdateId = '';\r\n this.emailDeadlineDate = '';\r\n this.emailProductId = 0;\r\n this.parentSearchModel.emailActionId = '0';\r\n this.parentSearchModel.emailUpdateId = '0';\r\n this.parentSearchModel.emailDeadlineDate = '';\r\n this.emailBriefingId = '';\r\n this.search.showHideCalendar(false);\r\n }\r\n\r\n bindEvents() {\r\n\r\n const prevButton = this.fc.el.nativeElement.getElementsByClassName('fc-prev-button');\r\n const nextButton = this.fc.el.nativeElement.getElementsByClassName('fc-next-button');\r\n const todayButton = this.fc.el.nativeElement.getElementsByClassName('fc-today-button');\r\n const monthButton = this.fc.el.nativeElement.getElementsByClassName('fc-dayGridMonth-button');\r\n const weekButton = this.fc.el.nativeElement.getElementsByClassName('fc-timeGridWeek-button');\r\n\r\n nextButton[0].addEventListener('click', () => {\r\n this.clearEmailAutoLoginParameter();\r\n\r\n\r\n //const d = new Date(this.fc.calendar.view.currentStart);\r\n const d = new Date(this.fc.calendar.view.activeStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n //const e = new Date(this.fc.calendar.view.currentEnd);\r\n const e = new Date(this.fc.calendar.view.activeEnd);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n this.bsRangeValue = [d, e];\r\n this.set120Day();\r\n this.GetCalendarData(this.parentSearchModel);\r\n this.setCurrentMonthAndYear();\r\n });\r\n\r\n prevButton[0].addEventListener('click', () => {\r\n this.clearEmailAutoLoginParameter();\r\n\r\n //const d = new Date(this.fc.calendar.view.currentStart);\r\n const d = new Date(this.fc.calendar.view.activeStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n //const e = new Date(this.fc.calendar.view.currentEnd);\r\n const e = new Date(this.fc.calendar.view.activeEnd);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n this.bsRangeValue = [d, e];\r\n this.set120Day();\r\n this.GetCalendarData(this.parentSearchModel);\r\n this.setCurrentMonthAndYear();\r\n });\r\n\r\n todayButton[0].addEventListener('click', () => {\r\n\r\n this.clearEmailAutoLoginParameter();\r\n\r\n\r\n const d = new Date(this.fc.calendar.view.currentStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n const e = new Date(this.fc.calendar.view.currentEnd);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n this.set120Day();\r\n this.GetCalendarData(this.parentSearchModel);\r\n this.setCurrentMonthAndYear();\r\n });\r\n\r\n monthButton[0].addEventListener('click', () => {\r\n\r\n this.clearEmailAutoLoginParameter();\r\n this.set120Day();\r\n this.loadMonthData();\r\n });\r\n\r\n weekButton[0].addEventListener('click', () => {\r\n\r\n this.clearEmailAutoLoginParameter();\r\n this.set120Day();\r\n this.loadWeekData();\r\n });\r\n }\r\n\r\n loadMonthData() {\r\n // const d = new Date(this.fc.calendar.view.currentStart);\r\n // const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n // const e = new Date(this.fc.calendar.view.currentEnd);\r\n // const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n // this.parentSearchModel.dateFrom = a;\r\n // this.parentSearchModel.toDate = f;\r\n this.GetCalendarData(this.parentSearchModel);\r\n }\r\n\r\n loadWeekData() {\r\n\r\n const d = new Date(this.fc.calendar.view.currentStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n const e = new Date(this.fc.calendar.view.currentEnd);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n this.hideWeekViewTimeLine();\r\n this.GetCalendarData(this.parentSearchModel);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n //Called once, before the instance is destroyed.\r\n //Add 'implements OnDestroy' to the class.\r\n //this.unBindEvents();\r\n\r\n }\r\n unBindEvents() {\r\n const prevButton = this.fc.el.nativeElement.getElementsByClassName('fc-prev-button');\r\n const nextButton = this.fc.el.nativeElement.getElementsByClassName('fc-next-button');\r\n const todayButton = this.fc.el.nativeElement.getElementsByClassName('fc-today-button');\r\n const monthButton = this.fc.el.nativeElement.getElementsByClassName('fc-dayGridMonth-button');\r\n const weekButton = this.fc.el.nativeElement.getElementsByClassName('fc-timeGridWeek-button');\r\n\r\n prevButton[0].removeEventListener('click', () => {\r\n });\r\n nextButton[0].removeEventListener('click', () => {\r\n });\r\n todayButton[0].removeEventListener('click', () => {\r\n });\r\n monthButton[0].removeEventListener('click', () => {\r\n });\r\n weekButton[0].removeEventListener('click', () => {\r\n });\r\n }\r\n\r\n\r\n openAddNewActionItemPopup() {\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n const modalRef = this.modalService.open(AddNewActionPopupComponent, { windowClass: \"AddNewActionPopup\" }).result.then(\r\n result => {\r\n if (result == 'Yes') {\r\n if (this.isHoverButtonClick) {\r\n\r\n }\r\n else\r\n this.GetListViewData();\r\n this.isHoverButtonClick = false;\r\n this.GetCalendarData(this.parentSearchModel);\r\n }\r\n },\r\n reason => {\r\n this.isHoverButtonClick = false;\r\n });\r\n\r\n }\r\n\r\n OpenActionStatusPopup(actionId: any, updateId: any, isInformationOnly: boolean, briefingId: any) {\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n sessionStorage.setItem('actionId', actionId);\r\n sessionStorage.setItem('updateId', updateId);\r\n sessionStorage.setItem('briefingId', briefingId);\r\n\r\n if (isInformationOnly) {\r\n this.OpenNotesPopup(actionId, updateId, briefingId);\r\n }\r\n else {\r\n const modalRef = this.modalService.open(ActionStatusPopupComponent, { size: 'lg' }).result.then(\r\n result => {\r\n if (result == 'Yes' || result == 'Reload') {\r\n if (this.isHoverButtonClick) {\r\n this.GetCalendarData(this.parentSearchModel);\r\n }\r\n else\r\n this.GetListViewData();\r\n this.isHoverButtonClick = false;\r\n }\r\n },\r\n reason => {\r\n this.isHoverButtonClick = false;\r\n });\r\n }\r\n\r\n }\r\n\r\n pdfDocument() {\r\n\r\n if (this.listView != null) {\r\n if (this.listView.length > 0) {\r\n this.blockDocument();\r\n let mainURL = this.baseUrl;\r\n this.isShowprogressSpinner = true;\r\n let url = '
';\r\n url += '
';\r\n url += '
';\r\n document.getElementById(\"mytable\").style.width = \"100%\";\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n document.getElementById(\"mytable\").style.width = \"88%\";\r\n\r\n let datestring=this.Cstartdate+\" To \"+this.Cenddate;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '0',this.productId,datestring).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n //this.downloadFile(data['fileName'], data['url']);\r\n this.downloadFile('TracItCalendarItems', data['url']);\r\n }\r\n },\r\n error => {\r\n //this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n\r\n }\r\n else {\r\n setTimeout(() => this.toastr.error('No data found to download', 'Error!'));\r\n }\r\n }\r\n\r\n else {\r\n setTimeout(() => this.toastr.error('No data found to download', 'Error!'));\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n public downloadFile(filename, url) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename + '.pdf');\r\n sessionStorage.setItem('fileloading', 'false');\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n OpenNotesPopup(actionId: any, updateId: any, briefingId: any) {\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n sessionStorage.setItem('actionId', actionId);\r\n sessionStorage.setItem('updateId', updateId);\r\n sessionStorage.setItem('briefingId', briefingId);\r\n const modalRef = this.modalService.open(NotesPopupComponent, { size: 'lg' }).result.then(\r\n result => {\r\n if (this.isHoverButtonClick)\r\n this.GetCalendarData(this.parentSearchModel);\r\n else\r\n this.GetListViewData();\r\n this.isHoverButtonClick = false;\r\n },\r\n reason => {\r\n this.isHoverButtonClick = false;\r\n });\r\n }\r\n\r\n OpenDetailPopup(actionId: any, updateId: any, briefingId: any) {\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n sessionStorage.setItem('actionId', actionId);\r\n sessionStorage.setItem('updateId', updateId);\r\n sessionStorage.setItem('briefingId', briefingId);\r\n const modalRef = this.modalService.open(ActionItemDetailsPopupComponent, { size: 'lg' }).result.then(\r\n result => {\r\n if (result == 'Yes') {\r\n this.isHoverButtonClick = false;\r\n }\r\n if (result == 'Reload') {\r\n if (this.isHoverButtonClick)\r\n this.GetCalendarData(this.parentSearchModel);\r\n this.isHoverButtonClick = false;\r\n }\r\n },\r\n reason => {\r\n this.isHoverButtonClick = false;\r\n });\r\n }\r\n\r\n OpenDetailHoverPopup() {\r\n this.isHoverButtonClick = true;\r\n this.OpenDetailPopup(this.actionId, this.updateId, this.briefingId)\r\n }\r\n\r\n OpenStatusHoverPopup() {\r\n this.isHoverButtonClick = true;\r\n this.OpenActionStatusPopup(this.actionId, this.updateId, false, this.briefingId)\r\n }\r\n\r\n OpenNoteHoverPopup() {\r\n this.isHoverButtonClick = true;\r\n this.OpenNotesPopup(this.actionId, this.updateId, this.briefingId)\r\n }\r\n\r\n OpenAddNewActionItemHoverPopup() {\r\n this.isHoverButtonClick = true;\r\n this.openAddNewActionItemPopup();\r\n }\r\n\r\n setDeleteId(actionId: any, recurranceId: any) {\r\n this.deletedId = actionId;\r\n this.recurranceId = recurranceId;\r\n }\r\n\r\n DeleteActionItem(deletedId, recurranceId, type) {\r\n const delId = type == 1 ? deletedId : 0;\r\n const recId = type == 2 ? recurranceId : 0;\r\n this.actionServices.DeleteAction(this.tokenKey, delId, recId, this.loginUser).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Record deleted successfully.', 'Success', 'success');\r\n if (this.isHoverButtonClick)\r\n this.GetCalendarData(this.parentSearchModel);\r\n\r\n this.GetListViewData();\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n editAction(actionId) {\r\n sessionStorage.setItem('EditActionId', actionId);\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n\r\n const modalRef = this.modalService.open(EditActionPopupComponent, { windowClass: \"EditActionPopup\" }).result.then(\r\n result => {\r\n if (result == 'Yes') {\r\n if (this.isHoverButtonClick)\r\n this.GetCalendarData(this.parentSearchModel);\r\n\r\n this.GetListViewData();\r\n this.isHoverButtonClick = false;\r\n // this.GetCalendarData(this.parentSearchModel);\r\n }\r\n },\r\n reason => {\r\n this.isHoverButtonClick = false;\r\n });\r\n }\r\n\r\n onValueChange(value: Date): void {\r\n\r\n\r\n const d = new Date(value[0]);\r\n const a = [this.pad(d.getMonth() + 1), this.pad(d.getDate()), d.getFullYear()].join('/');\r\n\r\n const e = new Date(value[1]);\r\n const f = [this.pad(e.getMonth() + 1), this.pad(e.getDate()), e.getFullYear()].join('/');\r\n //debugger\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n\r\n\r\n const timeDifference = (new Date(f)).getTime() - (new Date(a)).getTime();\r\n const daysDifference = Math.floor(timeDifference / (1000 * 3600 * 24));\r\n\r\n //const timeDifference = e.getTime() - d.getTime();\r\n //const daysDifference = timeDifference / (1000 * 3600 * 24); \r\n\r\n if (daysDifference <= 120) {\r\n this.parentSearchModel.emailDeadlineDate = '';\r\n // if (this.parentSearchModel.actionTypeIds != '' && this.parentSearchModel.carrierCatIds != '' && this.parentSearchModel.stateIds != '' && this.parentSearchModel.statusIds != '') {\r\n // //this.dateTrack = 0;\r\n // if (sessionStorage.getItem('emailDeadlineDate') != '' && sessionStorage.getItem('emailDeadlineDate') != null) { \r\n // //this.emailDateTrack++;\r\n // this.parentSearchModel.emailDeadlineDate = '';\r\n // this.emailDeadlineDate = '';\r\n // this.setEmailAutoLoginParameter();\r\n // sessionStorage.removeItem('emailDeadlineDate');\r\n // }\r\n // }\r\n this.isDateChange = true;\r\n //this.parentFun(this.parentSearchModel)\r\n this.GetListViewData();\r\n this.selectdMonth = this.monthList.filter(x => x.id == d.getMonth());\r\n }\r\n else {\r\n setTimeout(() => this.toastr.error('Please select dates in the range of four months only.', 'Error!'));\r\n }\r\n }\r\n\r\n OpenEditHoverPopup() {\r\n this.isHoverButtonClick = true;\r\n this.editAction(this.actionId)\r\n }\r\n\r\n OpenDeleteHoverPopup(actionId, recurranceId) {\r\n this.isHoverButtonClick = true;\r\n this.setDeleteId(actionId, recurranceId);\r\n }\r\n\r\n showListPopupHover($event, actionItemTypeId, actionId) {\r\n this.isHoverButtonClick = false;\r\n if (actionItemTypeId == 5) {\r\n this.actionId = actionId;\r\n this.OpenEditHoverPopup()\r\n // this.listoverlayPanel.show(event, event.target);\r\n }\r\n }\r\n\r\n fillMonths() {\r\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\",\r\n \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"\r\n ];\r\n for (let index = 0; index < 12; index++) {\r\n const date = new Date();\r\n this.monthList.push({ id: index, itemName: monthNames[index] })\r\n if (date.getMonth() == index)\r\n this.selectdMonth.push({ id: index, itemName: monthNames[index] });\r\n }\r\n }\r\n fillYear() {\r\n const date = new Date();\r\n var year = 2019;\r\n for (let index = 0; year <= date.getFullYear() + 5; index++) {\r\n this.yearList.push({ id: year, itemName: year })\r\n\r\n if (date.getFullYear() == year) {\r\n this.selectedYear.push({ id: year, itemName: year });\r\n }\r\n year = year + 1;\r\n }\r\n }\r\n onMonthChange(event) {\r\n if (event) {\r\n let monthId = 1;\r\n if (Array.isArray(event) && event.length == 0) {\r\n monthId = new Date().getMonth() + 1;\r\n this.selectdMonth = this.monthList.filter(x => x.id == monthId - 1);\r\n }\r\n else {\r\n monthId = event.id + 1;\r\n if (this.selectdMonth.length == 0)\r\n this.selectdMonth = this.monthList.filter(x => x.id == monthId - 1);\r\n }\r\n const d = new Date(this.fc.calendar.view.activeStart);\r\n const a = [d.getFullYear(), this.pad(monthId), '01'].join('-');\r\n //const e = new Date(this.fc.calendar.view.currentEnd);\r\n const e = new Date(this.fc.calendar.view.activeEnd);\r\n const f = [e.getFullYear(), this.pad(monthId), this.pad(new Date(e.getFullYear(), monthId, 0).getDate())].join('-');\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n this.bsRangeValue = [d, e];\r\n // this.set120Day();\r\n this.fc.getCalendar().gotoDate(a);\r\n this.set120Day();\r\n this.GetCalendarData(this.parentSearchModel);\r\n }\r\n }\r\n onChangeYear(event) {\r\n // if (!this.currentYear)\r\n // this.currentYear = new Date().getFullYear();\r\n this.currentYear = +event.itemName;\r\n const year = this.currentYear;\r\n // return;\r\n //if (this.currentYear != year) {\r\n const d = new Date(this.fc.calendar.view.currentStart);\r\n const a = [year, this.pad(d.getMonth() + 1), '01'].join('-');\r\n const e = new Date(this.fc.calendar.view.currentEnd);\r\n const f = [year, this.pad(e.getMonth() + 1), this.pad(new Date(year, e.getMonth(), 0).getDate())].join('-');\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n this.bsRangeValue = [d, e];\r\n // this.set120Day();\r\n this.fc.getCalendar().gotoDate(a);\r\n this.set120Day();\r\n this.GetCalendarData(this.parentSearchModel);\r\n //}\r\n }\r\n setCurrentMonthAndYear(currentDate = false) {\r\n const d = currentDate ? new Date() : new Date(this.fc.calendar.view.currentStart);\r\n this.selectdMonth = this.monthList.filter(x => x.id == d.getMonth());\r\n this.currentYear = d.getFullYear();\r\n this.selectedYear = [];\r\n this.selectedYear.push({ id: this.currentYear, itemName: this.currentYear });\r\n }\r\n\r\n\r\n FilterClear() {\r\n this.titleSearch = \"\";\r\n if (!this.isListShow) {\r\n this.GetCalendarData(this.parentSearchModel);\r\n } else {\r\n this.GetListViewData();\r\n }\r\n \r\n }\r\n\r\n inputFilters() {\r\n if (!this.isListShow) {\r\n this.GetCalendarData(this.parentSearchModel);\r\n } else {\r\n this.GetListViewData();\r\n }\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L0FjdGlvbkl0ZW0vYWlob21lL2FpaG9tZS5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-aihome',\r\n templateUrl: './aihome.component.html',\r\n styleUrls: ['./aihome.component.css']\r\n})\r\nexport class AIHomeComponent implements OnInit {\r\n\r\n years: any = Date.now();\r\n lastLogin: string = '';\r\n name: string = '';\r\n ClientSelectedTool: string;\r\n\r\n constructor(private titleService: Title) {\r\n this.lastLogin = sessionStorage.getItem('LastLogin'); \r\n this.name = sessionStorage.getItem('FirstLastName');\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.titleService.setTitle('Home');\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \"body .calendar_mn .fc .fc-toolbar .fc-button{\\r\\n background-color: #0039BF !important;\\r\\n border: 1px solid #0039BF !important;\\r\\n }\\r\\n \\r\\n body .fc .fc-toolbar .fc-button{\\r\\n background-color: #0039BF !important; \\r\\n border: 1px solid #0039BF !important;\\r\\n }\\r\\n \\r\\n .noscroll {\\r\\n min-width: 100% !important;\\r\\n }\\r\\n \\r\\n .fc-view-container *, .fc-view-container :after, .fc-view-container :before {\\r\\n box-sizing: content-box !important;\\r\\n cursor: pointer !important;\\r\\n }\\r\\n \\r\\n .calenderpart {\\r\\n position: relative;\\r\\n }\\r\\n \\r\\n .calenderpart .calenderMonth {\\r\\n position: absolute;\\r\\n position: absolute;\\r\\n max-width: 300px;\\r\\n width: 100%;\\r\\n left: 50%;\\r\\n -webkit-transform: translate(-50%, 10px);\\r\\n transform: translate(-50%, 10px);\\r\\n z-index: 999;\\r\\n }\\r\\n \\r\\n ::ng-deep.calenderpart .calenderMonth .selected-list .c-btn {\\r\\n background: none !important;\\r\\n border: none !important;\\r\\n font-size: 24px !important;\\r\\n line-height: 0;\\r\\n padding-right: 30px;\\r\\n -webkit-box-pack: end;\\r\\n justify-content: flex-end;\\r\\n }\\r\\n \\r\\n .calenderpart .calenderMonth input.form-control {\\r\\n background: none;\\r\\n border: none;\\r\\n font-size: 24px;\\r\\n padding-left: 0px;\\r\\n width: 90px;\\r\\n height: 38px;\\r\\n }\\r\\n \\r\\n ::ng-deep.calenderpart .arrow-down, ::ng-deep.calenderpart .arrow-up{\\r\\n margin-left: 85px;\\r\\n }\\r\\n \\r\\n ::ng-deep.calenderpart .fc-center h2, ::ng-deep.calenderpart .c-remove{\\r\\n display: none;\\r\\n }\\r\\n \\r\\n ::ng-deep.body .fc .fc-event\\r\\n {\\r\\n color: black;\\r\\n }\\r\\n \\r\\n ::ng-deep .calenderpart1 .fc-scroller,::ng-deep .calenderpart1 .fc-time-grid-container{\\r\\n height: 0px !important;\\r\\n }\\r\\n \\r\\n ::ng-deep .fc-timeGridWeek-button{\\r\\n display: none !important;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvQWN0aW9uSXRlbS9kYXNoYm9hcmQvZGFzaGJvYXJkLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxvQ0FBb0M7SUFDcEMsb0NBQW9DO0VBQ3RDOztFQUVBO0lBQ0Usb0NBQW9DO0lBQ3BDLG9DQUFvQztFQUN0Qzs7RUFFQTtJQUNFLDBCQUEwQjtFQUM1Qjs7RUFFQTtJQUNFLGtDQUFrQztJQUNsQywwQkFBMEI7RUFDNUI7O0VBRUE7SUFDRSxrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsU0FBUztJQUNULHdDQUFnQztZQUFoQyxnQ0FBZ0M7SUFDaEMsWUFBWTtFQUNkOztFQUVBO0lBQ0UsMkJBQTJCO0lBQzNCLHVCQUF1QjtJQUN2QiwwQkFBMEI7SUFDMUIsY0FBYztJQUNkLG1CQUFtQjtJQUNuQixxQkFBeUI7WUFBekIseUJBQXlCO0VBQzNCOztFQUVBO0lBQ0UsZ0JBQWdCO0lBQ2hCLFlBQVk7SUFDWixlQUFlO0lBQ2YsaUJBQWlCO0lBQ2pCLFdBQVc7SUFDWCxZQUFZO0VBQ2Q7O0VBQ0E7SUFDRSxpQkFBaUI7RUFDbkI7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7O0lBRUUsWUFBWTtFQUNkOztFQUVBO0lBQ0Usc0JBQXNCO0VBQ3hCOztFQUVBO0lBQ0Usd0JBQXdCO0VBQzFCIiwiZmlsZSI6InNyYy9hcHAvRnJvbnQvQWN0aW9uSXRlbS9kYXNoYm9hcmQvZGFzaGJvYXJkLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IC5jYWxlbmRhcl9tbiAuZmMgLmZjLXRvb2xiYXIgLmZjLWJ1dHRvbntcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkYgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDM5QkYgIWltcG9ydGFudDtcclxuICB9XHJcbiAgXHJcbiAgYm9keSAuZmMgLmZjLXRvb2xiYXIgLmZjLWJ1dHRvbntcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkYgIWltcG9ydGFudDsgXHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAzOUJGICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIFxyXG4gIC5ub3Njcm9sbCB7XHJcbiAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICB9XHJcbiAgXHJcbiAgLmZjLXZpZXctY29udGFpbmVyICosIC5mYy12aWV3LWNvbnRhaW5lciA6YWZ0ZXIsIC5mYy12aWV3LWNvbnRhaW5lciA6YmVmb3JlIHtcclxuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94ICFpbXBvcnRhbnQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcclxuICB9XHJcbiAgXHJcbiAgLmNhbGVuZGVycGFydCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG4gIFxyXG4gIC5jYWxlbmRlcnBhcnQgLmNhbGVuZGVyTW9udGgge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMTBweCk7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcC5jYWxlbmRlcnBhcnQgLmNhbGVuZGVyTW9udGggLnNlbGVjdGVkLWxpc3QgLmMtYnRuIHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBsaW5lLWhlaWdodDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gIH1cclxuICBcclxuICAuY2FsZW5kZXJwYXJ0IC5jYWxlbmRlck1vbnRoIGlucHV0LmZvcm0tY29udHJvbCB7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbiAgICB3aWR0aDogOTBweDtcclxuICAgIGhlaWdodDogMzhweDtcclxuICB9XHJcbiAgOjpuZy1kZWVwLmNhbGVuZGVycGFydCAuYXJyb3ctZG93biwgOjpuZy1kZWVwLmNhbGVuZGVycGFydCAuYXJyb3ctdXB7XHJcbiAgICBtYXJnaW4tbGVmdDogODVweDtcclxuICB9XHJcbiAgXHJcbiAgOjpuZy1kZWVwLmNhbGVuZGVycGFydCAuZmMtY2VudGVyIGgyLCA6Om5nLWRlZXAuY2FsZW5kZXJwYXJ0IC5jLXJlbW92ZXtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcC5ib2R5IC5mYyAuZmMtZXZlbnRcclxuICB7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcCAuY2FsZW5kZXJwYXJ0MSAuZmMtc2Nyb2xsZXIsOjpuZy1kZWVwIC5jYWxlbmRlcnBhcnQxIC5mYy10aW1lLWdyaWQtY29udGFpbmVye1xyXG4gICAgaGVpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIDo6bmctZGVlcCAuZmMtdGltZUdyaWRXZWVrLWJ1dHRvbntcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9Il19 */\"","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { DashboardCountModel } from 'src/Models/DashboardCountModel';\r\nimport { DashboardNotesModel } from 'src/Models/DashboardNotesModel';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NotesPopupComponent } from 'src/app/Shared/notes-popup/notes-popup.component';\r\nimport { ToolEnum } from '../../../../Models/Common';\r\nimport { ActionCalendarSearch } from 'src/Models/actionCalendarSearchModel';\r\nimport { ActionItemListViewModel } from 'src/Models/ActionItemListViewModel';\r\nimport { ActionStatusPopupComponent } from 'src/app/Shared/action-status-popup/action-status-popup.component';\r\nimport { AddNewActionPopupComponent } from 'src/app/Shared/add-new-action-popup/add-new-action-popup.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport dayGridPlugin from '@fullcalendar/daygrid';\r\nimport timeGridPlugin from '@fullcalendar/timegrid';\r\nimport interactionPlugin from '@fullcalendar/interaction';\r\n// import { FullCalendar } from 'primeng';\r\nimport { SearchPanelComponent } from 'src/app/Shared/search-panel/search-panel.component';\r\nimport { FullCalendar } from 'primeng/fullcalendar/primeng-fullcalendar';\r\nimport { ActionItemCalendarModel } from 'src/Models/ActionItemCalendarModel';\r\nimport { EditActionPopupComponent } from 'src/app/Shared/edit-action-popup/edit-action-popup.component';\r\nimport { ActionItemDetailsPopupComponent } from 'src/app/Shared/action-item-details-popup/action-item-details-popup.component';\r\nimport { OverlayPanel } from 'primeng';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { stateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { ActionActivity } from 'src/Models/Common';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-dashboard',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.css']\r\n})\r\nexport class ActionItemDashboardComponent implements OnInit {\r\n tokenKey: string = '';\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean;\r\n loginUser: any;\r\n\r\n @ViewChild('ucCalendar', { static: false }) fc: FullCalendar;\r\n @ViewChild('search', { static: false }) search: SearchPanelComponent;\r\n\r\n fromDate: string = '';\r\n toDate: string = '';\r\n bsRangeValue: Date[];\r\n CurrentTime = new Date();\r\n EndTime = new Date();\r\n\r\n dashboardCounterModel = new DashboardCountModel();\r\n dashboardNotesModel: DashboardNotesModel[];\r\n reminderList: ActionItemListViewModel[];\r\n\r\n isdashboardCounterDataLoad: boolean = false;\r\n dashboardCounterTotalRecords: number = -1;\r\n isdashboardNotesDataLoad: boolean = false;\r\n dashboardNotesTotalRecords: number = -1;\r\n isReminderDataLoad: boolean = false;\r\n\r\n isdashboardActionItemsRequiredAttentionDataLoad: boolean = false;\r\n dashboardActionItemsRequiredAttentionTotalRecords: number = -1;\r\n\r\n ClientSelectedTool: string;\r\n productId: number = 1;\r\n\r\n parentSearchModel = new ActionCalendarSearch();\r\n listView: ActionItemListViewModel[];\r\n orderBy: any = '';\r\n isAscending: boolean = false;\r\n upDowDeadlineDateCSS: string = '';\r\n upDowStateCSS: string = '';\r\n upDowTypeCSS: string = '';\r\n upDowCategoryCSS: string = '';\r\n upDowStatusCSS: string = '';\r\n upDowNotesCSS: string = '';\r\n\r\n upDowReminderDeadlineDateCSS: string = 'active-up';\r\n upDowReminderStateCSS: string = '';\r\n upDowReminderCategoryCSS: string = '';\r\n upDowReminderStatusCSS:string = '';\r\n isReminderAscending: boolean = false;\r\n reminderorderBy: any = 'DeadlineDate';\r\n\r\n FilterFavourite: boolean = false;\r\n isMyTracIt: boolean = false;\r\n isListShow: boolean = false;\r\n\r\n options: any;\r\n defaultView: string = 'timeGridWeek';\r\n events: ActionItemCalendarModel[];\r\n\r\n actionId: number = 0;\r\n updateId: number = 0;\r\n headerString: string = '';\r\n briefingId: number = 0;\r\n isActionCompanySpecific: boolean = false;\r\n isInformativeOnly: boolean = false;\r\n isHoverButtonClick: boolean = false;\r\n\r\n isDateChange: boolean = false;\r\n recurranceId = 0;\r\n monthList = [];\r\n yearList = [];\r\n monthyearSettings = {};\r\n selectdMonth = [];\r\n selectedYear = [];\r\n currentYear = new Date().getFullYear();\r\n isClickOnDashboard: boolean = false;\r\n showDescription: boolean = true;\r\n\r\n companyId: number;\r\n titleSearch:string;\r\n\r\n constructor(private toastr: ToastrService, private titleService: Title, private router: Router, private modalService: NgbModal, private checkAuth: CheckAuth, private actionServices: ActionItemService,private matrix: MatrixService,private activedRoute: ActivatedRoute, private appActivity: ApplicationActivityService) {\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.companyId = +sessionStorage.getItem(\"CompanyId\");\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.loginUser = sessionStorage.getItem('UserId');\r\n this.resetDate();\r\n // this.GetRightPanelStateList();\r\n this.titleService.setTitle('Dashboard');\r\n this.parentSearchModel.isMyTracIt = this.isMyTracIt;\r\n this.titleSearch=\"\";\r\n this.loadCalanderSetting();\r\n // this.loadWeekData();\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.setSearchSetting();\r\n this.GetActionItemDashboardCounts();\r\n //this.GetActionItemDashboardNotes();\r\n this.ActionItemForReminderDashbaord();\r\n this.GetDashboardActionItemsReuiredAttention();\r\n ApplicationActivityStore('View', 'Trac It - Providers', this.appActivity, ToolEnum.actionitem, ActionActivity['Trac It'], '/trac-it/Dashboard');\r\n }\r\n\r\n setSearchSetting() {\r\n\r\n if (sessionStorage.getItem('dashboardSettingFromDate') != '' && sessionStorage.getItem('dashboardSettingFromDate') != null &&\r\n sessionStorage.getItem('dashboardSettingToDate') != '' && sessionStorage.getItem('dashboardSettingToDate') != null) {\r\n this.fromDate = sessionStorage.getItem('dashboardSettingFromDate');\r\n this.toDate = sessionStorage.getItem('dashboardSettingToDate');\r\n let CurrentTime = new Date(this.fromDate);\r\n let EndTime = new Date(this.toDate);\r\n this.bsRangeValue = [CurrentTime, EndTime];\r\n // sessionStorage.removeItem('dashboardSettingFromDate');\r\n // sessionStorage.removeItem('dashboardSettingToDate');\r\n }\r\n\r\n if (sessionStorage.getItem('dashboardSettingIsFavorite') == 'true' && sessionStorage.getItem('dashboardSettingIsFavorite') != null) {\r\n this.FilterFavourite = true;\r\n this.parentSearchModel.isFavorite = true;\r\n //sessionStorage.removeItem('dashboardSettingIsFavorite');\r\n }\r\n\r\n if (sessionStorage.getItem('dashboardSettingIsMyTracIt') == 'true' && sessionStorage.getItem('dashboardSettingIsMyTracIt') != null) {\r\n this.isMyTracIt = true;\r\n this.parentSearchModel.isMyTracIt = true;\r\n //sessionStorage.removeItem('dashboardSettingIsMyTracIt');\r\n }\r\n }\r\n\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n GetActionItemDashboardCounts() {\r\n this.isdashboardCounterDataLoad = true;\r\n this.actionServices.GetActionItemDashboardCounts(this.tokenKey, this.loginUser, this.fromDate, this.toDate, this.FilterFavourite, this.isMyTracIt).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.isdashboardCounterDataLoad = false;\r\n this.dashboardCounterModel = data['dashboardCouter'];\r\n if (this.dashboardCounterModel != null) {\r\n\r\n }\r\n }\r\n },\r\n error => {\r\n this.isdashboardCounterDataLoad = false;\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n GetActionItemDashboardNotes() {\r\n this.isdashboardNotesDataLoad = true;\r\n this.actionServices.GetActionItemDashboardNotes(this.tokenKey, this.loginUser, this.fromDate, this.toDate, this.FilterFavourite, this.isMyTracIt).subscribe(\r\n data => {\r\n this.isdashboardNotesDataLoad = false;\r\n if (data['status'] == 'Success') {\r\n this.dashboardNotesModel = data['dashboardNotes'];\r\n if (this.dashboardNotesModel != null) {\r\n this.dashboardNotesTotalRecords = this.dashboardNotesModel.length;\r\n }\r\n }\r\n },\r\n error => {\r\n this.isdashboardNotesDataLoad = false;\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n ActionItemForReminderDashbaord() {\r\n setTimeout(() => {\r\n this.isReminderDataLoad = true;\r\n this.parentSearchModel.Search=this.titleSearch;\r\n this.actionServices.ActionItemForReminderDashbaord(this.tokenKey, this.reminderorderBy, this.parentSearchModel).subscribe(\r\n data => {\r\n this.isReminderDataLoad = false;\r\n \r\n if (data['status'] == 'Success') {\r\n this.reminderList = data['reminderList'];\r\n }\r\n \r\n \r\n },\r\n error => {\r\n this.isReminderDataLoad = false;\r\n this.unblockDocument();\r\n }\r\n );\r\n }, 500);\r\n }\r\n\r\n onValueChange(value: Date): void {\r\n function pad(s) { return (s < 10) ? '0' + s : s; }\r\n const d = new Date(value[0]);\r\n const a = [pad(d.getMonth() + 1), pad(d.getDate()), d.getFullYear()].join('/');\r\n\r\n const e = new Date(value[1]);\r\n const f = [pad(e.getMonth() + 1), pad(e.getDate()), e.getFullYear()].join('/');\r\n\r\n this.fromDate = a;\r\n this.toDate = f;\r\n\r\n this.parentSearchModel.dateFrom = this.fromDate;\r\n this.parentSearchModel.toDate = this.toDate;\r\n\r\n const timeDifference = (new Date(this.toDate)).getTime() - (new Date(this.fromDate)).getTime();\r\n const daysDifference = Math.floor(timeDifference / (1000 * 3600 * 24));\r\n if (daysDifference <= 120) {\r\n this.GetActionItemDashboardCounts();\r\n //this.GetActionItemDashboardNotes();\r\n this.GetDashboardActionItemsReuiredAttention();\r\n this.ActionItemForReminderDashbaord();\r\n this.saveDashboardSetting();\r\n }\r\n else {\r\n setTimeout(() => this.toastr.error('Please select dates in the range of four months only.', 'Error!'));\r\n }\r\n }\r\n\r\n resetDate() {\r\n\r\n this.CurrentTime = new Date();\r\n this.EndTime = new Date();\r\n this.CurrentTime.setDate(this.EndTime.getDate());\r\n let curr = new Date( this.CurrentTime); // get current date\r\n let first = curr.getDate() - curr.getDay(); // First day is the day of the month - the day of the week\r\n let last = first + 6;\r\n this.CurrentTime = new Date(curr.setDate(first)),\r\n this.EndTime = new Date(curr.setDate(last))\r\n\r\n this.fromDate = this.CurrentTime.getFullYear() + '-' + (this.CurrentTime.getMonth() + 1) + '-' + this.CurrentTime.getDate();\r\n this.toDate = this.EndTime.getFullYear() + '-' + (this.EndTime.getMonth() + 1) + '-' + this.EndTime.getDate();\r\n // this.EndTime.setDate(this.EndTime.getDate() + 30);\r\n this.bsRangeValue = [this.CurrentTime, this.EndTime];\r\n this.parentSearchModel.userId = this.loginUser;\r\n this.parentSearchModel.dateFrom = this.fromDate;\r\n this.parentSearchModel.toDate = this.toDate;\r\n }\r\n\r\n OpenNotesPopup(actionId: any, updateId: any, briefingId: any) {\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n sessionStorage.setItem('actionId', actionId);\r\n sessionStorage.setItem('updateId', updateId);\r\n sessionStorage.setItem('briefingId', briefingId);\r\n const modalRef = this.modalService.open(NotesPopupComponent, { size: 'lg' }).result.then(\r\n result => {\r\n //this.GetActionItemDashboardNotes();\r\n this.GetDashboardActionItemsReuiredAttention();\r\n this.ActionItemForReminderDashbaord();\r\n },\r\n reason => {\r\n this.isHoverButtonClick = false; \r\n });\r\n }\r\n\r\n GetDashboardActionItemsReuiredAttention() {\r\n this.isdashboardActionItemsRequiredAttentionDataLoad = true;\r\n this.listView = [];\r\n this.parentSearchModel.Search=this.titleSearch;\r\n this.actionServices.GetDashboardActionItemsReuiredAttention(this.tokenKey, this.orderBy, this.parentSearchModel).subscribe(\r\n data => {\r\n this.isdashboardActionItemsRequiredAttentionDataLoad = false;\r\n this.unblockDocument();\r\n this.listView = data['listView'];\r\n if (this.listView != null) {\r\n this.dashboardActionItemsRequiredAttentionTotalRecords = this.listView.length;\r\n }\r\n },\r\n error => {\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n setClass(status) {\r\n if (status === 'Acknowledged') {\r\n return 'btn label label-primary ack_message';\r\n } else if (status === 'Done') {\r\n return 'btn label label-success done_message';\r\n } else if (status === 'Pending') {\r\n return 'btn label label-danger btn_pendding';\r\n } else {\r\n return 'btn label label-default ign_message';\r\n }\r\n }\r\n\r\n sort(sortBy: string) {\r\n this.upDowDeadlineDateCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowTypeCSS = '';\r\n this.upDowCategoryCSS = '';\r\n this.upDowStatusCSS = '';\r\n this.upDowNotesCSS = '';\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"DeadlineDate\") {\r\n this.upDowDeadlineDateCSS = 'active';\r\n }\r\n else if (sortBy === \"State\") {\r\n this.upDowStateCSS = 'active';\r\n }\r\n else if (sortBy === \"Type\") {\r\n this.upDowTypeCSS = 'active';\r\n }\r\n else if (sortBy === \"Category\") {\r\n this.upDowCategoryCSS = 'active';\r\n }\r\n else if (sortBy === \"Status\") {\r\n this.upDowStatusCSS = 'active';\r\n }\r\n else if (sortBy === \"Notes\") {\r\n this.upDowNotesCSS = 'active';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.orderBy = sortBy;\r\n\r\n if (sortBy === \"DeadlineDate\") {\r\n this.upDowDeadlineDateCSS = 'active-up';\r\n }\r\n else if (sortBy === \"State\") {\r\n this.upDowStateCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Type\") {\r\n this.upDowTypeCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Category\") {\r\n this.upDowCategoryCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Status\") {\r\n this.upDowStatusCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Notes\") {\r\n this.upDowNotesCSS = 'active-up';\r\n }\r\n }\r\n this.GetDashboardActionItemsReuiredAttention();\r\n this.ActionItemForReminderDashbaord();\r\n }\r\n\r\n OpenActionStatusPopup(actionId: any, updateId: any, isInformationOnly: boolean, briefingId: any) {\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n sessionStorage.setItem('actionId', actionId);\r\n sessionStorage.setItem('updateId', updateId);\r\n sessionStorage.setItem('briefingId', briefingId);\r\n if (isInformationOnly) {\r\n this.OpenNotesPopup(actionId, updateId, briefingId);\r\n }\r\n else {\r\n const modalRef = this.modalService.open(ActionStatusPopupComponent, { size: 'lg' }).result.then(\r\n result => {\r\n\r\n if (result == 'Yes'|| result == 'Reload') {\r\n this.GetDashboardActionItemsReuiredAttention();\r\n //this.GetActionItemDashboardNotes();\r\n this.ActionItemForReminderDashbaord();\r\n }\r\n },\r\n reason => {\r\n });\r\n }\r\n }\r\n\r\n // OpenActionStatusPopup1(actionId: any, updateId: any, isInformationOnly: boolean, briefingId: any) {\r\n // sessionStorage.setItem('productId', this.productId.toString());\r\n // sessionStorage.setItem('actionId', actionId);\r\n // sessionStorage.setItem('updateId', updateId);\r\n // sessionStorage.setItem('briefingId', briefingId);\r\n // if (isInformationOnly) {\r\n // this.OpenNotesPopup(actionId, updateId, briefingId);\r\n // }\r\n // else {\r\n // const modalRef = this.modalService.open(ActionStatusPopupComponent, { size: 'lg' }).result.then(\r\n // result => {\r\n\r\n // if (result == 'Yes'|| result == 'Reload') {\r\n // this.GetDashboardActionItemsReuiredAttention();\r\n // //this.GetActionItemDashboardNotes();\r\n // this.ActionItemForReminderDashbaord();\r\n // }\r\n // },\r\n // reason => {\r\n // });\r\n // }\r\n // }\r\n\r\n openAddNewActionItemPopup() {\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n const modalRef = this.modalService.open(AddNewActionPopupComponent, { windowClass: \"AddNewActionPopup\"}).result.then(\r\n result => {\r\n if (result == 'Yes') {\r\n this.GetDashboardActionItemsReuiredAttention();\r\n }\r\n },\r\n reason => {\r\n\r\n });\r\n }\r\n\r\n redirectToActionItemList(listId: any, type: any) {\r\n if (this.checkDayIs120()) {\r\n sessionStorage.setItem('isClickOnDashboard', 'true');\r\n sessionStorage.setItem('dashboardFromDate', this.fromDate);\r\n sessionStorage.setItem('dashboardToDate', this.toDate);\r\n sessionStorage.setItem('dashboardIsFavorite', this.FilterFavourite.toString());\r\n sessionStorage.setItem('dashboardIsMyTracIt', this.isMyTracIt.toString());\r\n\r\n this.saveDashboardSetting();\r\n\r\n if (type == 'actionType') {\r\n sessionStorage.setItem('dashboardSummaryType', listId);\r\n }\r\n else if (type == 'carrier') {\r\n sessionStorage.setItem('dashboardCarrierCategories', listId);\r\n }\r\n else if (type == 'actionStatus') {\r\n sessionStorage.setItem('dashboardActionStatus', listId);\r\n }\r\n this.router.navigate(['/trac-it/Calendar']);\r\n }\r\n }\r\n\r\n loadMyFavourite() {\r\n this.FilterFavourite = !this.FilterFavourite;\r\n this.parentSearchModel.isFavorite = this.FilterFavourite;\r\n this.GetActionItemDashboardCounts();\r\n this.GetDashboardActionItemsReuiredAttention();\r\n //this.GetActionItemDashboardNotes();\r\n this.saveDashboardSetting();\r\n this.ActionItemForReminderDashbaord();\r\n }\r\n\r\n loadMyTracIt() {\r\n this.isMyTracIt = !this.isMyTracIt;\r\n this.parentSearchModel.isMyTracIt = this.isMyTracIt;\r\n this.GetActionItemDashboardCounts();\r\n this.GetDashboardActionItemsReuiredAttention();\r\n //this.GetActionItemDashboardNotes();\r\n this.saveDashboardSetting();\r\n this.ActionItemForReminderDashbaord();\r\n }\r\n\r\n saveDashboardSetting() {\r\n\r\n sessionStorage.setItem('dashboardSettingFromDate', this.fromDate);\r\n sessionStorage.setItem('dashboardSettingToDate', this.toDate);\r\n sessionStorage.setItem('dashboardSettingIsFavorite', this.FilterFavourite.toString());\r\n sessionStorage.setItem('dashboardSettingIsMyTracIt', this.isMyTracIt.toString());\r\n }\r\n\r\n checkDayIs120() {\r\n function pad(s) { return (s < 10) ? '0' + s : s; }\r\n const d = new Date(this.parentSearchModel.dateFrom);\r\n const a = [pad(d.getMonth() + 1), pad(d.getDate()), d.getFullYear()].join('/');\r\n\r\n const e = new Date(this.parentSearchModel.toDate);\r\n const f = [pad(e.getMonth() + 1), pad(e.getDate()), e.getFullYear()].join('/');\r\n\r\n this.fromDate = a;\r\n this.toDate = f;\r\n\r\n this.parentSearchModel.dateFrom = this.fromDate;\r\n this.parentSearchModel.toDate = this.toDate;\r\n\r\n const timeDifference = (new Date(this.toDate)).getTime() - (new Date(this.fromDate)).getTime();\r\n const daysDifference = Math.floor(timeDifference / (1000 * 3600 * 24));\r\n\r\n //const timeDifference = e.getTime() - d.getTime();\r\n //const daysDifference = timeDifference / (1000 * 3600 * 24);\r\n if (daysDifference <= 120) {\r\n return true;\r\n }\r\n else {\r\n setTimeout(() => this.toastr.error('Please select dates in the range of four months only.', 'Error!'));\r\n return false;\r\n }\r\n }\r\n reminderSort(sortBy: string) {\r\n this.upDowReminderDeadlineDateCSS = '';\r\n this.upDowReminderCategoryCSS = '';\r\n this.upDowReminderStateCSS = '';\r\n this.upDowReminderStatusCSS = '';\r\n if (!this.isReminderAscending) {\r\n this.isReminderAscending = true;\r\n this.reminderorderBy = sortBy + ' DESC';\r\n if (sortBy === \"DeadlineDate\") {\r\n this.upDowReminderDeadlineDateCSS = 'active';\r\n }\r\n else if (sortBy === \"State\") {\r\n this.upDowReminderStateCSS = 'active';\r\n }\r\n else if (sortBy === \"Category\") {\r\n this.upDowReminderCategoryCSS = 'active';\r\n }\r\n else if (sortBy === \"Status\"){\r\n this.upDowReminderStatusCSS ='active';\r\n }\r\n }\r\n else {\r\n this.isReminderAscending = false;\r\n this.reminderorderBy = sortBy;\r\n if (sortBy === \"DeadlineDate\") {\r\n this.upDowReminderDeadlineDateCSS = 'active-up';\r\n }\r\n else if (sortBy === \"State\") {\r\n this.upDowReminderStateCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Category\") {\r\n this.upDowReminderCategoryCSS = 'active-up';\r\n }\r\n else if (sortBy === \"Status\") {\r\n this.upDowReminderStatusCSS = 'active-up';\r\n }\r\n }\r\n this.ActionItemForReminderDashbaord();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setDefaultDate();\r\n // this.setDashboardSession();\r\n this.bindEvents();\r\n }\r\n\r\n \r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n loadCalanderSetting() {\r\n this.options = {\r\n editable: false,\r\n plugins: [dayGridPlugin, timeGridPlugin, interactionPlugin],\r\n defaultView: this.defaultView,\r\n displayEventTime: false,\r\n displayEventEnd: false,\r\n minTime: '00:00:00',\r\n maxTime: '00:00:00',\r\n views: {\r\n dayGrid: {\r\n eventLimit: 4\r\n }\r\n },\r\n header: {\r\n left: 'prev,next, today',\r\n right: 'timeGridWeek'\r\n },\r\n buttonText:\r\n {\r\n today: 'Today',\r\n month: 'Month',\r\n week: 'Week',\r\n list: 'List'\r\n },\r\n customButtons: {\r\n customList: {\r\n text: \"List\",\r\n click: r => {\r\n this.defaultView = 'customList'\r\n this.unBindEvents();\r\n this.search.showHideCalendar(true);\r\n this.listView = [];\r\n this.set120Day();\r\n this.isListShow = true;\r\n this.sort(\"DeadlineDate\");\r\n }\r\n },\r\n },\r\n eventRender: function (event, element, view) {\r\n\r\n },\r\n eventAfterRender: function (event, element, view) {\r\n\r\n }\r\n };\r\n\r\n \r\n }\r\n \r\n showCalander(defaultView: any) {\r\n this.fc.calendar.changeView(defaultView);\r\n if (defaultView == 'timeGridWeek') {\r\n this.loadWeekData();\r\n }\r\n\r\n this.defaultView = defaultView;\r\n this.isListShow = false;\r\n //this.loadCalanderSetting();\r\n this.search.showHideCalendar(false);\r\n\r\n\r\n // setTimeout(() => {\r\n // this.bindEvents();\r\n // this.hideWeekViewTimeLine();\r\n // }, 200);\r\n // this.setCurrentMonthAndYear(true);\r\n }\r\n\r\n loadWeekData() {\r\n\r\n const d = new Date(this.fc.calendar.view.currentStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n const e = new Date(this.fc.calendar.view.currentEnd);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n this.parentSearchModel.productId=this.productId\r\n // this.hideWeekViewTimeLine();\r\n this.GetCalendarData(this.parentSearchModel);\r\n }\r\n\r\n unBindEvents() {\r\n const prevButton = this.fc.el.nativeElement.getElementsByClassName('fc-prev-button');\r\n const nextButton = this.fc.el.nativeElement.getElementsByClassName('fc-next-button');\r\n const todayButton = this.fc.el.nativeElement.getElementsByClassName('fc-today-button');\r\n const monthButton = this.fc.el.nativeElement.getElementsByClassName('fc-dayGridMonth-button');\r\n const weekButton = this.fc.el.nativeElement.getElementsByClassName('fc-timeGridWeek-button');\r\n\r\n prevButton[0].removeEventListener('click', () => {\r\n });\r\n nextButton[0].removeEventListener('click', () => {\r\n });\r\n todayButton[0].removeEventListener('click', () => {\r\n });\r\n monthButton[0].removeEventListener('click', () => {\r\n });\r\n weekButton[0].removeEventListener('click', () => {\r\n });\r\n }\r\n\r\n set120Day() {\r\n let CurrentTime = new Date(this.fc.calendar.view.currentStart);\r\n\r\n var firstDay = new Date(CurrentTime.getFullYear(), CurrentTime.getMonth(), 1);\r\n\r\n firstDay.setDate(firstDay.getDate() - 30);\r\n\r\n var lastDay = new Date(CurrentTime.getFullYear(), CurrentTime.getMonth(), this.daysInMonth(CurrentTime.getMonth() + 1,\r\n CurrentTime.getFullYear()));\r\n\r\n lastDay.setDate(lastDay.getDate() + 60);\r\n\r\n const dd = new Date(firstDay);\r\n const aa = [this.pad(dd.getMonth() + 1), this.pad(dd.getDate()), dd.getFullYear()].join('/');\r\n\r\n const ee = new Date(lastDay);\r\n const ff = [this.pad(ee.getMonth() + 1), this.pad(ee.getDate()), ee.getFullYear()].join('/');\r\n\r\n this.parentSearchModel.dateFrom = aa;\r\n this.parentSearchModel.toDate = ff;\r\n // this.bsRangeValue = [dd, ee];\r\n }\r\n\r\n pad(s) {\r\n return (s < 10) ? '0' + s : s;\r\n }\r\n\r\n daysInMonth(month, year) {\r\n return new Date(year, month, 0).getDate();\r\n }\r\n\r\n eventClick(event: any) {\r\n\r\n if (event.target.className == \"fc-title\" || event.target.className == \"fc-content\") {\r\n let parentOffset = event.target.offsetParent;\r\n if (event.target.className == \"fc-title\") {\r\n parentOffset = event.target.offsetParent.offsetParent;\r\n }\r\n if (parentOffset) {\r\n const classes = parentOffset.className.split(' ');\r\n if (classes.length > 0) {\r\n classes.forEach((element, i) => {\r\n if (element.includes('event-format_')) {\r\n this.actionId = element.split('_')[1];\r\n this.updateId = element.split('_')[2];\r\n let companySpecific = element.split('_')[3];\r\n let isInformativeOnly = element.split('_')[4];\r\n this.briefingId = element.split('_')[5];\r\n if (companySpecific > 0)\r\n this.isActionCompanySpecific = true;\r\n else\r\n this.isActionCompanySpecific = false;\r\n\r\n if (isInformativeOnly > 0) {\r\n this.isInformativeOnly = true;\r\n this.OpenNoteHoverPopup();\r\n }\r\n else {\r\n this.isInformativeOnly = false;\r\n this.OpenStatusHoverPopup()\r\n }\r\n\r\n }\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n GetCalendarData(searchModel: ActionCalendarSearch) {\r\n this.blockDocument();\r\n searchModel.Search=this.titleSearch;\r\n\r\n this.actionServices.getDashboardCalendarData(this.tokenKey, searchModel).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n this.events = data['actionItem'];\r\n searchModel.toDate = this.parentSearchModel.toDate;\r\n searchModel.dateFrom = this.parentSearchModel.dateFrom;\r\n },\r\n error => {\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n GetListViewData() {\r\n this.listView = [];\r\n this.blockDocument();\r\n this.parentSearchModel.Search=this.titleSearch;\r\n this.actionServices.getListViewData(this.tokenKey, this.orderBy, this.parentSearchModel).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n this.isDateChange = false;\r\n this.listView = data['listView'];\r\n if (this.listView != null) {\r\n if (this.listView.length > 0) {\r\n }\r\n }\r\n this.search.showHideCalendar(true);\r\n this.headerString = '';\r\n if (this.parentSearchModel != null) {\r\n if (this.parentSearchModel.toDate != '' && this.parentSearchModel.toDate != null && this.parentSearchModel.dateFrom != '' && this.parentSearchModel.dateFrom != null) {\r\n if (this.parentSearchModel.emailDeadlineDate != '' && this.parentSearchModel.emailDeadlineDate != null) {\r\n let sDate = new Date(this.parentSearchModel.emailDeadlineDate);\r\n let eDate = new Date(this.parentSearchModel.emailDeadlineDate);\r\n\r\n const start = [this.pad(sDate.getMonth() + 1), this.pad(sDate.getDate()), sDate.getFullYear()].join('/');\r\n const end = [this.pad(eDate.getMonth() + 1), this.pad(eDate.getDate()), eDate.getFullYear()].join('/');\r\n this.headerString = \"Calendar Items From \" + start + \" To \" + end;\r\n }\r\n else {\r\n //debugger\r\n let sDate = new Date(this.parentSearchModel.dateFrom);\r\n let eDate = new Date(this.parentSearchModel.toDate);\r\n\r\n const start = [this.pad(sDate.getMonth() + 1), this.pad(sDate.getDate()), sDate.getFullYear()].join('/');\r\n const end = [this.pad(eDate.getMonth() + 1), this.pad(eDate.getDate()), eDate.getFullYear()].join('/');\r\n this.headerString = \"Calendar Items From \" + start + \" To \" + end;\r\n }\r\n }\r\n }\r\n\r\n\r\n },\r\n error => {\r\n this.listView = [];\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n hideWeekViewTimeLine() {\r\n try {\r\n const timeViewDiv = this.fc.el.nativeElement.getElementsByClassName('fc-time-grid-container');\r\n if (timeViewDiv.length > 0) {\r\n timeViewDiv[0].style = \"display:none\";\r\n }\r\n } catch (error) {\r\n }\r\n }\r\n\r\n selectCar(event, overlaypanel: OverlayPanel) {\r\n overlaypanel.toggle(event);\r\n }\r\n\r\n parentFun(searchModel: ActionCalendarSearch) {\r\n\r\n this.parentSearchModel.actionTypeIds = searchModel.actionTypeIds;\r\n this.parentSearchModel.carrierCatIds = searchModel.carrierCatIds;\r\n this.parentSearchModel.isNeworChanged = searchModel.isNeworChanged;\r\n this.parentSearchModel.stateIds = searchModel.stateIds;\r\n this.parentSearchModel.statusIds = searchModel.statusIds;\r\n this.parentSearchModel.userId = searchModel.userId;\r\n this.parentSearchModel.emailDeadlineDate = searchModel.emailDeadlineDate;\r\n this.parentSearchModel.isFavorite = searchModel.isFavorite;\r\n this.parentSearchModel.isMyTracIt = searchModel.isMyTracIt;\r\n this.parentSearchModel.companySpecificIds = searchModel.companySpecificIds;\r\n //debugger\r\n if (this.defaultView === 'dayGridMonth' || this.defaultView === 'timeGridWeek') {\r\n if (this.fc != null && this.fc != undefined && !this.isClickOnDashboard) {\r\n const d = new Date(this.fc.calendar.view.activeStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n const e = new Date(this.fc.calendar.view.activeEnd);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n // this.parentSearchModel.dateFrom = a;\r\n // this.parentSearchModel.toDate = f;\r\n searchModel.toDate = f;\r\n searchModel.dateFrom = a;\r\n\r\n this.set120Day();\r\n //\r\n // let CurrentTime = new Date(this.fc.calendar.view.currentStart);\r\n // var firstDay = new Date(CurrentTime.getFullYear(), CurrentTime.getMonth(), 1);\r\n // firstDay.setDate(firstDay.getDate() - 30);\r\n // var lastDay = new Date(CurrentTime.getFullYear(), CurrentTime.getMonth(), this.daysInMonth(CurrentTime.getMonth() + 1,\r\n // CurrentTime.getFullYear()));\r\n\r\n // lastDay.setDate(lastDay.getDate() + 60);\r\n // const dd = new Date(firstDay);\r\n // const aa = [this.pad(dd.getMonth() + 1), this.pad(dd.getDate()), dd.getFullYear()].join('/');\r\n\r\n // const ee = new Date(lastDay);\r\n // const ff = [this.pad(ee.getMonth() + 1), this.pad(ee.getDate()), ee.getFullYear()].join('/');\r\n\r\n // this.parentSearchModel.dateFrom = aa;\r\n // this.parentSearchModel.toDate = ff;\r\n }\r\n }\r\n else {\r\n\r\n if (searchModel.toDate && searchModel.dateFrom) {\r\n if (typeof (searchModel.toDate) != undefined && typeof (searchModel.dateFrom) != undefined) {\r\n this.parentSearchModel.dateFrom = searchModel.dateFrom;\r\n this.parentSearchModel.toDate = searchModel.toDate;\r\n }\r\n }\r\n else {\r\n searchModel.dateFrom = this.parentSearchModel.dateFrom;;\r\n searchModel.toDate = this.parentSearchModel.toDate;\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n if (!this.isListShow) {\r\n this.GetCalendarData(searchModel);\r\n } else {\r\n this.GetListViewData();\r\n }\r\n }\r\n\r\n showdescription($event) {\r\n this.showDescription = $event.srcElement.checked;\r\n }\r\n\r\n setDefaultDate() {\r\n if (this.fc != null && this.fc != undefined && !this.isClickOnDashboard) {\r\n const d = new Date(this.fc.calendar.view.currentStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n const e = new Date(this.fc.calendar.view.currentEnd);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n }\r\n }\r\n\r\n bindEvents() {\r\n\r\n const prevButton = this.fc.el.nativeElement.getElementsByClassName('fc-prev-button');\r\n const nextButton = this.fc.el.nativeElement.getElementsByClassName('fc-next-button');\r\n const todayButton = this.fc.el.nativeElement.getElementsByClassName('fc-today-button');\r\n const monthButton = this.fc.el.nativeElement.getElementsByClassName('fc-dayGridMonth-button');\r\n const weekButton = this.fc.el.nativeElement.getElementsByClassName('fc-timeGridWeek-button');\r\n\r\n nextButton[0].addEventListener('click', () => {\r\n\r\n //const d = new Date(this.fc.calendar.view.currentStart);\r\n const d = new Date(this.fc.calendar.view.activeStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n //const e = new Date(this.fc.calendar.view.currentEnd);\r\n const e = new Date(this.fc.calendar.view.activeEnd-1);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n this.bsRangeValue = [d, e];\r\n this.set120Day();\r\n this.GetCalendarData(this.parentSearchModel);\r\n this.setCurrentMonthAndYear();\r\n });\r\n\r\n prevButton[0].addEventListener('click', () => {\r\n\r\n //const d = new Date(this.fc.calendar.view.currentStart);\r\n const d = new Date(this.fc.calendar.view.activeStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n //const e = new Date(this.fc.calendar.view.currentEnd);\r\n const e = new Date(this.fc.calendar.view.activeEnd-1);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n this.bsRangeValue = [d, e];\r\n this.set120Day();\r\n this.GetCalendarData(this.parentSearchModel);\r\n this.setCurrentMonthAndYear();\r\n });\r\n\r\n todayButton[0].addEventListener('click', () => {\r\n\r\n const d = new Date(this.fc.calendar.view.currentStart);\r\n const a = [d.getFullYear(), this.pad(d.getMonth() + 1), this.pad(d.getDate())].join('-');\r\n\r\n const e = new Date(this.fc.calendar.view.currentEnd-1);\r\n const f = [e.getFullYear(), this.pad(e.getMonth() + 1), this.pad(e.getDate())].join('-');\r\n\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n this.bsRangeValue = [d, e];\r\n this.set120Day();\r\n this.GetCalendarData(this.parentSearchModel);\r\n this.setCurrentMonthAndYear();\r\n });\r\n\r\n // monthButton[0].addEventListener('click', () => {\r\n // this.set120Day();\r\n // this.loadMonthData();\r\n // });\r\n\r\n weekButton[0].addEventListener('click', () => {\r\n this.set120Day();\r\n this.loadWeekData();\r\n });\r\n\r\n this.loadWeekData();\r\n }\r\n\r\n loadMonthData() {\r\n this.GetCalendarData(this.parentSearchModel);\r\n }\r\n\r\n OpenDetailPopup(actionId: any, updateId: any, briefingId: any) {\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n sessionStorage.setItem('actionId', actionId);\r\n sessionStorage.setItem('updateId', updateId);\r\n sessionStorage.setItem('briefingId', briefingId);\r\n const modalRef = this.modalService.open(ActionItemDetailsPopupComponent, { size: 'lg' }).result.then(\r\n result => {\r\n if (result == 'Yes') {\r\n this.isHoverButtonClick = false;\r\n }\r\n if (result == 'Reload') {\r\n if (this.isHoverButtonClick)\r\n this.GetCalendarData(this.parentSearchModel);\r\n this.isHoverButtonClick = false;\r\n }\r\n },\r\n reason => {\r\n this.isHoverButtonClick = false;\r\n });\r\n }\r\n\r\n OpenDetailHoverPopup() {\r\n // this.isHoverButtonClick = true;\r\n this.OpenDetailPopup(this.actionId, this.updateId, this.briefingId)\r\n }\r\n\r\n OpenStatusHoverPopup() {\r\n // this.isHoverButtonClick = true;\r\n this.OpenActionStatusPopup(this.actionId, this.updateId, false, this.briefingId)\r\n }\r\n\r\n OpenNoteHoverPopup() {\r\n this.isHoverButtonClick = true;\r\n this.OpenNotesPopup(this.actionId, this.updateId, this.briefingId)\r\n }\r\n\r\n OpenAddNewActionItemHoverPopup() {\r\n this.isHoverButtonClick = true;\r\n this.openAddNewActionItemPopup();\r\n }\r\n\r\n DeleteActionItem(deletedId, recurranceId, type) {\r\n const delId = type == 1 ? deletedId : 0;\r\n const recId = type == 2 ? recurranceId : 0;\r\n this.actionServices.DeleteAction(this.tokenKey, delId, recId, this.loginUser).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Record deleted successfully.', 'Success', 'success');\r\n if (this.isHoverButtonClick)\r\n this.GetCalendarData(this.parentSearchModel);\r\n\r\n this.GetListViewData();\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n editAction(actionId) {\r\n sessionStorage.setItem('EditActionId', actionId);\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n\r\n const modalRef = this.modalService.open(EditActionPopupComponent, { windowClass: \"EditActionPopup\" }).result.then(\r\n result => {\r\n if (result == 'Yes') {\r\n if (this.isHoverButtonClick)\r\n this.GetCalendarData(this.parentSearchModel);\r\n\r\n this.GetListViewData();\r\n this.isHoverButtonClick = false;\r\n }\r\n },\r\n reason => {\r\n this.isHoverButtonClick = false;\r\n });\r\n }\r\n\r\n OpenEditHoverPopup() {\r\n this.isHoverButtonClick = true;\r\n this.editAction(this.actionId)\r\n }\r\n\r\n OpenDeleteHoverPopup(actionId, recurranceId) {\r\n this.isHoverButtonClick = true;\r\n }\r\n\r\n showListPopupHover($event, actionItemTypeId, actionId) {\r\n this.isHoverButtonClick = false;\r\n if (actionItemTypeId == 5) {\r\n this.actionId = actionId;\r\n this.OpenEditHoverPopup()\r\n }\r\n }\r\n\r\n fillMonths() {\r\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\",\r\n \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"\r\n ];\r\n for (let index = 0; index < 12; index++) {\r\n const date = new Date();\r\n this.monthList.push({ id: index, itemName: monthNames[index] })\r\n if (date.getMonth() == index)\r\n this.selectdMonth.push({ id: index, itemName: monthNames[index] });\r\n }\r\n }\r\n fillYear() {\r\n const date = new Date();\r\n var year = 2019;\r\n for (let index = 0; year <= date.getFullYear() + 5; index++) {\r\n this.yearList.push({ id: year, itemName: year })\r\n\r\n if (date.getFullYear() == year) {\r\n this.selectedYear.push({ id: year, itemName: year });\r\n }\r\n year = year + 1;\r\n }\r\n }\r\n\r\n onMonthChange(event) {\r\n if (event) {\r\n let monthId = 1;\r\n if (Array.isArray(event) && event.length == 0) {\r\n monthId = new Date().getMonth() + 1;\r\n this.selectdMonth = this.monthList.filter(x => x.id == monthId - 1);\r\n }\r\n else {\r\n monthId = event.id + 1;\r\n if (this.selectdMonth.length == 0)\r\n this.selectdMonth = this.monthList.filter(x => x.id == monthId - 1);\r\n }\r\n const d = new Date(this.fc.calendar.view.activeStart);\r\n const a = [d.getFullYear(), this.pad(monthId), '01'].join('-');\r\n const e = new Date(this.fc.calendar.view.activeEnd);\r\n const f = [e.getFullYear(), this.pad(monthId), this.pad(new Date(e.getFullYear(), monthId, 0).getDate())].join('-');\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n // this.bsRangeValue = [d, e];\r\n this.fc.getCalendar().gotoDate(a);\r\n this.set120Day();\r\n this.GetCalendarData(this.parentSearchModel);\r\n }\r\n }\r\n\r\n onChangeYear(event) {\r\n this.currentYear = +event.itemName;\r\n const year = this.currentYear;\r\n const d = new Date(this.fc.calendar.view.currentStart);\r\n const a = [year, this.pad(d.getMonth() + 1), '01'].join('-');\r\n const e = new Date(this.fc.calendar.view.currentEnd);\r\n const f = [year, this.pad(e.getMonth() + 1), this.pad(new Date(year, e.getMonth(), 0).getDate())].join('-');\r\n this.parentSearchModel.dateFrom = a;\r\n this.parentSearchModel.toDate = f;\r\n // this.bsRangeValue = [d, e];\r\n this.fc.getCalendar().gotoDate(a);\r\n this.set120Day();\r\n this.GetCalendarData(this.parentSearchModel);\r\n }\r\n\r\n setCurrentMonthAndYear(currentDate = false) {\r\n const d = currentDate ? new Date() : new Date(this.fc.calendar.view.currentStart);\r\n this.selectdMonth = this.monthList.filter(x => x.id == d.getMonth());\r\n this.currentYear = d.getFullYear();\r\n this.selectedYear = [];\r\n this.selectedYear.push({ id: this.currentYear, itemName: this.currentYear });\r\n }\r\n \r\n FilterClear() {\r\n this.titleSearch = \"\";\r\n this.GetCalendarData(this.parentSearchModel);\r\n this.ActionItemForReminderDashbaord();\r\n this.GetDashboardActionItemsReuiredAttention();\r\n }\r\n\r\n\r\n inputFilters() {\r\n this.GetCalendarData(this.parentSearchModel);\r\n this.ActionItemForReminderDashbaord();\r\n this.GetDashboardActionItemsReuiredAttention();\r\n }\r\n}\r\n","export default \".left35\\r\\n{\\r\\n padding-left:35px;\\r\\n}\\r\\n.states {\\r\\n display: inline-block;\\r\\n margin-right: 40px;\\r\\n /*line-height:35px;*/\\r\\n vertical-align: top;\\r\\n margin-bottom: 14px;\\r\\n}\\r\\n.lightblue {\\r\\n color: #2d0080;\\r\\n font-weight: 600;\\r\\n font-size: 15px;\\r\\n font-family: 'Sarabun', sans-serif;\\r\\n}\\r\\n.states img {\\r\\n vertical-align: top;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvQWN0aW9uSXRlbS9teS1mYXZvcml0ZXMvbXktZmF2b3JpdGVzLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0VBRUUsaUJBQWlCO0FBQ25CO0FBQ0E7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsbUJBQW1CO0FBQ3JCO0FBQ0E7RUFDRSxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixrQ0FBa0M7QUFDcEM7QUFDQTtFQUNFLG1CQUFtQjtBQUNyQiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L0FjdGlvbkl0ZW0vbXktZmF2b3JpdGVzL215LWZhdm9yaXRlcy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmxlZnQzNVxyXG57XHJcbiAgcGFkZGluZy1sZWZ0OjM1cHg7XHJcbn1cclxuLnN0YXRlcyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1hcmdpbi1yaWdodDogNDBweDtcclxuICAvKmxpbmUtaGVpZ2h0OjM1cHg7Ki9cclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIG1hcmdpbi1ib3R0b206IDE0cHg7XHJcbn1cclxuLmxpZ2h0Ymx1ZSB7XHJcbiAgY29sb3I6ICMyZDAwODA7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBmb250LXNpemU6IDE1cHg7XHJcbiAgZm9udC1mYW1pbHk6ICdTYXJhYnVuJywgc2Fucy1zZXJpZjtcclxufVxyXG4uc3RhdGVzIGltZyB7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxufVxyXG4iXX0= */\"","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { IPRUpdatesModel } from '../../../../Models/IPRUpdatesModel';\r\nimport { stateMasterModel } from '../../../../Models/stateMasterModel';\r\nimport { iprupdatesService } from '../../../../Services/iprupdatesService';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { AppConfig } from '../../../../Services/app.config';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { ToolEnum } from 'src/Models/Common';\r\nimport { MatrixService } from '../../../../Services/matrix.service';\r\nimport { ActionItemService } from '../../../../Services/actionitem.service';\r\nimport { FavouriteActionItemModel } from '../../../../Models/FavouriteActionItemModel';\r\nimport { FavouriteCarrierCategoryModel } from '../../../../Models/FavouriteCarrierCategoryModel';\r\nimport { ActionActivity } from 'src/Models/Common';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-my-favorites',\r\n templateUrl: './my-favorites.component.html',\r\n styleUrls: ['./my-favorites.component.css']\r\n})\r\nexport class ActionItemsMyFavoritesComponent implements OnInit {\r\n\r\n userID: number = 0;\r\n appModel: any;\r\n isloading: boolean = false;\r\n tokenKey: string = '';\r\n favouriteCarrierModel: IPRUpdatesModel[] = [];\r\n favouriteStateModel: stateMasterModel[] = [];\r\n favouriteActionItemModel: FavouriteActionItemModel[] = [];\r\n favouriteCarrierCategoryModel: FavouriteCarrierCategoryModel[] = []\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n carrierForm: FormGroup;\r\n baseUrl: string;\r\n\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n stateFilter: string = '';\r\n dropdownSettingsCarrierCategory = {};\r\n dropdownListActionItemTypes = [];\r\n dropdownListCarrierCategory = [];\r\n dropdownSettingsActionItemTypes = {};\r\n selectedActionItemTypes = [];\r\n selectedCarrierCategory = [];\r\n listOfstateID: string[] = [];\r\n ClientSelectedTool: string;\r\n ValidationMessage: string;\r\n DeSelectedFavoriteId: number;\r\n FavoriteType: string;\r\n IsDeselected: number = 0;\r\n isStateRecordsExists: boolean = true;\r\n isProviderRecordsExists: boolean = true;\r\n productId: number;\r\n\r\n isStateDropdownLoad: boolean = false;\r\n isActionItemTypesDropdownLoad: boolean = false;\r\n isCarrierCategoryDropdownLoad: boolean = false;\r\n\r\n\r\n constructor(@Inject('BASE_URL') baseUrl: string, private matrixService: MatrixService, private iprupdatesService: iprupdatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth, private actionItemService: ActionItemService\r\n , private router: Router, private activedRoute: ActivatedRoute,private appActivity: ApplicationActivityService\r\n ) {\r\n this.baseUrl = baseUrl;\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.carrierForm = new FormGroup({\r\n stateId: new FormControl(),\r\n actionItemTypeId: new FormControl(),\r\n carrierCategoryId: new FormControl(),\r\n });\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.titleService.setTitle('My Favorites');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.movetotop();\r\n this.isloading = false;\r\n this.ActionTypes();\r\n this.GetStateData();\r\n this.GetCarrierCatData();\r\n }\r\n\r\n // Action Item Type Methods\r\n ActionTypes(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n if (!this.isActionItemTypesDropdownLoad)\r\n this.dropdownListActionItemTypes = [];\r\n this.actionItemService.GetActionItemTypesFavoriteData(this.tokenKey, this.userID).subscribe(\r\n data => {\r\n if (data[\"result\"] != null && data[\"status\"] != \"Failure\") {\r\n if (!this.isActionItemTypesDropdownLoad) {\r\n this.selectedActionItemTypes = [];\r\n for (let iCounter = 0; iCounter < data[\"result\"].objActionItemsTypeModel.length; iCounter++) {\r\n this.dropdownListActionItemTypes.push(\r\n { \"id\": data[\"result\"].objActionItemsTypeModel[iCounter].actionItemTypeId, \"itemName\": data[\"result\"].objActionItemsTypeModel[iCounter].typeName }\r\n );\r\n }\r\n\r\n for (let iCounter = 0; iCounter < data[\"result\"].objActionItemTypesFavoriteModel.length; iCounter++) {\r\n this.selectedActionItemTypes.push({ \"id\": data[\"result\"].objActionItemTypesFavoriteModel[iCounter].actionItemTypeId, \"itemName\": data[\"result\"].objActionItemTypesFavoriteModel[iCounter].typeName });\r\n }\r\n }\r\n\r\n this.favouriteActionItemModel = data[\"result\"].objActionItemTypesFavoriteModel;\r\n\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsActionItemTypes = {\r\n singleSelection: false,\r\n text: \"Select Category(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No Category Available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: true\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n onSelectAllActionItemType($event) {\r\n let stateIds: string = '';\r\n if ($event) {\r\n $event.map(x => {\r\n stateIds += String(x.id) + ',';\r\n });\r\n stateIds += \"-99\";\r\n }\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteActionItem(stateIds, 1);\r\n }\r\n\r\n onDeSelectAllActionItemType($event) {\r\n if (this.favouriteActionItemModel != null) {\r\n let stateIds: string = '';\r\n this.favouriteActionItemModel.map(x => {\r\n stateIds += String(x.actionItemTypeId) + ',';\r\n });\r\n stateIds += \"-99\";\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteActionItem(stateIds, 0);\r\n }\r\n }\r\n\r\n OnSelectActionItemType($event) {\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteActionItem($event['id'], 1);\r\n }\r\n\r\n OnDeSelectActionItemType($event) {\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteActionItem($event['id'], 0);\r\n }\r\n\r\n SaveFavoriteActionItem(id: string, IsFavorite: number) {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.actionItemService.ActionItemTypeFavouriteAdd(this.tokenKey, this.userID, id, IsFavorite)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (IsFavorite == 1){\r\n this.showMessage('Selected category added successfully to favorite list.', 'Favorite', 'success');\r\n }\r\n else\r\n {\r\n this.showMessage('Selected category removed successfully from favorite list.', 'Favorite', 'success');\r\n }\r\n\r\n this.isActionItemTypesDropdownLoad = true;\r\n this.ActionTypes();\r\n\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n // End\r\n\r\n // State Methods\r\n\r\n GetStateData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n if (!this.isStateDropdownLoad)\r\n this.dropdownListState = [];\r\n\r\n this.iprupdatesService.GetStatesByUserID(this.tokenKey, this.userID, this.productId).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n if (!this.isStateDropdownLoad) {\r\n this.selectedItemsState = [];\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n if (data[\"state\"][iCounter].isActionFavorite == true)\r\n this.selectedItemsState.push({ \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name });\r\n }\r\n }\r\n this.favouriteStateModel = data[\"state\"].filter(\r\n book => book.isActionFavorite === true);\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"Select Jurisdiction(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No Jurisdiction available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: true\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n OnSelectState($event) {\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteState($event['id'], 1);\r\n }\r\n OnDeSelectState($event) {\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteState($event['id'], 0);\r\n }\r\n\r\n onSelectAllStateList($event) {\r\n let stateIds: string = '';\r\n if ($event) {\r\n $event.map(x => {\r\n stateIds += String(x.id) + ',';\r\n });\r\n stateIds += \"-99\";\r\n }\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteState(stateIds, 1);\r\n }\r\n\r\n onDeSelectAllStateList($event) {\r\n if (this.favouriteStateModel != null) {\r\n let stateIds: string = '';\r\n this.favouriteStateModel.map(x => {\r\n stateIds += String(x.stateId) + ',';\r\n });\r\n stateIds += \"-99\";\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteState(stateIds, 0);\r\n }\r\n }\r\n\r\n SaveFavoriteState(ids: string, IsFavorite: number) {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.actionItemService.ActionItemStateFavouriteAdd(this.tokenKey, this.userID, ids, IsFavorite)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (IsFavorite == 1){\r\n this.showMessage('Selected Jurisdiction added successfully to favorite list.', 'Favorite', 'success');\r\n }\r\n else\r\n {\r\n this.showMessage('Selected Jurisdiction removed successfully from favorite list.', 'Favorite', 'success');\r\n }\r\n\r\n this.isStateDropdownLoad = true;\r\n this.GetStateData();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n //State\r\n\r\n // Carrier Category Methods\r\n GetCarrierCatData(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n if (!this.isCarrierCategoryDropdownLoad)\r\n this.dropdownListCarrierCategory = [];\r\n this.actionItemService.GetCarrierCategoryFavoriteData(this.tokenKey, this.userID).subscribe(\r\n data => {\r\n if (data[\"result\"] != null && data[\"status\"] != \"Failure\") {\r\n if (!this.isCarrierCategoryDropdownLoad) {\r\n this.selectedCarrierCategory = [];\r\n for (let iCounter = 0; iCounter < data[\"result\"].objCarrierCategoryModel.length; iCounter++) {\r\n this.dropdownListCarrierCategory.push(\r\n { \"id\": data[\"result\"].objCarrierCategoryModel[iCounter].carrierCatId, \"itemName\": data[\"result\"].objCarrierCategoryModel[iCounter].carrierCatName }\r\n );\r\n }\r\n\r\n for (let iCounter = 0; iCounter < data[\"result\"].objCarrierCategoryFavoriteModel.length; iCounter++) {\r\n this.selectedCarrierCategory.push({ \"id\": data[\"result\"].objCarrierCategoryFavoriteModel[iCounter].carrierCatId, \"itemName\": data[\"result\"].objCarrierCategoryFavoriteModel[iCounter].carrierCatName });\r\n }\r\n }\r\n\r\n this.favouriteCarrierCategoryModel = data[\"result\"].objCarrierCategoryFavoriteModel;\r\n\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsCarrierCategory = {\r\n singleSelection: false,\r\n text: \"Select Carrier Type(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No Carrier Type Available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: true\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n OnSelectCarrierCategory($event) {\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteCarrierCategory($event['id'], 1);\r\n }\r\n OnDeSelectCarrierCategory($event) {\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteCarrierCategory($event['id'], 0);\r\n }\r\n\r\n onSelectAllCarrierCategory($event) {\r\n let stateIds: string = '';\r\n if ($event) {\r\n $event.map(x => {\r\n stateIds += String(x.id) + ',';\r\n });\r\n stateIds += \"-99\";\r\n }\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteCarrierCategory(stateIds, 1);\r\n }\r\n\r\n onDeSelectAllCarrierCategory($event) {\r\n if (this.favouriteCarrierCategoryModel != null) {\r\n let stateIds: string = '';\r\n this.favouriteCarrierCategoryModel.map(x => {\r\n stateIds += String(x.carrierCatId) + ',';\r\n });\r\n stateIds += \"-99\";\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteCarrierCategory(stateIds, 0);\r\n }\r\n }\r\n\r\n SaveFavoriteCarrierCategory(id: string, IsFavorite: number) {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.actionItemService.CarrierCategoryFavouriteAdd(this.tokenKey, this.userID, id, IsFavorite)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (IsFavorite == 1){\r\n this.showMessage('Selected carrier type added successfully to favorite list.', 'Favorite', 'success');\r\n }\r\n else{\r\n this.showMessage('Selected carrier type removed successfully from favorite list.', 'Favorite', 'success');\r\n }\r\n \r\n this.isCarrierCategoryDropdownLoad = true;\r\n this.GetCarrierCatData();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n // End\r\n\r\n DeselectFavourite() {\r\n this.IsDeselected = 0;\r\n \r\n if (this.FavoriteType == 'state') {\r\n this.SaveFavoriteState(String(this.DeSelectedFavoriteId), 0);\r\n this.selectedItemsState = this.removeElemetninArray(this.selectedItemsState, this.DeSelectedFavoriteId);\r\n }\r\n else if (this.FavoriteType == 'actionItem') {\r\n this.SaveFavoriteActionItem(String(this.DeSelectedFavoriteId), 0);\r\n this.selectedActionItemTypes = this.removeElemetninArray(this.selectedActionItemTypes, this.DeSelectedFavoriteId);\r\n }\r\n else if (this.FavoriteType == 'carrierCategory') {\r\n this.SaveFavoriteCarrierCategory(String(this.DeSelectedFavoriteId), 0);\r\n this.selectedCarrierCategory = this.removeElemetninArray(this.selectedCarrierCategory, this.DeSelectedFavoriteId);\r\n }\r\n document.getElementById(\"btnClose\").click();\r\n }\r\n\r\n CancelDeselectFavourite() {\r\n\r\n if (this.FavoriteType == 'state' && this.IsDeselected == 1) { \r\n this.selectedItemsState.push({ \"id\": this.DeSelectedFavoriteId });\r\n this.GetStateData();\r\n }\r\n else if (this.FavoriteType == 'actionItem' && this.IsDeselected == 1) {\r\n this.selectedActionItemTypes.push({ \"id\": this.DeSelectedFavoriteId });\r\n this.ActionTypes();\r\n }\r\n else if (this.FavoriteType == 'carrierCategory' && this.IsDeselected == 1) {\r\n this.selectedCarrierCategory.push({ \"id\": this.DeSelectedFavoriteId });\r\n this.GetCarrierCatData();\r\n }\r\n }\r\n\r\n RemoveStarFavorite(id: number, Type: string) {\r\n this.IsDeselected = 1;\r\n this.DeSelectedFavoriteId = id;\r\n if (Type == 'state') {\r\n this.ValidationMessage = \"Are you sure you want to remove selected Jurisdiction from favorite list?\"\r\n this.FavoriteType = 'state';\r\n }\r\n else if (Type == 'actionItem') {\r\n this.ValidationMessage = \"Are you sure you want to remove selected category from favorite list?\"\r\n this.FavoriteType = 'actionItem';\r\n }\r\n else if (Type == 'carrierCategory') {\r\n this.ValidationMessage = \"Are you sure you want to remove selected carrier type from favorite list?\"\r\n this.FavoriteType = 'carrierCategory';\r\n }\r\n var elem = document.getElementById(\"lnkFavouriteValidation\");\r\n elem.click();\r\n }\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e.id != element);\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n\r\n}\r\n","export default \".page-break {\\r\\n\\tpage-break-after: always;\\r\\n\\tpage-break-inside: avoid;\\r\\n\\tclear: both;\\r\\n}\\r\\n\\r\\n.page-break-before {\\r\\n\\tpage-break-before: always;\\r\\n\\tpage-break-inside: avoid;\\r\\n\\tclear: both;\\r\\n}\\r\\n\\r\\n.bgApply .regcontent {\\r\\n\\tpadding-left: 10px;\\r\\n}\\r\\n\\r\\n.link-div {\\r\\n\\tmargin-bottom: 14px;\\r\\n\\tpadding-left: 10px;\\r\\n}\\r\\n\\r\\n.link {\\r\\n\\tdisplay: block;\\r\\n\\ttext-decoration: underline;\\r\\n\\tcolor: #0039BF;\\r\\n}\\r\\n\\r\\n.link-a:active {\\r\\n\\tcolor: #0039BF;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvSVBDUy9mdW5kLWRldGFpbHMvZnVuZC1kZXRhaWxzLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Q0FDQyx3QkFBd0I7Q0FDeEIsd0JBQXdCO0NBQ3hCLFdBQVc7QUFDWjs7QUFFQTtDQUNDLHlCQUF5QjtDQUN6Qix3QkFBd0I7Q0FDeEIsV0FBVztBQUNaOztBQUVBO0NBQ0Msa0JBQWtCO0FBQ25COztBQUVBO0NBQ0MsbUJBQW1CO0NBQ25CLGtCQUFrQjtBQUNuQjs7QUFFQTtDQUNDLGNBQWM7Q0FDZCwwQkFBMEI7Q0FDMUIsY0FBYztBQUNmOztBQUVBO0NBQ0MsY0FBYztBQUNmIiwiZmlsZSI6InNyYy9hcHAvRnJvbnQvSVBDUy9mdW5kLWRldGFpbHMvZnVuZC1kZXRhaWxzLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucGFnZS1icmVhayB7XHJcblx0cGFnZS1icmVhay1hZnRlcjogYWx3YXlzO1xyXG5cdHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcclxuXHRjbGVhcjogYm90aDtcclxufVxyXG5cclxuLnBhZ2UtYnJlYWstYmVmb3JlIHtcclxuXHRwYWdlLWJyZWFrLWJlZm9yZTogYWx3YXlzO1xyXG5cdHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcclxuXHRjbGVhcjogYm90aDtcclxufVxyXG5cclxuLmJnQXBwbHkgLnJlZ2NvbnRlbnQge1xyXG5cdHBhZGRpbmctbGVmdDogMTBweDtcclxufVxyXG5cclxuLmxpbmstZGl2IHtcclxuXHRtYXJnaW4tYm90dG9tOiAxNHB4O1xyXG5cdHBhZGRpbmctbGVmdDogMTBweDtcclxufVxyXG5cclxuLmxpbmsge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdGNvbG9yOiAjMDAzOUJGO1xyXG59XHJcblxyXG4ubGluay1hOmFjdGl2ZSB7XHJcblx0Y29sb3I6ICMwMDM5QkY7XHJcbn0iXX0= */\"","import { Component, OnInit, ViewChild, Inject, ElementRef } from '@angular/core';\r\nimport { Router, ActivatedRoute, Params } from '@angular/router';\r\nimport { IPCSstateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { IPCSupdatesPageModel } from 'src/Models/updatesPageModel';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { htmlToPdf } from 'src/Services/htmlToPdf';\r\nimport * as FileSaver from 'file-saver';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { IPCSupdatesModel, updatesModel } from 'src/Models/updatesModel';\r\nimport { updatesService } from 'src/Services/updatesService';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { MatrixFundDetailsService } from 'src/Services/matrix-fund-details.service';\r\nimport { ActionActivity, ToolEnum } from 'src/Models/Common';\r\nimport { AppConfig } from 'src/Services/app.config';\r\nimport { IPCSMatrixModel } from 'src/Models/IPCSMatrixModel';\r\n\r\n@Component({\r\n selector: 'app-ipcs-fund-details',\r\n templateUrl: './fund-details.component.html',\r\n styleUrls: ['./fund-details.component.css']\r\n})\r\nexport class IPCSFundDetailsComponent implements OnInit {\r\n tokenKey: string = '';\r\n statusCode: any;\r\n loginUser: any;\r\n listOfState: string = '1';\r\n listofMatrixFund: IPCSMatrixModel[];\r\n isNoRecord: boolean = false;\r\n isNoFundFound: boolean = false;\r\n totalRecordCount: number = -1;\r\n isloading: boolean = false;\r\n\r\n fundReference: string = '';\r\n\r\n isSidePanelActive: boolean = true;\r\n sidepanellistOfState: IPCSstateMasterModel[];\r\n chkselectAll: boolean = false;\r\n isStateRecord: boolean = false;\r\n selectedStateCounter: number = 0;\r\n listOfStateId: string = '';\r\n selectAllID: string[];\r\n listOfID: string[];\r\n\r\n showState: boolean = false;\r\n\r\n statenamepopup: string;\r\n isupdatesloading: boolean = false;\r\n parameterModel = new IPCSupdatesPageModel();\r\n appModel: any;\r\n updatesModel: IPCSupdatesModel[] = [];\r\n totalupdatesRecordsCount: number = -1;\r\n totalunread: number = 0;\r\n unreaddata: string = 'unread';\r\n\r\n isShowprogressSpinner: boolean = true;\r\n blockedDocument: boolean = true;\r\n drpOtherReuirement: string = '';\r\n rowStart: string = '
';\r\n rowEnd: string = '
';\r\n baseUrl: string;\r\n adminUserType: boolean = true;\r\n oneStatePdfDonwload: boolean = true;\r\n multiStatePdfDonwload: boolean = false;\r\n isPageBreak: boolean = false;\r\n\r\n isOuterNoRecord :boolean = false;\r\n stateName :string;\r\n\r\n @ViewChild('deletecloseBtn', {static: false}) deletecloseBtn: ElementRef;\r\n isShowPdfAndPrintButton: boolean = true;\r\n productId: number = 41;\r\n ClientSelectedTool: string;\r\n\r\n constructor(private appActivity: ApplicationActivityService,\r\n private titleService: Title, @Inject('BASE_URL') baseUrl: string, private htmlToPdf: htmlToPdf, private toastr: ToastrService, private updatesService: updatesService, private matrix: MatrixService, private activedRoute: ActivatedRoute, private checkAuth: CheckAuth, private router: Router, private MaxtixFund: MatrixFundDetailsService) {\r\n this.oneStatePdfDonwload = true;\r\n this.multiStatePdfDonwload = false;\r\n\r\n if (sessionStorage.getItem('AdminUserType') == \"1\")\r\n this.adminUserType = false;\r\n\r\n this.baseUrl = baseUrl;\r\n\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n if (sessionStorage.getItem('isAdminOpen') == 'true') {\r\n this.loginUser = sessionStorage.getItem('AdminUserId');\r\n this.listOfState = sessionStorage.getItem('StateSetupManageRedirection');\r\n this.productId = ToolEnum[sessionStorage.getItem('UserLoginTool')];\r\n }\r\n else {\r\n this.loginUser = sessionStorage.getItem('UserId');\r\n this.listOfState = sessionStorage.getItem('singleStatePreview');\r\n this.productId = ToolEnum[sessionStorage.getItem('ClientLoginTool')];\r\n }\r\n\r\n this.listofMatrixFund = [];\r\n this.totalRecordCount = -1;\r\n this.isloading = false;\r\n this.listOfID = [];\r\n\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this.fundReference = params['id'];\r\n }\r\n }\r\n });\r\n\r\n if(sessionStorage.getItem('updatefunddata'))\r\n this.fundReference = sessionStorage.getItem('updatefunddata');\r\n\r\n sessionStorage.removeItem('updatefunddata');\r\n\r\n if (this.fundReference != null && this.fundReference != '')\r\n this.showState = true;\r\n\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.titleService.setTitle('Details');\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n if (this.fundReference != '' && this.fundReference != undefined)\r\n this.moveOnHmtlID(this.fundReference);\r\n }, 1000);\r\n }\r\n\r\n ngOnInit() {\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.GetRightPanelStateList();\r\n this.GetMaxtixFund();\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n GetMaxtixFund() {\r\n this.isloading = true;\r\n this.blockDocument();\r\n this.MaxtixFund.GetIPCSMatrixFindByStateID(this.tokenKey, this.loginUser, this.listOfState).subscribe(\r\n data => {\r\n this.isOuterNoRecord = false;\r\n this.isNoRecord = false;\r\n this.listofMatrixFund = data['matrixFund'];\r\n this.stateName = data['matrixFund'][0].stateName;\r\n this.isloading = false;\r\n if (data['matrixFund'] != null) {\r\n if (data['matrixFund'].length > 0) {\r\n this.totalRecordCount = data['matrixFund'].length;\r\n }\r\n else{\r\n this.isOuterNoRecord = true;\r\n }\r\n\r\n this.isNoFundFound = false;\r\n this.isNoRecord = false;\r\n }\r\n else {\r\n this.selectedStateCounter = 0;\r\n }\r\n\r\n if (data['matrixFund'] != null) {\r\n if (data['matrixFund'].length == 0) {\r\n this.isNoRecord = true;\r\n }\r\n else {\r\n if (data['matrixFund'][0].listOfMatrix.length == 0) {\r\n this.isNoFundFound = true;\r\n }\r\n }\r\n }\r\n else\r\n this.isNoRecord = true;\r\n\r\n this.unblockDocument();\r\n },\r\n error => {\r\n this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n createMyPdf() {\r\n this.isPageBreak = true;\r\n this.blockDocument();\r\n let mainURL = this.baseUrl;\r\n\r\n let url = ' '\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '0',this.productId,this.stateName).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n this.downloadFile('StateDetails.pdf', data['url'], data['fileName']);\r\n this.deletecloseBtn.nativeElement.click();\r\n }\r\n },\r\n error => {\r\n this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n public downloadFile(filename: any, url: any, orignalFileName: any) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename);\r\n \r\n ApplicationActivityStore('Download', 'IPCS PRO States File download ' + filename, this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix/Fund/Details',this.stateName);\r\n \r\n sessionStorage.setItem('fileloading', 'false');\r\n this.htmlToPdf.DeletePDF(this.tokenKey, orignalFileName).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n },\r\n );\r\n }\r\n );\r\n }\r\n\r\n ShowHideSidePanel() {\r\n this.isSidePanelActive = !this.isSidePanelActive;\r\n }\r\n\r\n GetRightPanelStateList() {\r\n this.isStateRecord = false;\r\n this.selectAllID = [];\r\n this.listOfID = [];\r\n\r\n this.MaxtixFund.GetIPCSMatrixFundState(this.tokenKey, this.loginUser).subscribe(\r\n data => {\r\n this.isStateRecord = true;\r\n this.selectedStateCounter = 0;\r\n this.sidepanellistOfState = data['state'];\r\n\r\n if (this.sidepanellistOfState != null) {\r\n if (this.sidepanellistOfState.length > 0) {\r\n this.isShowPdfAndPrintButton = true;\r\n for (let iCounter = 0; iCounter < this.sidepanellistOfState.length; iCounter++) {\r\n if (this.sidepanellistOfState[iCounter].stateId == this.listOfState) {\r\n this.listOfID.push(this.listOfState);\r\n this.sidepanellistOfState[iCounter].isChecked = true;\r\n }\r\n else {\r\n this.sidepanellistOfState[iCounter].isChecked = false;\r\n }\r\n this.selectAllID.push(this.sidepanellistOfState[iCounter].stateId);\r\n }\r\n }\r\n }\r\n else {\r\n this.isShowPdfAndPrintButton = false;\r\n }\r\n this.selectedStateCounter = 1;\r\n },\r\n error => {\r\n this.statusCode = error;\r\n }\r\n );\r\n }\r\n\r\n checkIfSelected(stateId: any, event: any) {\r\n this.fundReference = '';\r\n if (!event.currentTarget.checked) {\r\n this.listOfID = this.listOfID.filter(m => m != stateId);\r\n }\r\n else {\r\n this.listOfID.push(stateId);\r\n }\r\n this.populateSelectedIdData(this.listOfID);\r\n }\r\n\r\n populateSelectedIdData(listOfID: any) {\r\n if (this.listOfID != null) {\r\n let seprator = '';\r\n if (this.listOfID.length > 0) {\r\n this.listOfStateId = '';\r\n this.isShowPdfAndPrintButton = true;\r\n for (let iCounter = 0; iCounter < this.listOfID.length; iCounter++) {\r\n this.listOfStateId += seprator + this.listOfID[iCounter];\r\n seprator = ',';\r\n }\r\n this.selectedStateCounter = this.listOfID.length;\r\n if (this.listOfID.length == 1) {\r\n this.oneStatePdfDonwload = true;\r\n this.multiStatePdfDonwload = false;\r\n }\r\n else {\r\n this.oneStatePdfDonwload = false;\r\n this.multiStatePdfDonwload = true;\r\n }\r\n\r\n }\r\n else {\r\n this.listOfStateId = 'null';\r\n this.selectedStateCounter = 0;\r\n this.isShowPdfAndPrintButton = false;\r\n }\r\n }\r\n this.listOfState = this.listOfStateId;\r\n this.GetMaxtixFund();\r\n }\r\n\r\n selectAllCheckBox(event: any) {\r\n this.listOfStateId = '';\r\n this.listOfID = [];\r\n if (!event.currentTarget.checked) {\r\n this.isShowPdfAndPrintButton = false;\r\n for (let iCounter = 0; iCounter < this.sidepanellistOfState.length; iCounter++) {\r\n this.sidepanellistOfState[iCounter].isChecked = false;\r\n }\r\n }\r\n else {\r\n this.isShowPdfAndPrintButton = true;\r\n this.listOfID = this.selectAllID;\r\n for (let iCounter = 0; iCounter < this.sidepanellistOfState.length; iCounter++) {\r\n this.sidepanellistOfState[iCounter].isChecked = true;\r\n }\r\n }\r\n\r\n this.populateSelectedIdData(this.listOfID);\r\n }\r\n\r\n openpopup(stateid, statename) {\r\n this.statenamepopup = statename;\r\n this.GetUpdates(stateid);\r\n }\r\n\r\n GetUpdates(stateid): void {\r\n this.isupdatesloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.parameterModel.pageSize = this.appModel.PageSize;\r\n this.parameterModel.pageIndex = '1';\r\n this.parameterModel.keywordFilter = 'null';\r\n this.parameterModel.whereCondition = ' StateId=' + stateid;\r\n this.parameterModel.orderBy = 'UpdateDate desc';\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.parameterModel.userID = this.loginUser.toString();\r\n this.parameterModel.updatetype = \"null\";\r\n this.parameterModel.unreadonly = \"1\";\r\n this.updatesService.getIPCSupdatesfindByUserID(this.tokenKey, this.parameterModel).subscribe(\r\n data => {\r\n this.isupdatesloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.updatesModel = data[\"updates\"];\r\n if (this.updatesModel.length > 0) {\r\n this.totalupdatesRecordsCount = this.updatesModel.length;\r\n this.saveNotification(this.updatesModel);\r\n }\r\n else {\r\n this.totalupdatesRecordsCount = 0;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n\r\n saveNotification(updates) {\r\n let _updates = updates;\r\n for (let iCounter = 0; iCounter < _updates.length; iCounter++) {\r\n _updates[iCounter].createdBy = this.loginUser.toString();\r\n }\r\n let count = updates.length;\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n this.updatesService.AddIIPCSNotification(_updates, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n sessionStorage.setItem(this.unreaddata, ((+this.totalunread) - (+count)).toString());\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n // Set Update Counter Logic\r\n if (window.document.body.getElementsByClassName('unread')) {\r\n if (this.totalunread == 0) {\r\n window.document.body.getElementsByClassName('unread')[0].setAttribute(\"style\", \"display:none\");\r\n }\r\n else\r\n window.document.body.getElementsByClassName('unread')[0].innerHTML = this.totalunread.toString();\r\n }\r\n this.GetMaxtixFund();\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n });\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n onChange($event: any) {\r\n if ($event == 'Choose a Topic') {\r\n this.drpOtherReuirement = '';\r\n }\r\n else\r\n this.drpOtherReuirement = $event;\r\n }\r\n\r\n moveOnHmtlID(fundReference: any) {\r\n if (this.showState) {\r\n let top = document.getElementById(fundReference);\r\n if (top !== null) {\r\n top.scrollIntoView({ behavior: \"smooth\", block: \"start\", inline: 'nearest' });\r\n top = null;\r\n }\r\n }\r\n }\r\n\r\n ReplaceString(value) {\r\n return value.replace(/\\//g,'-');\r\n }\r\n\r\n}\r\n","export default \".lbl, .lbl:hover {\\r\\n pointer-events: none;\\r\\n cursor: default;\\r\\n color: #78868d;\\r\\n}\\r\\n\\r\\n.overflow2 {\\r\\n max-height:500px;\\r\\n}\\r\\n\\r\\n.downloadIcon\\r\\n {\\r\\n margin-bottom: -35px;\\r\\n }\\r\\n\\r\\n/*===============keep screen 1260=============*/\\r\\n\\r\\n@media screen and (max-width: 1359px) \\r\\n{\\r\\n .overflow2 {\\r\\n max-height:320px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*===============keep screen 1260=============*/\\r\\n\\r\\n@media screen and (max-width: 1280px) \\r\\n{\\r\\n .overflow2 {\\r\\n max-height:384px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*===============keep screen 1024=============*/\\r\\n\\r\\n@media screen and (max-width: 1159px) \\r\\n{\\r\\n .overflow2 {\\r\\n max-height:465px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*===============keep screen 768=============*/\\r\\n\\r\\n@media screen and (max-width: 999px) \\r\\n{ \\r\\n .overflow2 {\\r\\n max-height:540px;\\r\\n }\\r\\n .downloadIcon\\r\\n {\\r\\n margin-bottom: -10px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*===============keep screen 480=============*/\\r\\n\\r\\n@media screen and (max-width: 767px) \\r\\n{\\r\\n .overflow2 {\\r\\n max-height:350px;\\r\\n }\\r\\n .downloadIcon\\r\\n {\\r\\n margin-bottom: -10px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*===============keep screen 320=============*/\\r\\n\\r\\n@media screen and (max-width: 479px) \\r\\n{\\r\\n .overflow2 {\\r\\n max-height:350px;\\r\\n }\\r\\n}\\r\\n\\r\\n.modal-title{\\r\\n color:#fff !important;\\r\\n font-size:16px !important;\\r\\n font-style:normal !important;\\r\\n margin:0;\\r\\n line-height: 1.42857143 !important;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvSVBDUy9tYXRyaXgvbWF0cml4LmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxvQkFBb0I7SUFDcEIsZUFBZTtJQUNmLGNBQWM7QUFDbEI7O0FBRUE7SUFDSSxnQkFBZ0I7QUFDcEI7O0FBRUE7O0lBRUksb0JBQW9CO0VBQ3RCOztBQUdGLCtDQUErQzs7QUFDL0M7O0lBRUk7UUFDSSxnQkFBZ0I7SUFDcEI7QUFDSjs7QUFFQSwrQ0FBK0M7O0FBQy9DOztJQUVJO1FBQ0ksZ0JBQWdCO0lBQ3BCO0FBQ0o7O0FBRUEsK0NBQStDOztBQUMvQzs7SUFFSTtRQUNJLGdCQUFnQjtJQUNwQjtBQUNKOztBQUVBLDhDQUE4Qzs7QUFDOUM7O0lBRUk7UUFDSSxnQkFBZ0I7SUFDcEI7SUFDQTs7TUFFRSxvQkFBb0I7SUFDdEI7QUFDSjs7QUFFQSw4Q0FBOEM7O0FBQzlDOztJQUVJO1FBQ0ksZ0JBQWdCO0lBQ3BCO0lBQ0E7O01BRUUsb0JBQW9CO0lBQ3RCO0FBQ0o7O0FBR0EsOENBQThDOztBQUM5Qzs7SUFFSTtRQUNJLGdCQUFnQjtJQUNwQjtBQUNKOztBQUNBO0lBQ0kscUJBQXFCO0lBQ3JCLHlCQUF5QjtJQUN6Qiw0QkFBNEI7SUFDNUIsUUFBUTtJQUNSLGtDQUFrQztBQUN0QyIsImZpbGUiOiJzcmMvYXBwL0Zyb250L0lQQ1MvbWF0cml4L21hdHJpeC5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmxibCwgLmxibDpob3ZlciB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgIGNvbG9yOiAjNzg4NjhkO1xyXG59XHJcblxyXG4ub3ZlcmZsb3cyIHtcclxuICAgIG1heC1oZWlnaHQ6NTAwcHg7XHJcbn1cclxuXHJcbi5kb3dubG9hZEljb25cclxuICB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtMzVweDtcclxuICB9XHJcblxyXG5cclxuLyo9PT09PT09PT09PT09PT1rZWVwIHNjcmVlbiAxMjYwPT09PT09PT09PT09PSovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzNTlweCkgXHJcbntcclxuICAgIC5vdmVyZmxvdzIge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6MzIwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qPT09PT09PT09PT09PT09a2VlcCBzY3JlZW4gMTI2MD09PT09PT09PT09PT0qL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjgwcHgpIFxyXG57XHJcbiAgICAub3ZlcmZsb3cyIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OjM4NHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKj09PT09PT09PT09PT09PWtlZXAgc2NyZWVuIDEwMjQ9PT09PT09PT09PT09Ki9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1OXB4KSBcclxue1xyXG4gICAgLm92ZXJmbG93MiB7XHJcbiAgICAgICAgbWF4LWhlaWdodDo0NjVweDtcclxuICAgIH1cclxufVxyXG5cclxuLyo9PT09PT09PT09PT09PT1rZWVwIHNjcmVlbiA3Njg9PT09PT09PT09PT09Ki9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTk5cHgpIFxyXG57ICAgXHJcbiAgICAub3ZlcmZsb3cyIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OjU0MHB4O1xyXG4gICAgfVxyXG4gICAgLmRvd25sb2FkSWNvblxyXG4gICAge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAtMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLyo9PT09PT09PT09PT09PT1rZWVwIHNjcmVlbiA0ODA9PT09PT09PT09PT09Ki9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIFxyXG57XHJcbiAgICAub3ZlcmZsb3cyIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OjM1MHB4O1xyXG4gICAgfVxyXG4gICAgLmRvd25sb2FkSWNvblxyXG4gICAge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAtMTBweDtcclxuICAgIH1cclxufSBcclxuXHJcblxyXG4vKj09PT09PT09PT09PT09PWtlZXAgc2NyZWVuIDMyMD09PT09PT09PT09PT0qL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkgXHJcbntcclxuICAgIC5vdmVyZmxvdzIge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6MzUwcHg7XHJcbiAgICB9XHJcbn1cclxuLm1vZGFsLXRpdGxle1xyXG4gICAgY29sb3I6I2ZmZiAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1zaXplOjE2cHggIWltcG9ydGFudDtcclxuICAgIGZvbnQtc3R5bGU6bm9ybWFsICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQzICFpbXBvcnRhbnQ7XHJcbn0iXX0= */\"","import { Component, OnInit, Inject, ViewChild, ElementRef } from '@angular/core';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { Router } from '@angular/router';\r\nimport { matrixPropery } from 'src/Models/matrixProperty';\r\nimport { IPCSstateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { IPCSMetrixTableModel } from 'src/Models/MetrixTableModel';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { htmlToPdf } from 'src/Services/htmlToPdf';\r\nimport * as FileSaver from 'file-saver';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { UsersService } from 'src/Services/users.service';\r\nimport { OrderPipe } from 'ngx-order-pipe';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { IPCSupdatesModel, updatesModel } from 'src/Models/updatesModel';\r\nimport { IPCSupdatesPageModel, updatesPageModel } from 'src/Models/updatesPageModel';\r\nimport { updatesService } from 'src/Services/updatesService';\r\nimport { AppConfig } from 'src/Services/app.config';\r\nimport { ActionActivity, ToolEnum } from 'src/Models/Common';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-matrix',\r\n templateUrl: './matrix.component.html',\r\n styleUrls: ['./matrix.component.css']\r\n})\r\nexport class IPCSMatrixComponent implements OnInit {\r\n isSidePanelActive: boolean = true;\r\n tokenKey: string = '';\r\n listOfStateId: string = '';\r\n listOfData: any[];\r\n statusCode: any;\r\n loginUser: any;\r\n\r\n columnName: matrixPropery[];\r\n columnData: any[];\r\n\r\n listOfState: IPCSstateMasterModel[];\r\n\r\n isRecordFound: boolean = false;\r\n\r\n listOfID: any[];\r\n\r\n isShowprogressSpinner: boolean = true;\r\n blockedDocument: boolean = true;\r\n\r\n isAscending: boolean = false;\r\n upDowCSS: string = '';\r\n colIndex: string;\r\n OrderBy: string = 'DisplayOrder';\r\n WhereCondition: string = 'null';\r\n keyword: string = '';\r\n\r\n OrderByArray = [\"DisplayOrder\"];\r\n\r\n CustomerComplaintsHandledByIndex: number = -1;\r\n isColumnAvalible: boolean;\r\n selectedStateCounter: number;\r\n\r\n matrixData: IPCSMetrixTableModel[];\r\n\r\n UpDownArrowCommissionCertification: string = '';\r\n UpDownArrowAgencyAssessments: string = '';\r\n UpDownArrow911: string = '';\r\n UpDownArrowUSF: string = '';\r\n UpDownArrowTRS: string = '';\r\n UpDownArrowOtherFees: string = '';\r\n UpDownArrowOtherRequirement: string = '';\r\n UpDownArrow988: string = '';\r\n isNoRecordFoundCount: number = -1;\r\n\r\n selectAllID: string[];\r\n isStateRecord: boolean = false;\r\n chkselectAll: boolean = false;\r\n\r\n appModel: any;\r\n isKeywordStateSearch: boolean = false;\r\n\r\n updatesModel: IPCSupdatesModel[] = [];\r\n parameterModel = new IPCSupdatesPageModel();\r\n isupdatesloading: boolean = false;\r\n totalupdatesRecordsCount: number = -1;\r\n statenamepopup: string;\r\n totalunread: number = 0;\r\n alldata: string = 'all';\r\n unreaddata: string = 'unread';\r\n baseUrl: string;\r\n sortColumnName: string = '';\r\n sotingMode: string = ' ASC';\r\n isColumnClick: boolean = false;\r\n\r\n @ViewChild('divElements', { static: false })\r\n public divElements: ElementRef;\r\n isShowPdfButton: boolean = true;\r\n isDataProcess: boolean = false;\r\n\r\n mainMatrix: IPCSMetrixTableModel[];\r\n sortedCollection: any[];\r\n subscriptionArray: any[];\r\n ClientSelectedTool: string;\r\n\r\n productId:number=41;\r\n\r\n constructor(private orderPipe: OrderPipe, private usersService: UsersService, private titleService: Title, @Inject('BASE_URL') baseUrl: string, private htmlToPdf: htmlToPdf, private checkAuth: CheckAuth, private router: Router, private matrix: MatrixService, private updatesService: updatesService, private toastr: ToastrService, private appActivity: ApplicationActivityService) {\r\n this.baseUrl = baseUrl;\r\n this.listOfStateId = 'null';\r\n this.listOfData = [];\r\n this.columnName = [];\r\n this.columnData = [];\r\n this.loginUser = sessionStorage.getItem('UserId');\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.listOfID = [];\r\n this.colIndex = 'StateName';\r\n this.keyword = '';\r\n this.isColumnAvalible = false;\r\n this.selectedStateCounter = 0;\r\n this.isNoRecordFoundCount = -1;\r\n this.selectAllID = [];\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.isKeywordStateSearch = false;\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.titleService.setTitle('Matrix');\r\n this.productId=41;\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.unblockDocument();\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.GetRightPanelStateList();\r\n }\r\n\r\n GetMatrix() {\r\n this.blockDocument();\r\n\r\n this.isDataProcess = true;\r\n this.matrix.GetIPCSMatrix(this.tokenKey, this.listOfStateId, this.loginUser, this.colIndex, this.OrderBy, this.WhereCondition).subscribe(\r\n data => {\r\n this.matrixData = data['matrix'];\r\n\r\n this.mainMatrix = data['matrix'];\r\n\r\n this.sortedCollection = this.orderPipe.transform(this.matrixData, this.OrderBy);\r\n\r\n this.isDataProcess = false;\r\n if (this.matrixData != null) {\r\n if (this.matrixData.length > 0) {\r\n this.isRecordFound = true;\r\n this.isNoRecordFoundCount = this.matrixData.length;\r\n }\r\n else {\r\n this.isRecordFound = false;\r\n this.isNoRecordFoundCount = -1;\r\n }\r\n }\r\n else {\r\n this.isRecordFound = false;\r\n this.isNoRecordFoundCount = -1;\r\n }\r\n let sData = Object.assign([], this.matrixData);\r\n if (this.listOfID != null) {\r\n this.matrixData = [];\r\n if (this.listOfID.length > 0) {\r\n for (var jCounter = 0; jCounter < this.listOfID.length; jCounter++) {\r\n for (var iCounter = 0; iCounter < sData.length; iCounter++) {\r\n if (this.listOfID[jCounter] == sData[iCounter].stateId) {\r\n this.matrixData.push(sData[iCounter]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (!this.isKeywordStateSearch && !this.isColumnClick)\r\n this.unblockDocument();\r\n this.unblockDocument();\r\n },\r\n error => {\r\n this.statusCode = error;\r\n }\r\n );\r\n this.isKeywordStateSearch = false;\r\n }\r\n\r\n ShowHideSidePanel() {\r\n this.isSidePanelActive = !this.isSidePanelActive;\r\n }\r\n\r\n GetRightPanelStateList() {\r\n this.isStateRecord = false;\r\n this.selectAllID = [];\r\n this.listOfID = [];\r\n\r\n this.matrix.getState(this.tokenKey, this.loginUser, this.productId).subscribe(\r\n data => {\r\n this.isStateRecord = true;\r\n this.selectedStateCounter = 0;\r\n this.listOfState = data['state'];\r\n if (this.listOfState != null) {\r\n let seprator = '';\r\n if (this.listOfState.length > 0) {\r\n\r\n let IsAnychecked = this.listOfState.filter(m => m.isChecked.toString() == 'true');\r\n \r\n this.listOfStateId = '';\r\n this.isShowPdfButton = true;\r\n\r\n for (let iCounter = 0; iCounter < this.listOfState.length; iCounter++) {\r\n if (this.listOfState[iCounter].isChecked || IsAnychecked.length == 0) {\r\n this.listOfState[iCounter].isChecked = true;\r\n this.selectedStateCounter = this.selectedStateCounter + 1;\r\n this.listOfID.push(this.listOfState[iCounter].stateId);\r\n this.listOfStateId += seprator + this.listOfState[iCounter].stateId;\r\n seprator = ',';\r\n\r\n }\r\n this.selectAllID.push(this.listOfState[iCounter].stateId)\r\n if (this.listOfID.length == this.selectAllID.length)\r\n this.chkselectAll = true;\r\n else\r\n this.chkselectAll = false;\r\n }\r\n }\r\n else {\r\n this.listOfStateId = 'null';\r\n }\r\n }\r\n this.GetMatrix();\r\n },\r\n error => {\r\n this.statusCode = error;\r\n }\r\n );\r\n }\r\n\r\n checkIfSelected(stateId: any, event: any) {\r\n this.keyword = '';\r\n this.WhereCondition = 'null';\r\n if (!event.currentTarget.checked) {\r\n this.listOfID = this.listOfID.filter(m => m != stateId);\r\n }\r\n else {\r\n this.listOfID.push(stateId);\r\n }\r\n this.populateSelectedIdData(this.listOfID);\r\n }\r\n\r\n populateSelectedIdData(listOfID: any) {\r\n this.listOfData = [];\r\n this.columnName = [];\r\n this.columnData = [];\r\n this.isRecordFound = false;\r\n\r\n let sData = Object.assign([], this.mainMatrix);\r\n this.matrixData = [];\r\n\r\n if (this.listOfID != null) {\r\n let seprator = '';\r\n if (this.listOfID.length > 0) {\r\n this.listOfStateId = '';\r\n for (let iCounter = 0; iCounter < this.listOfID.length; iCounter++) {\r\n this.listOfStateId += seprator + this.listOfID[iCounter];\r\n seprator = ',';\r\n // Find by ID\r\n if (this.mainMatrix.length > 0) {\r\n for (var jCounter = 0; jCounter < sData.length; jCounter++) {\r\n if (sData[jCounter].stateId == this.listOfID[iCounter]) {\r\n this.matrixData.push(sData[jCounter]);\r\n }\r\n }\r\n }\r\n }\r\n this.selectedStateCounter = this.listOfID.length;\r\n this.isShowPdfButton = true;\r\n }\r\n else {\r\n this.listOfStateId = 'null';\r\n this.selectedStateCounter = 0;\r\n this.isShowPdfButton = false;\r\n }\r\n }\r\n this.isKeywordStateSearch = true;\r\n this.isRecordFound = true;\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n sort(colName: any) {\r\n if (this.sortColumnName != colName) {\r\n this.isAscending = true;\r\n }\r\n\r\n if (this.OrderBy === colName) {\r\n this.isAscending = !this.isAscending;\r\n }\r\n\r\n if (this.isAscending)\r\n this.UpDownArrowCommissionCertification = 'active-up';\r\n else\r\n this.UpDownArrowCommissionCertification = 'active';\r\n\r\n this.OrderByArray = [colName, \"DisplayOrder\"];\r\n this.OrderBy = colName;\r\n this.sortColumnName = colName;\r\n }\r\n\r\n keywordFilters($event) {\r\n this.listOfData = [];\r\n this.columnName = [];\r\n this.columnData = [];\r\n this.isRecordFound = false;\r\n\r\n if ($event.target.value != \"\" && $event.target.value != null) {\r\n this.keyword = $event.target.value;\r\n this.WhereCondition = $event.target.value;\r\n if (this.mainMatrix.length > 0) {\r\n let sData = Object.assign([], this.mainMatrix);\r\n this.matrixData = [];\r\n for (var iCounter = 0; iCounter < sData.length; iCounter++) {\r\n for (var i = 0; i < this.listOfID.length; i++) {\r\n if (this.listOfID[i] == sData[iCounter].stateId) {\r\n if (sData[iCounter].name.toLowerCase().indexOf(this.keyword.toLowerCase()) > -1) {\r\n this.matrixData.push(sData[iCounter]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n }\r\n else {\r\n this.WhereCondition = 'null'\r\n this.refreshGrid();\r\n }\r\n this.isRecordFound = true;\r\n this.isKeywordStateSearch = true;\r\n }\r\n\r\n refreshGrid() {\r\n if (this.mainMatrix.length > 0) {\r\n let sData = Object.assign([], this.mainMatrix);\r\n this.matrixData = [];\r\n for (var iCounter = 0; iCounter < sData.length; iCounter++) {\r\n for (var i = 0; i < this.listOfID.length; i++) {\r\n if (this.listOfID[i] == sData[iCounter].stateId) {\r\n this.matrixData.push(sData[iCounter]);\r\n }\r\n }\r\n }\r\n this.sortedCollection = this.orderPipe.transform(this.matrixData, 'name');\r\n }\r\n }\r\n\r\n clearSearch() {\r\n this.sortColumnName = '';\r\n this.UpDownArrowCommissionCertification = '';\r\n this.UpDownArrowAgencyAssessments = '';\r\n this.UpDownArrow911 = '';\r\n this.UpDownArrowUSF = '';\r\n this.UpDownArrowTRS = '';\r\n this.UpDownArrowOtherFees = '';\r\n this.UpDownArrowOtherRequirement = '';\r\n this.colIndex = 'StateName';\r\n this.OrderBy = 'DisplayOrder';\r\n this.OrderByArray = [\"DisplayOrder\"];\r\n this.WhereCondition = 'null';\r\n this.keyword = '';\r\n this.listOfData = [];\r\n this.columnName = [];\r\n this.columnData = [];\r\n this.isRecordFound = false;\r\n this.isAscending = false;\r\n this.UpDownArrow988 = '';\r\n this.GetRightPanelStateList();\r\n }\r\n\r\n navigateToFundDetails(stateId: any,stateName: any, AssementCatId: any) {\r\n this.blockDocument();\r\n sessionStorage.setItem('singleStatePreview', stateId);\r\n this.matrix.GetIPCSfundRefrence(this.tokenKey, stateId, AssementCatId, this.loginUser).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n let fundTitleReference = data['fundTitleReference'];\r\n if (fundTitleReference == '')\r\n fundTitleReference = 'null'\r\n\r\n ApplicationActivityStore('View', 'IPCS PRO - View History', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix/Fund/Details/' + fundTitleReference,stateName);\r\n\r\n let navigation = '/' + this.ClientSelectedTool + '/Matrix/Fund/Details/' + fundTitleReference;\r\n this.router.navigate([navigation]);\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n openpopup(stateid, statename) {\r\n this.statenamepopup = statename;\r\n this.GetUpdates(stateid);\r\n }\r\n\r\n GetUpdates(stateid): void {\r\n this.isupdatesloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\ndebugger\r\n this.parameterModel.pageSize = this.appModel.PageSize;\r\n this.parameterModel.pageIndex = '1';\r\n this.parameterModel.keywordFilter = 'null';\r\n this.parameterModel.whereCondition = ' StateId=' + stateid;\r\n this.parameterModel.orderBy = 'UpdateDate desc';\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.parameterModel.userID = this.loginUser.toString();\r\n this.parameterModel.updatetype = \"null\";\r\n this.parameterModel.unreadonly = \"1\";\r\n if (sessionStorage.getItem('isVisibleflag') != '')\r\n sessionStorage.setItem('isVisibleflag', sessionStorage.getItem('isVisibleflag'));\r\n else\r\n sessionStorage.setItem('isVisibleflag', 'true');\r\n\r\n this.updatesService.getIPCSupdatesfindByUserID(this.tokenKey, this.parameterModel).subscribe(\r\n data => {\r\n debugger\r\n this.isupdatesloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.updatesModel = data[\"updates\"];\r\n if (this.updatesModel.length > 0) {\r\n this.totalupdatesRecordsCount = this.updatesModel.length;\r\n this.saveNotification(this.updatesModel);\r\n }\r\n else {\r\n this.totalupdatesRecordsCount = 0;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n\r\n saveNotification(updates) {\r\n let _updates = updates;\r\n for (let iCounter = 0; iCounter < _updates.length; iCounter++) {\r\n _updates[iCounter].createdBy = this.loginUser.toString();\r\n }\r\n let count = updates.length;\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n this.updatesService.AddIIPCSNotification(_updates, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n sessionStorage.setItem(this.unreaddata, ((+this.totalunread) - (+count)).toString());\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n\r\n // Set Update Counter Logic\r\n if (window.document.body.getElementsByClassName('unread')) {\r\n if (this.totalunread == 0) {\r\n window.document.body.getElementsByClassName('unread')[0].setAttribute(\"style\", \"display:none\");\r\n }\r\n else\r\n window.document.body.getElementsByClassName('unread')[0].innerHTML = this.totalunread.toString();\r\n }\r\n this.GetRightPanelStateList();\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n });\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n selectAllCheckBox(event: any) {\r\n this.listOfStateId = '';\r\n this.listOfID = [];\r\n let allState = Object.assign([], this.listOfState);\r\n\r\n if (!event.currentTarget.checked) {\r\n this.isShowPdfButton = false;\r\n // Select checkbox\r\n if (allState.length > 0) {\r\n for (var jCounter = 0; jCounter < allState.length; jCounter++) {\r\n this.listOfState[jCounter].isChecked = false;\r\n }\r\n }\r\n }\r\n else {\r\n this.listOfID = this.selectAllID;\r\n this.isShowPdfButton = true;\r\n // Select checkbox\r\n if (allState.length > 0) {\r\n for (var jCounter = 0; jCounter < allState.length; jCounter++) {\r\n this.listOfState[jCounter].isChecked = true;\r\n }\r\n }\r\n }\r\n\r\n this.populateSelectedIdData(this.listOfID);\r\n }\r\n\r\n navigateToFundDetailByName(stateId: any, stateName: any) {\r\n sessionStorage.setItem('singleStatePreview', stateId);\r\n \r\n ApplicationActivityStore('View', 'IPCS PRO - View History', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix/Fund/Details/', stateName);\r\n\r\n let navigation = '/' + this.ClientSelectedTool + '/Matrix/Fund/Details/' + stateName;\r\n this.router.navigate([navigation]);\r\n }\r\n\r\n pdfDocument() {\r\n this.blockDocument();\r\n let mainURL = this.baseUrl;\r\n let url = ' '\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n //url += '
';\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '1',this.productId).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n //this.downloadFile(data['fileName'], data['url']);\r\n this.downloadFile('Matrix.pdf', data['url'], data['fileName']);\r\n }\r\n },\r\n error => {\r\n this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n public downloadFile(filename: any, url: any, orignalFileName: any) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename);\r\n \r\n ApplicationActivityStore('Download', 'IPCS PRO File download ' + filename, this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix');\r\n \r\n sessionStorage.setItem('fileloading', 'false');\r\n this.htmlToPdf.DeletePDF(this.tokenKey, orignalFileName).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n },\r\n );\r\n }\r\n );\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L0lQQ1MvbXktZmF2b3JpdGVzL215LWZhdm9yaXRlcy5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ToolEnum } from 'src/Models/Common';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { IPCSstateMasterModel, stateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { iprupdatesService } from 'src/Services/iprupdatesService';\r\n\r\n@Component({\r\n selector: 'app-ipcs-my-favorites',\r\n templateUrl: './my-favorites.component.html',\r\n styleUrls: ['./my-favorites.component.css']\r\n})\r\nexport class IPCSMyFavoritesComponent implements OnInit {\r\n userID: number = 0;\r\n appModel: any;\r\n isloading: boolean = false;\r\n tokenKey: string = '';\r\n\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n listOfStateId: number[] = [];\r\n stateFilter: string = '';\r\n favouriteStateModel: IPCSstateMasterModel[] = [];\r\n\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n\r\n ClientSelectedTool: string;\r\n productId: number;\r\n baseUrl: string;\r\n\r\n statusCode: any;\r\n ValidationMessage: string;\r\n DeSelectedFavoriteId: number = 0;\r\n\r\n constructor(@Inject('BASE_URL') baseUrl: string,\r\n private matrix: MatrixService, private toastr: ToastrService, private iprupdatesService: iprupdatesService, private titleService: Title,\r\n private checkAuth: CheckAuth, private router: Router, private activedRoute: ActivatedRoute) {\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.baseUrl = baseUrl;\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.titleService.setTitle('My Favorites');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.GetStateData();\r\n }\r\n\r\n GetStateData(): void {\r\n this.listOfStateId = [];\r\n this.dropdownListState = [];\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetIPCSMatrixStatesByUserID(this.tokenKey, this.userID).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n this.selectedItemsState = [];\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n\r\n if (data[\"state\"][iCounter].isActionFavorite == true) {\r\n this.selectedItemsState.push({ \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name });\r\n this.listOfStateId.push(data[\"state\"][iCounter].stateId);\r\n }\r\n\r\n }\r\n this.favouriteStateModel = data[\"state\"].filter(book => book.isActionFavorite === true);\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: true\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n SaveUserPrefrences() {\r\n this.matrix.SaveUserPrefrences(this.tokenKey, this.stateFilter, this.userID, this.productId).subscribe(\r\n data => {\r\n this.GetStateData();\r\n },\r\n error => {\r\n this.statusCode = error;\r\n }\r\n );\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n OnSelectState($event) {\r\n if (this.listOfStateId != null) {\r\n if (this.listOfStateId.length > 0) {\r\n this.listOfStateId = this.removeElemetninArray(this.listOfStateId, $event.id)\r\n this.listOfStateId.push($event.id);\r\n }\r\n else {\r\n this.listOfStateId.push($event.id);\r\n }\r\n }\r\n this.stateFilter = this.listOfStateId.join(',');\r\n this.SaveUserPrefrences();\r\n }\r\n\r\n OnDeSelectState($event) {\r\n if (this.listOfStateId != null) {\r\n if (this.listOfStateId.length > 0) {\r\n this.listOfStateId = this.removeElemetninArray(this.listOfStateId, $event.id)\r\n }\r\n }\r\n this.stateFilter = this.listOfStateId.join(',');\r\n if (this.listOfStateId.length == 0)\r\n this.stateFilter = 'null';\r\n this.SaveUserPrefrences();\r\n }\r\n\r\n onSelectAllStateList($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfStateId != null) {\r\n if (this.listOfStateId.length > 0) {\r\n this.listOfStateId = this.removeElemetninArray(this.listOfStateId, $event[iCounter].id)\r\n this.listOfStateId.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfStateId.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n this.stateFilter = this.listOfStateId.join(',');\r\n this.SaveUserPrefrences();\r\n }\r\n\r\n onDeSelectAllStateList($event) {\r\n this.listOfStateId = [];\r\n this.stateFilter = this.listOfStateId.join(',');\r\n if (this.listOfStateId.length == 0)\r\n this.stateFilter = 'null';\r\n this.SaveUserPrefrences();\r\n }\r\n\r\n RemoveStarFavorite(id: number, Type: string) {\r\n // this.IsDeselected = 1;\r\n this.DeSelectedFavoriteId = id;\r\n if (Type == 'state') {\r\n this.ValidationMessage = \"Are you sure you want to remove selected state from favorite list?\"\r\n }\r\n var elem = document.getElementById(\"lnkFavouriteValidation\");\r\n elem.click();\r\n }\r\n\r\n DeselectFavourite() { \r\n this.iprupdatesService.RemoveMatrixFavoriteByUserID(this.tokenKey, this.userID, this.productId, this.DeSelectedFavoriteId).subscribe(\r\n data => {\r\n this.DeSelectedFavoriteId = 0;\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Selected state removed successfully from favorite list.', 'Favorite', 'success');\r\n this.GetStateData();\r\n document.getElementById(\"btnClose\").click();\r\n }\r\n\r\n }\r\n , error => {\r\n document.getElementById(\"btnClose\").click();\r\n }\r\n );\r\n\r\n }\r\n\r\n}\r\n","export default \".custom-checkbox .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #2d0080;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #2d0080;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvSVBDUy91cGRhdGUvdXBkYXRlLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsV0FBVztBQUNiIiwiZmlsZSI6InNyYy9hcHAvRnJvbnQvSVBDUy91cGRhdGUvdXBkYXRlLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkMDA4MDtcclxufVxyXG5cclxuLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQwMDgwO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcbiJdfQ== */\"","import { Component, OnInit, ViewChild, ElementRef, Input, Inject } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router, ActivatedRoute, Params } from '@angular/router';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { htmlToPdf } from 'src/Services/htmlToPdf';\r\nimport * as FileSaver from 'file-saver';\r\nimport { MatrixFundDetailsService } from 'src/Services/matrix-fund-details.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ActionStatusPopupComponent } from 'src/app/Shared/action-status-popup/action-status-popup.component';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\nimport { IPCSupdatesModel, updatesModel } from 'src/Models/updatesModel';\r\nimport { IPCSupdatesPageModel, updatesPageModel } from 'src/Models/updatesPageModel';\r\nimport { updatesService } from 'src/Services/updatesService';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { AppConfig } from 'src/Services/app.config';\r\nimport { ActionActivity, ToolEnum } from 'src/Models/Common';\r\n\r\n@Component({\r\n selector: 'app-ipcs-update',\r\n templateUrl: './update.component.html',\r\n styleUrls: ['./update.component.css']\r\n})\r\nexport class IPCSUpdateComponent implements OnInit {\r\n userID: number = 0;\r\n isAscending: boolean;\r\n statusCode: number = 0;\r\n appModel: any;\r\n\r\n upDowUpdateCategoryNameCSS: string = '';\r\n upDowStateCSS: string = '';\r\n upDowUpdateTypeCSS: string = '';\r\n upDowCreatedByCSS: string = '';\r\n upDowCreatedDateCSS: string = '';\r\n upDowModifiedByCSS: string = '';\r\n upDowModifiedDateCSS: string = '';\r\n upDowUpdateDateCSS: string = '';\r\n\r\n isloading: boolean = false;\r\n tokenKey: string = '';\r\n updatesModel: IPCSupdatesModel[] = [];\r\n isRecords: boolean = false;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n totalRecordsCount: number = -1;\r\n deleteupdateId: number = 0;\r\n @ViewChild('deletecloseBtn', { static: false }) deletecloseBtn: ElementRef;\r\n queryParams: string = '';\r\n @Input()\r\n rangeOfupdatesDates: Date[] = [];\r\n updatesForm: FormGroup;\r\n totalunread: number = 0;\r\n alldata: string = 'all';\r\n unreaddata: string = 'unread';\r\n parameterModel = new IPCSupdatesPageModel();\r\n baseUrl: string;\r\n\r\n //State List\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n stateFilter: string = '';\r\n\r\n listOfstateID: string[] = [];\r\n ClientSelectedTool: string;\r\n productId: number = 1;\r\n\r\n isActionItemSubscription: boolean = false;\r\n\r\n constructor(private modalService: NgbModal, private MaxtixFund: MatrixFundDetailsService,\r\n @Inject('BASE_URL') baseUrl: string, private htmlToPdf: htmlToPdf,\r\n private updatesService: updatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth\r\n , private router: Router, private activedRoute: ActivatedRoute, private appActivity: ApplicationActivityService) {\r\n this.baseUrl = baseUrl;\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n\r\n this.updatesForm = new FormGroup({\r\n rangeOfupdatesDates: new FormControl(),\r\n stateId: new FormControl(),\r\n });\r\n\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.titleService.setTitle('Updates');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.queryParams = this.activedRoute.snapshot.queryParams['data'];\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n if (this.totalunread == 0) {\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Update'], { queryParams: { data: this.alldata } });\r\n this.queryParams = this.alldata;\r\n }\r\n this.movetotop();\r\n this.parameterModel.pageIndex = 1;\r\n this.parameterModel.pageSize = 20;\r\n this.parameterModel.keywordFilter = 'null';\r\n this.parameterModel.whereCondition = 'null';\r\n this.parameterModel.orderBy = 'UpdateDate desc';\r\n this.upDowUpdateDateCSS = 'active';\r\n this.isAscending = true;\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.parameterModel.userID = this.userID.toString();\r\n this.parameterModel.updatetype = \"1,2\";\r\n this.isloading = true;\r\n this.GetUpdates();\r\n this.GetStateData();\r\n this.clientHasActionItemSubscription();\r\n }\r\n\r\n clientHasActionItemSubscription() {\r\n let clientToolAccess = sessionStorage.getItem('ClientAccessibleTools');\r\n if (clientToolAccess != null && clientToolAccess != '') {\r\n let arraySubscription = clientToolAccess.split(',');\r\n if (arraySubscription.length > 0) {\r\n let tmpAction = ToolEnum[ToolEnum.actionitem];\r\n let coun = arraySubscription.filter(m => m === tmpAction);\r\n if (coun.length > 0)\r\n this.isActionItemSubscription = true;\r\n else\r\n this.isActionItemSubscription = false;\r\n }\r\n }\r\n }\r\n\r\n GetUpdates(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n let unreadonly = \"0\";\r\n if (this.queryParams == this.unreaddata) {\r\n unreadonly = \"1\";\r\n }\r\n this.parameterModel.unreadonly = unreadonly;\r\n this.updatesService.getIPCSupdatesfindByUserID(this.tokenKey, this.parameterModel).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.updatesModel = data[\"updates\"];\r\n if (this.updatesModel.length > 0) {\r\n debugger\r\n this.isRecords = true;\r\n this.totalRecordsCount = parseInt(this.updatesModel[0].totalRecordCount);\r\n if (this.totalunread) {\r\n this.saveNotification(this.updatesModel);\r\n }\r\n }\r\n else {\r\n this.totalRecordsCount = 0;\r\n this.isRecords = false;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n\r\n ActiveInactiveUpdates(updateId: any, isactive: any) {\r\n this.blockDocument();\r\n this.updatesService.ActiveinactiveIPCSupdates(this.tokenKey, updateId, isactive)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (isactive) {\r\n this.showMessage('Activated successfully', 'Active', 'success');\r\n }\r\n else {\r\n this.showMessage('Inactivated successfully', 'Inactive', 'success');\r\n }\r\n this.GetUpdates();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n sort(sortBy: string) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.parameterModel.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"UpdateCategoryName\") {\r\n this.upDowUpdateCategoryNameCSS = 'active';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"StateName\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = 'active';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"UpdateType\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = 'active';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedBy\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = 'active';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = 'active';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedBy\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = 'active';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = 'active';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"UpdateDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = 'active';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.parameterModel.orderBy = sortBy;\r\n\r\n if (sortBy === \"UpdateCategoryName\") {\r\n this.upDowUpdateCategoryNameCSS = 'active-up';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"StateName\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = 'active-up';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"UpdateType\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = 'active-up';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedBy\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = 'active-up';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = 'active-up';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedBy\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = 'active-up';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = 'active-up';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"UpdateDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = 'active-up';\r\n }\r\n }\r\n this.GetUpdates();\r\n }\r\n\r\n pageChanged($event) {\r\n this.parameterModel.pageIndex = parseInt($event.page);\r\n this.GetUpdates();\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n\r\n keywordFilters($event) {\r\n this.parameterModel.pageIndex = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.parameterModel.keywordFilter = $event.target.value;\r\n else\r\n this.parameterModel.keywordFilter = 'null';\r\n\r\n this.GetUpdates();\r\n }\r\n\r\n isupdatesDatesFilter(dateArray: any) {\r\n this.rangeOfupdatesDates = dateArray;\r\n\r\n if (this.rangeOfupdatesDates != null) {\r\n if (this.rangeOfupdatesDates.length > 1) {\r\n let dd1 = this.rangeOfupdatesDates[0].getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (this.rangeOfupdatesDates[0].getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n let dd2 = this.rangeOfupdatesDates[1].getDate().toString();\r\n if (parseInt(dd2.toString()) < 10)\r\n dd2 = '0' + dd2.toString();\r\n\r\n let mm2 = (this.rangeOfupdatesDates[1].getMonth() + 1).toString();\r\n if (parseInt(mm2.toString()) < 10)\r\n mm2 = '0' + mm2.toString();\r\n\r\n this.parameterModel.fromupdatesDateFilter = mm1 + '-' + dd1 + '-' + this.rangeOfupdatesDates[0].getFullYear();\r\n this.parameterModel.toupdatesDateFilter = mm2 + '-' + dd2 + '-' + this.rangeOfupdatesDates[1].getFullYear();\r\n }\r\n if (this.parameterModel.fromupdatesDateFilter === null || this.parameterModel.fromupdatesDateFilter === '') {\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n }\r\n }\r\n else {\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n }\r\n if (this.parameterModel.fromupdatesDateFilter != 'null' && this.parameterModel.toupdatesDateFilter != 'null')\r\n this.GetUpdates();\r\n }\r\n\r\n updatesDateFilterClear() {\r\n this.rangeOfupdatesDates = [];\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.GetUpdates();\r\n }\r\n\r\n viewallupdates() {\r\n this.queryParams = this.alldata;\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Update'], { queryParams: { data: this.alldata } });\r\n this.GetUpdates();\r\n }\r\n\r\n saveNotification(updates) {\r\n let _updates = updates;\r\n for (let iCounter = 0; iCounter < _updates.length; iCounter++) {\r\n _updates[iCounter].createdBy = this.userID.toString();\r\n }\r\n this.updatesService.AddIIPCSNotification(_updates, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n sessionStorage.setItem(this.unreaddata, \"0\");\r\n\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n // Set Update Counter Logic\r\n if (window.document.body.getElementsByClassName('unread')) {\r\n if (this.totalunread == 0) {\r\n window.document.body.getElementsByClassName('unread')[0].setAttribute(\"style\", \"display:none\");\r\n }\r\n else\r\n window.document.body.getElementsByClassName('unread')[0].innerHTML = this.totalunread.toString();\r\n }\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n });\r\n }\r\n\r\n updatetypechange($event) {\r\n this.parameterModel.pageIndex = 1;\r\n if ($event.target.checked) {\r\n if (this.parameterModel.updatetype == \"-1\") { this.parameterModel.updatetype = \"\" }\r\n if (this.parameterModel.updatetype == '' || this.parameterModel.updatetype == 'null') {\r\n this.parameterModel.updatetype = $event.target.value;\r\n }\r\n else {\r\n this.parameterModel.updatetype += ',' + $event.target.value;\r\n }\r\n }\r\n else {\r\n this.parameterModel.updatetype = this.parameterModel.updatetype.replace($event.target.value, \"\");\r\n this.parameterModel.updatetype = this.parameterModel.updatetype.replace(/,\\s*$/, \"\");\r\n this.parameterModel.updatetype = this.parameterModel.updatetype.replace(\",,\", \",\");\r\n if (this.parameterModel.updatetype.charAt(0) == \",\") {\r\n this.parameterModel.updatetype = this.parameterModel.updatetype.slice(1)\r\n }\r\n if (this.parameterModel.updatetype == \"\") { this.parameterModel.updatetype = \"-1\" }\r\n }\r\n\r\n this.GetUpdates();\r\n }\r\n\r\n navigateToFundDetailByName(stateId: any, stateName: any, title: any, fieldName: any) {\r\n sessionStorage.setItem('singleStatePreview', stateId);\r\n sessionStorage.setItem('updatefunddata', title + ' - ' + fieldName);\r\n \r\n ApplicationActivityStore('View', 'IPCS PRO Updates - View History', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix/Fund/Details/', stateName);\r\n \r\n let navigation = '/' + this.ClientSelectedTool + '/Matrix/Fund/Details/' + stateName;\r\n this.router.navigate([navigation]);\r\n }\r\n\r\n pdfDocument() {\r\n this.blockDocument();\r\n let mainURL = this.baseUrl;\r\n let url = '
';\r\n url += '
';\r\n url += '
';\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '0',this.productId).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n //this.downloadFile(data['fileName'], data['url']);\r\n this.downloadFile('Update', data['url']);\r\n }\r\n },\r\n error => {\r\n this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n public downloadFile(filename, url) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename);\r\n \r\n ApplicationActivityStore('Download', 'IPCS PRO Updates File download ' + filename, this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Update');\r\n \r\n sessionStorage.setItem('fileloading', 'false');\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n GetStateData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.MaxtixFund.GetIPCSMatrixFundState(this.tokenKey, this.userID).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n // Set All Item\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: false,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n FilterSelecteventState($event) {\r\n this.stateFilter = '';\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event['id']);\r\n this.listOfstateID.push($event.id);\r\n this.getString(this.listOfstateID);\r\n this.parameterModel.keywordFilter = this.stateFilter;\r\n this.GetUpdates();\r\n }\r\n\r\n FilterDeSelectseventState($event) {\r\n this.stateFilter = '';\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event['id']);\r\n this.getString(this.listOfstateID);\r\n this.parameterModel.keywordFilter = this.stateFilter;\r\n this.GetUpdates();\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e != element);\r\n }\r\n\r\n getString(array: any) {\r\n let sprator = '';\r\n this.stateFilter = '';\r\n for (let iCounter = 0; iCounter < array.length; iCounter++) {\r\n this.stateFilter += sprator + array[iCounter];\r\n sprator = ',';\r\n }\r\n }\r\n\r\n onSelectAllStateList($event) {\r\n this.stateFilter = '';\r\n if ($event != \"\" && $event != null) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event[iCounter].id);\r\n this.listOfstateID.push($event[iCounter].id);\r\n }\r\n this.getString(this.listOfstateID);\r\n this.parameterModel.keywordFilter = this.stateFilter;\r\n }\r\n this.GetUpdates();\r\n }\r\n\r\n onDeSelectAllStateList($event) {\r\n this.listOfstateID = [];\r\n this.stateFilter = '';\r\n this.parameterModel.keywordFilter = '';\r\n this.GetUpdates();\r\n }\r\n\r\n OpenActionStatusPopup(actionId: any, updateId: any, briefingId) {\r\n\r\n let prodid = ToolEnum.actionitem.toString();\r\n sessionStorage.setItem('productId', prodid);\r\n sessionStorage.setItem('actionId', actionId);\r\n sessionStorage.setItem('updateId', updateId);\r\n sessionStorage.setItem('briefingId', briefingId);\r\n const modalRef = this.modalService.open(ActionStatusPopupComponent, { size: 'lg' }).result.then(\r\n result => {\r\n if (result == 'Yes') {\r\n // this.GetDashboardActionItemsReuiredAttention();\r\n }\r\n },\r\n reason => {\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setEmailAutoLoginParameter();\r\n }\r\n\r\n setEmailAutoLoginParameter() {\r\n if (sessionStorage.getItem('DisplayMessage') != null) {\r\n this.showMessage(sessionStorage.getItem('DisplayMessage') + ' - user not have access', 'Error', 'error');\r\n sessionStorage.removeItem('DisplayMessage');\r\n }\r\n }\r\n\r\n}\r\n","export default \".lightblue {\\r\\n color: #0039BF;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.lightpink {\\r\\n color: #f5898e;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.gray {\\r\\n color: #7F7F7F;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.martop0 {\\r\\n margin-top:0px !important;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.carrierbody td {\\r\\n width: 300px;\\r\\n padding-bottom: 10px;\\r\\n padding-right: 30px;\\r\\n vertical-align: top;\\r\\n border-bottom: 1px solid #e4e4e4;\\r\\n padding-top: 10px;\\r\\n}\\r\\n\\r\\n.carrierbody td b {\\r\\n display: block;\\r\\n }\\r\\n\\r\\n.noborder td{\\r\\n border:none !important;\\r\\n}\\r\\n\\r\\n.center {\\r\\n text-align: center\\r\\n}\\r\\n\\r\\n.width25{\\r\\n width:25% !important;\\r\\n}\\r\\n\\r\\n.right{\\r\\n text-align:right;\\r\\n}\\r\\n\\r\\n.clearfix {\\r\\n clear:both;\\r\\n padding-bottom:10px;\\r\\n}\\r\\n\\r\\n.registration-label {\\r\\n margin-top: 6px;\\r\\n color: #b1b8bb;\\r\\n margin-right: 20px;\\r\\n margin-left: 0;\\r\\n}\\r\\n\\r\\n.lblRegisterStatus {\\r\\n font-family: 'Sarabun', sans-serif;\\r\\n margin-left: 8px;\\r\\n font-size: 14px;\\r\\n}\\r\\n\\r\\n.displyinline{\\r\\n display:inline-block;\\r\\n}\\r\\n\\r\\n.showonresponsive, .showonresponsivefavorite {\\r\\n display: none;\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 730px) {\\r\\n .showonresponsive {\\r\\n display: block;\\r\\n }\\r\\n .up-fil.two {\\r\\n width: 36%;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 1300px) {\\r\\n .showonresponsivefavorite {\\r\\n display: block;\\r\\n }\\r\\n .hidespe {\\r\\n display:none;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 655px) {\\r\\n .width100 {\\r\\n width: 100%\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 480px) {\\r\\n .width70 {\\r\\n width: 70% !important\\r\\n }\\r\\n .regstatus {\\r\\n width:100% !important;\\r\\n padding-left:3px !important;\\r\\n }\\r\\n .right {\\r\\n text-align:left;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 1300px) { \\r\\n .up-fil.three {\\r\\n width: 4%;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 731px) and (max-width: 1300px) {\\r\\n .top10 {\\r\\n margin-top: 10px;\\r\\n }\\r\\n}\\r\\n\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvSVBSL2NhcnJpZXJzL2NhcnJpZXJzLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxjQUFjO0VBQ2QsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsY0FBYztFQUNkLGNBQWM7QUFDaEI7O0FBQ0E7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsV0FBVztBQUNiOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0FBQ2I7O0FBRUE7RUFDRSxZQUFZO0VBQ1osb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsZ0NBQWdDO0VBQ2hDLGlCQUFpQjtBQUNuQjs7QUFFRTtJQUNFLGNBQWM7RUFDaEI7O0FBQ0Y7RUFDRSxzQkFBc0I7QUFDeEI7O0FBQ0E7RUFDRTtBQUNGOztBQUNBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUNBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUNBO0VBQ0UsVUFBVTtFQUNWLG1CQUFtQjtBQUNyQjs7QUFDQTtFQUNFLGVBQWU7RUFDZixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLGNBQWM7QUFDaEI7O0FBQ0E7RUFDRSxrQ0FBa0M7RUFDbEMsZ0JBQWdCO0VBQ2hCLGVBQWU7QUFDakI7O0FBQ0E7RUFDRSxvQkFBb0I7QUFDdEI7O0FBQ0E7RUFDRSxhQUFhO0FBQ2Y7O0FBQ0E7RUFDRTtJQUNFLGNBQWM7RUFDaEI7RUFDQTtJQUNFLFVBQVU7RUFDWjtBQUNGOztBQUNBO0VBQ0U7SUFDRSxjQUFjO0VBQ2hCO0VBQ0E7SUFDRSxZQUFZO0VBQ2Q7QUFDRjs7QUFDQTtFQUNFO0lBQ0U7RUFDRjtBQUNGOztBQUNBO0VBQ0U7SUFDRTtFQUNGO0VBQ0E7SUFDRSxxQkFBcUI7SUFDckIsMkJBQTJCO0VBQzdCO0VBQ0E7SUFDRSxlQUFlO0VBQ2pCO0FBQ0Y7O0FBQ0E7RUFDRTtJQUNFLFNBQVM7RUFDWDtBQUNGOztBQUNBO0VBQ0U7SUFDRSxnQkFBZ0I7RUFDbEI7QUFDRiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L0lQUi9jYXJyaWVycy9jYXJyaWVycy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmxpZ2h0Ymx1ZSB7XHJcbiAgY29sb3I6ICMwMDM5QkY7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5saWdodHBpbmsge1xyXG4gIGNvbG9yOiAjZjU4OThlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uZ3JheSB7XHJcbiAgY29sb3I6ICM3RjdGN0Y7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLm1hcnRvcDAge1xyXG4gIG1hcmdpbi10b3A6MHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsLWxpZ2h0Ymx1ZTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbn1cclxuXHJcbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRibHVlOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRjtcclxufVxyXG5cclxuLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRibHVlOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzlCRjtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRwaW5rOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ODk4ZTtcclxufVxyXG5cclxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbC1saWdodHBpbms6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjU4OThlO1xyXG59XHJcblxyXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbC1saWdodHBpbms6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjU4OThlO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbC1ncmF5OmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdGN0Y3RjtcclxufVxyXG5cclxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbC1ncmF5OmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdGN0Y3RjtcclxufVxyXG5cclxuLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtZ3JheTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM3RjdGN0Y7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5jYXJyaWVyYm9keSB0ZCB7XHJcbiAgd2lkdGg6IDMwMHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZTRlNDtcclxuICBwYWRkaW5nLXRvcDogMTBweDtcclxufVxyXG5cclxuICAuY2FycmllcmJvZHkgdGQgYiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbi5ub2JvcmRlciB0ZHtcclxuICBib3JkZXI6bm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbi5jZW50ZXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlclxyXG59XHJcbi53aWR0aDI1e1xyXG4gIHdpZHRoOjI1JSAhaW1wb3J0YW50O1xyXG59XHJcbi5yaWdodHtcclxuICB0ZXh0LWFsaWduOnJpZ2h0O1xyXG59XHJcbi5jbGVhcmZpeCB7XHJcbiAgY2xlYXI6Ym90aDtcclxuICBwYWRkaW5nLWJvdHRvbToxMHB4O1xyXG59XHJcbi5yZWdpc3RyYXRpb24tbGFiZWwge1xyXG4gIG1hcmdpbi10b3A6IDZweDtcclxuICBjb2xvcjogI2IxYjhiYjtcclxuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbn1cclxuLmxibFJlZ2lzdGVyU3RhdHVzIHtcclxuICBmb250LWZhbWlseTogJ1NhcmFidW4nLCBzYW5zLXNlcmlmO1xyXG4gIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG59XHJcbi5kaXNwbHlpbmxpbmV7XHJcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbn1cclxuLnNob3dvbnJlc3BvbnNpdmUsIC5zaG93b25yZXNwb25zaXZlZmF2b3JpdGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzMwcHgpIHtcclxuICAuc2hvd29ucmVzcG9uc2l2ZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbiAgLnVwLWZpbC50d28ge1xyXG4gICAgd2lkdGg6IDM2JTtcclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XHJcbiAgLnNob3dvbnJlc3BvbnNpdmVmYXZvcml0ZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbiAgLmhpZGVzcGUge1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTVweCkge1xyXG4gIC53aWR0aDEwMCB7XHJcbiAgICB3aWR0aDogMTAwJVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gIC53aWR0aDcwIHtcclxuICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudFxyXG4gIH1cclxuICAucmVnc3RhdHVzIHtcclxuICAgIHdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctbGVmdDozcHggIWltcG9ydGFudDtcclxuICB9XHJcbiAgLnJpZ2h0IHtcclxuICAgIHRleHQtYWxpZ246bGVmdDtcclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7ICBcclxuICAudXAtZmlsLnRocmVlIHtcclxuICAgIHdpZHRoOiA0JTtcclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzMxcHgpIGFuZCAobWF4LXdpZHRoOiAxMzAwcHgpIHtcclxuICAudG9wMTAge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICB9XHJcbn1cclxuXHJcbiJdfQ== */\"","import { Component, OnInit, ViewChild, ViewChildren, ElementRef, HostListener, Input, Inject, Output, EventEmitter } from '@angular/core';\r\nimport { IPRUpdatesModel } from '../../../../Models/IPRUpdatesModel';\r\nimport { iprupdatesService} from '../../../../Services/iprupdatesService';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { AppConfig } from '../../../../Services/app.config';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { Router, ActivatedRoute, Params } from '@angular/router';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { htmlToPdf } from '../../../../../src/Services/htmlToPdf';\r\nimport { updatesPageModel, updatesPageModelV2 } from '../../../../Models/updatesPageModel';\r\nimport { StateMasterService } from '../../../../../src/Services/state-master.service';\r\nimport { MatrixFundDetailsService } from '../../../../../src/Services/matrix-fund-details.service';\r\nimport * as FileSaver from 'file-saver';\r\nimport { ActionActivity, ToolEnum } from 'src/Models/Common';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\n\r\n@Component({\r\n selector: 'app-carriers',\r\n templateUrl: './carriers.component.html',\r\n styleUrls: ['./carriers.component.css']\r\n})\r\nexport class CarriersComponent implements OnInit {\r\n userID: number = 0; \r\n isAscending: boolean;\r\n statusCode: number = 0;\r\n appModel: any;\r\n\r\n upDowCarrierCSS: string = '';\r\n upDowPreviousNameCSS: string = ''; \r\n upDowUpdateDateCSS: string = '';\r\n \r\n isloading: boolean = false;\r\n iscarrierloading: boolean = false;\r\n tokenKey: string = '';\r\n iprupdatesModel: IPRUpdatesModel[] = [];\r\n iprCarrierDetailModel: IPRUpdatesModel[] = [];\r\n favouriteUpdateModel: IPRUpdatesModel[] = [];\r\n isRecords: boolean = false;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n totalRecordsCount: number = -1; \r\n queryParams: string = '';\r\n @Input()\r\n rangeOfupdatesDates: Date[] = [];\r\n carrierForm: FormGroup; \r\n totalunread: number = 0;\r\n alldata: string = 'all';\r\n unreaddata: string = 'unread';\r\n parameterModel = new updatesPageModel();\r\n parameterModelV2 = new updatesPageModelV2();\r\n baseUrl: string;\r\n\r\n //State List\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n stateFilter: string = '';\r\n\r\n listOfstateID: string[] = [];\r\n lastModifiedDetails: string;\r\n ClientSelectedTool: string;\r\n RegisteredChecked: boolean = true;\r\n NoLongerRegisteredChecked: boolean = true;\r\n NotRegisteredChecked: boolean = true;\r\n ActiveStates: string = '';\r\n DeActiveStates: string = '';\r\n NotRegisteredStates: string = '';\r\n SelectedCarrier: number = 0;\r\n CarrierName: string = '';\r\n FilterFavourite: number = 0;\r\n carrierFilter: string = ''\r\n productId : number;\r\n pageNumber:number=1;\r\n pageSize:number=20;\r\n\r\n constructor(private MaxtixFund: MatrixFundDetailsService,private stateMasterService: StateMasterService, @Inject('BASE_URL') baseUrl: string\r\n , private htmlToPdf: htmlToPdf, private iprupdatesService: iprupdatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth\r\n , private router: Router, private activedRoute: ActivatedRoute,\r\n private appActivity: ApplicationActivityService) { \r\n this.baseUrl = baseUrl;\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n\r\n this.carrierForm = new FormGroup({\r\n rangeOfupdatesDates: new FormControl(),\r\n stateId: new FormControl(),\r\n carrierFilter: new FormControl()\r\n });\r\n \r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n this.titleService.setTitle('Providers');\r\n }\r\n\r\n ngOnInit() { \r\n this.movetotop(); \r\n this.parameterModelV2.keywordFilter = 'null';\r\n this.parameterModelV2.whereCondition = 'null';\r\n this.parameterModelV2.orderBy = 'UpdateDate DESC';\r\n this.upDowUpdateDateCSS = 'active';\r\n this.isAscending = true;\r\n this.parameterModelV2.fromupdatesDateFilter = \"null\";\r\n this.parameterModelV2.toupdatesDateFilter = \"null\";\r\n this.parameterModelV2.userID = this.userID.toString();\r\n //this.parameterModel.updatetype = \"1,0,-1\";\r\n this.parameterModelV2.updatetype = \"1,0\";\r\n this.parameterModelV2.pageNumber=this.pageNumber;\r\n this.parameterModelV2.pageSize=this.pageSize;\r\n this.isloading = false;\r\n this.GetCarriers();\r\n this.GetStateData();\r\n }\r\n\r\n GetCarriers(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n let unreadonly = \"0\";\r\n if (this.queryParams == this.unreaddata) {\r\n unreadonly = \"1\";\r\n }\r\n this.parameterModelV2.unreadonly = unreadonly;\r\n this.iprupdatesService.GetCarriersV2(this.tokenKey, this.parameterModelV2.fromupdatesDateFilter.toString(), this.parameterModelV2.toupdatesDateFilter.toString(), this.parameterModelV2.updatetype, this.parameterModelV2.orderBy, this.parameterModelV2.keywordFilter, this.userID, this.FilterFavourite, this.carrierFilter,this.parameterModelV2.pageNumber,this.parameterModelV2.pageSize).subscribe(\r\n // this.iprupdatesService.GetCarriers(this.tokenKey, this.parameterModel.fromupdatesDateFilter.toString(), this.parameterModel.toupdatesDateFilter.toString(), this.parameterModel.updatetype, this.parameterModel.orderBy, this.parameterModel.keywordFilter, this.userID, this.FilterFavourite, this.carrierFilter).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.iprupdatesModel = data[\"updates\"];\r\n ApplicationActivityStore('View', 'IPR - Providers ', this.appActivity, ToolEnum.ipr, ActionActivity.IPR, '/ipr/Providers');\r\n\r\n if (this.iprupdatesModel.length > 0) {\r\n this.isRecords = true;\r\n this.totalRecordsCount = Number(this.iprupdatesModel[0].totalRecordCount);\r\n this.lastModifiedDetails = 'Last updated on ' + this.iprupdatesModel[0].lastModifiedDate;\r\n }\r\n else {\r\n this.totalRecordsCount = 0;\r\n this.isRecords = false;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n () => this.isloading = false\r\n );\r\n }\r\n \r\n sort(sortBy: string) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.parameterModelV2.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"BusinessName\") {\r\n this.upDowCarrierCSS = 'active';\r\n this.upDowPreviousNameCSS = '';\r\n this.upDowUpdateDateCSS = ''; \r\n }\r\n else if (sortBy === \"PreviousName\") {\r\n this.upDowCarrierCSS = '';\r\n this.upDowPreviousNameCSS = 'active';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"UpdateDate\") {\r\n this.upDowCarrierCSS = '';\r\n this.upDowPreviousNameCSS = '';\r\n this.upDowUpdateDateCSS = 'active'; \r\n } \r\n }\r\n else {\r\n this.isAscending = false;\r\n this.parameterModelV2.orderBy = sortBy;\r\n\r\n if (sortBy === \"BusinessName\") {\r\n this.upDowCarrierCSS = 'active-up';\r\n this.upDowPreviousNameCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"PreviousName\") {\r\n this.upDowCarrierCSS = '';\r\n this.upDowPreviousNameCSS = 'active-up';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"UpdateDate\") {\r\n this.upDowCarrierCSS = '';\r\n this.upDowPreviousNameCSS = '';\r\n this.upDowUpdateDateCSS = 'active-up';\r\n }\r\n }\r\n this.parameterModelV2.pageNumber=1;\r\n this.GetCarriers();\r\n }\r\n \r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n keywordFilters($event) {\r\n this.parameterModelV2.pageNumber = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.parameterModelV2.keywordFilter = $event.target.value;\r\n else\r\n this.parameterModelV2.keywordFilter = 'null';\r\n\r\n this.GetCarriers();\r\n }\r\n isupdatesDatesFilter(dateArray: any) {\r\n this.parameterModelV2.pageNumber=1;\r\n this.rangeOfupdatesDates = dateArray;\r\n\r\n if (this.rangeOfupdatesDates != null) {\r\n if (this.rangeOfupdatesDates.length > 1) {\r\n let dd1 = this.rangeOfupdatesDates[0].getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (this.rangeOfupdatesDates[0].getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n let dd2 = this.rangeOfupdatesDates[1].getDate().toString();\r\n if (parseInt(dd2.toString()) < 10)\r\n dd2 = '0' + dd2.toString();\r\n\r\n let mm2 = (this.rangeOfupdatesDates[1].getMonth() + 1).toString();\r\n if (parseInt(mm2.toString()) < 10)\r\n mm2 = '0' + mm2.toString();\r\n\r\n this.parameterModelV2.fromupdatesDateFilter = mm1 + '-' + dd1 + '-' + this.rangeOfupdatesDates[0].getFullYear();\r\n this.parameterModelV2.toupdatesDateFilter = mm2 + '-' + dd2 + '-' + this.rangeOfupdatesDates[1].getFullYear();\r\n }\r\n if (this.parameterModelV2.fromupdatesDateFilter === null || this.parameterModelV2.fromupdatesDateFilter === '') {\r\n this.parameterModelV2.fromupdatesDateFilter = \"null\";\r\n this.parameterModelV2.toupdatesDateFilter = \"null\";\r\n }\r\n }\r\n else {\r\n this.parameterModelV2.fromupdatesDateFilter = \"null\";\r\n this.parameterModelV2.toupdatesDateFilter = \"null\";\r\n }\r\n if (this.parameterModelV2.fromupdatesDateFilter != 'null' && this.parameterModelV2.toupdatesDateFilter != 'null')\r\n this.GetCarriers();\r\n }\r\n updatesDateFilterClear() {\r\n this.parameterModelV2.pageNumber=1;\r\n this.rangeOfupdatesDates = [];\r\n this.parameterModelV2.fromupdatesDateFilter = \"null\";\r\n this.parameterModelV2.toupdatesDateFilter = \"null\";\r\n\r\n this.GetCarriers();\r\n } \r\n updatesCarrierFilterClear() {\r\n this.parameterModelV2.pageNumber=1;\r\n this.carrierFilter = '';\r\n this.GetCarriers();\r\n }\r\n updatetypechange($event) {\r\n if ($event.target.id == 'chkRegistered') {\r\n this.RegisteredChecked = $event.target.checked;\r\n }\r\n if ($event.target.id == 'chkNoLongerRegistered') {\r\n this.NoLongerRegisteredChecked = $event.target.checked;\r\n }\r\n if ($event.target.id == 'chkNotRegistered') {\r\n this.NotRegisteredChecked = $event.target.checked;\r\n }\r\n if ($event.target.checked) {\r\n if (this.parameterModelV2.updatetype == \"-1\") { this.parameterModelV2.updatetype = \"\" }\r\n if (this.parameterModelV2.updatetype == '' || this.parameterModelV2.updatetype == 'null') {\r\n this.parameterModelV2.updatetype = $event.target.value;\r\n }\r\n else {\r\n this.parameterModelV2.updatetype += ',' + $event.target.value;\r\n }\r\n }\r\n else {\r\n this.parameterModelV2.updatetype = this.parameterModelV2.updatetype.replace($event.target.value, \"\");\r\n this.parameterModelV2.updatetype = this.parameterModelV2.updatetype.replace(/,\\s*$/, \"\");\r\n this.parameterModelV2.updatetype = this.parameterModelV2.updatetype.replace(\",,\", \",\");\r\n if (this.parameterModelV2.updatetype.charAt(0) == \",\") {\r\n this.parameterModelV2.updatetype = this.parameterModelV2.updatetype.slice(1)\r\n }\r\n if (this.parameterModelV2.updatetype == \"\") { this.parameterModelV2.updatetype = \"\" }\r\n }\r\n\r\n this.GetCarriers();\r\n }\r\n\r\n \r\n pdfDocument() {\r\n this.blockDocument();\r\n let mainURL = this.baseUrl;\r\n let url = '
';\r\n url += '
';\r\n url += '
';\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '0',this.productId).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') { \r\n this.downloadFile('Providers', data['url']);\r\n }\r\n },\r\n error => {\r\n this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n\r\n }\r\n\r\n public downloadFile(filename, url) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename);\r\n ApplicationActivityStore('Download', 'IPR Providers File download ' + filename, this.appActivity, ToolEnum.ipr, ActionActivity.IPR, '/ipr/providers/Details');\r\n\r\n sessionStorage.setItem('fileloading', 'false');\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n GetStateData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.MaxtixFund.GetMatrixFundState(this.tokenKey, this.userID, this.productId).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n // Set All Item\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"View registered providers by state(s)\",\r\n enableSearchFilter: false,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n FilterSelecteventState($event) { \r\n this.parameterModelV2.pageNumber=1;\r\n this.stateFilter = '';\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event['id']);\r\n this.listOfstateID.push($event.id);\r\n this.getString(this.listOfstateID);\r\n this.parameterModelV2.keywordFilter = this.stateFilter;\r\n this.GetCarriers();\r\n }\r\n\r\n FilterDeSelectseventState($event) { \r\n this.parameterModelV2.pageNumber=1;\r\n this.stateFilter = '';\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event['id']);\r\n this.getString(this.listOfstateID);\r\n this.parameterModelV2.keywordFilter = this.stateFilter;\r\n this.GetCarriers();\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e != element);\r\n }\r\n\r\n getString(array: any) {\r\n let sprator = '';\r\n this.stateFilter = '';\r\n for (let iCounter = 0; iCounter < array.length; iCounter++) {\r\n this.stateFilter += sprator + array[iCounter];\r\n sprator = ',';\r\n }\r\n if (this.stateFilter == '') {\r\n this.ClearAllStatus();\r\n }\r\n }\r\n\r\n onSelectAllStateList($event) { \r\n this.parameterModelV2.pageNumber=1;\r\n this.stateFilter = '';\r\n if ($event != \"\" && $event != null) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event[iCounter].id);\r\n this.listOfstateID.push($event[iCounter].id);\r\n }\r\n this.getString(this.listOfstateID);\r\n this.parameterModelV2.keywordFilter = this.stateFilter;\r\n }\r\n this.GetCarriers();\r\n }\r\n\r\n onDeSelectAllStateList($event) { \r\n this.parameterModelV2.pageNumber=1;\r\n this.listOfstateID = [];\r\n this.stateFilter = '';\r\n this.parameterModelV2.keywordFilter = '';\r\n this.ClearAllStatus();\r\n this.GetCarriers();\r\n \r\n }\r\n ClearAllStatus() {\r\n this.parameterModelV2.updatetype = \"\";\r\n this.RegisteredChecked = true;\r\n this.NoLongerRegisteredChecked = true;\r\n this.NotRegisteredChecked = true;\r\n //this.parameterModel.updatetype = \"1,0,-1\";\r\n this.parameterModelV2.updatetype = \"1,0\";\r\n }\r\n GetCarrierDetailsByID(carrierId: number): void {\r\n this.RemoveCarrier();\r\n this.CarrierName = '';\r\n this.iscarrierloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetIPRUpdatesFindByCarrierID(this.tokenKey, carrierId, this.productId).subscribe(\r\n data => {\r\n this.iprCarrierDetailModel = data[\"updates\"];\r\n this.CarrierName = this.iprCarrierDetailModel[0].businessName;\r\n this.ActiveStates = this.iprCarrierDetailModel[0].listOfActiveStates.filter(i => i.isSelected == true).map(i => i.shortName).join(', ');\r\n this.DeActiveStates = this.iprCarrierDetailModel[0].listOfDeActiveStates.filter(i => i.isSelected == true).map(i => i.shortName).join(', ');\r\n this.NotRegisteredStates = this.iprCarrierDetailModel[0].listOfNotRegisteredStates.filter(i => i.isSelected == true).map(i => i.shortName).join(', ');\r\n ApplicationActivityStore('View', 'IPR - Providers', this.appActivity, ToolEnum.ipr, ActionActivity.IPR, '/ipr/Providers/details', null);\r\n\r\n\r\n this.unblockDocument();\r\n this.iscarrierloading = false;\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.unblockDocument();\r\n this.iscarrierloading = false;\r\n }\r\n );\r\n }\r\n RemoveCarrier() {\r\n this.iprCarrierDetailModel = [];\r\n this.ActiveStates = '';\r\n this.DeActiveStates = '';\r\n this.NotRegisteredStates = '';\r\n }\r\n\r\n AddToFavourite(update, IsFavourite: number) {\r\n let CarrierId = update.carrierId;\r\n if (IsFavourite == 0) {\r\n this.SelectedCarrier = CarrierId;\r\n this.favouriteUpdateModel = update;\r\n var elem = document.getElementById(\"lnkFavouriteValidation\");\r\n elem.click();\r\n }\r\n else {\r\n this.SaveFavourite(CarrierId, IsFavourite, update);\r\n }\r\n }\r\n\r\n SaveFavourite(CarrierId: number, IsFavourite: number, update) { \r\n this.blockDocument();\r\n document.getElementById(\"btnClose\").click();\r\n this.iprupdatesService.ClientCarrierFavouriteAdd(this.tokenKey, this.userID, CarrierId, IsFavourite)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (IsFavourite == 1) {\r\n this.showMessage('Selected provider added successfully to favorite list.', 'Favorite', 'success');\r\n }\r\n else {\r\n this.showMessage('Selected provider removed successfully from favorite list.', 'Favorite', 'success');\r\n }\r\n update.favourite = IsFavourite === 1 ? 1 : 0; \r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n GetFavourite(IsFavourite: number) {\r\n this.parameterModelV2.pageNumber=1;\r\n if (IsFavourite == 1) {\r\n this.FilterFavourite = 1;\r\n }\r\n else {\r\n this.FilterFavourite = 0;\r\n }\r\n\r\n this.GetCarriers();\r\n }\r\n carrrierFilters($event) {\r\n this.parameterModelV2.pageNumber=1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.carrierFilter = $event.target.value;\r\n else\r\n this.carrierFilter = '';\r\n\r\n this.GetCarriers();\r\n } \r\n\r\n pageChanged($event: any) {\r\n this.parameterModelV2.pageNumber = $event.page;\r\n this.GetCarriers();\r\n }\r\n}\r\n","export default \".webinarlink:hover, .webinarlink:active, .webinarlink:focus {\\r\\n color: #0039BF;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvSVBSL2hvbWUvaG9tZS5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsY0FBYztBQUNoQiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L0lQUi9ob21lL2hvbWUuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi53ZWJpbmFybGluazpob3ZlciwgLndlYmluYXJsaW5rOmFjdGl2ZSwgLndlYmluYXJsaW5rOmZvY3VzIHtcclxuICBjb2xvcjogIzAwMzlCRjtcclxufVxyXG4iXX0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.css']\r\n})\r\nexport class IPRHomeComponent implements OnInit {\r\n\r\n years: any = Date.now();\r\n lastLogin: string = '';\r\n name: string = '';\r\n constructor(private titleService: Title) {\r\n this.lastLogin = sessionStorage.getItem('LastLogin');\r\n this.name = sessionStorage.getItem('FirstLastName');\r\n this.titleService.setTitle('Home');\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \".left35\\r\\n{\\r\\n padding-left:35px;\\r\\n}\\r\\n.states {\\r\\n display: inline-block;\\r\\n margin-right: 40px;\\r\\n /*line-height:35px;*/\\r\\n vertical-align: top;\\r\\n margin-bottom: 14px;\\r\\n}\\r\\n.lightblue {\\r\\n color: #0039BF;\\r\\n font-weight: 600;\\r\\n font-size: 15px;\\r\\n font-family: 'Sarabun', sans-serif;\\r\\n}\\r\\n.states img {\\r\\n vertical-align: top;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvSVBSL215LWZhdm9yaXRlcy9teS1mYXZvcml0ZXMuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7RUFFRSxpQkFBaUI7QUFDbkI7QUFDQTtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixtQkFBbUI7QUFDckI7QUFDQTtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLGtDQUFrQztBQUNwQztBQUNBO0VBQ0UsbUJBQW1CO0FBQ3JCIiwiZmlsZSI6InNyYy9hcHAvRnJvbnQvSVBSL215LWZhdm9yaXRlcy9teS1mYXZvcml0ZXMuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5sZWZ0MzVcclxue1xyXG4gIHBhZGRpbmctbGVmdDozNXB4O1xyXG59XHJcbi5zdGF0ZXMge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXJnaW4tcmlnaHQ6IDQwcHg7XHJcbiAgLypsaW5lLWhlaWdodDozNXB4OyovXHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBtYXJnaW4tYm90dG9tOiAxNHB4O1xyXG59XHJcbi5saWdodGJsdWUge1xyXG4gIGNvbG9yOiAjMDAzOUJGO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgZm9udC1zaXplOiAxNXB4O1xyXG4gIGZvbnQtZmFtaWx5OiAnU2FyYWJ1bicsIHNhbnMtc2VyaWY7XHJcbn1cclxuLnN0YXRlcyBpbWcge1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbn0iXX0= */\"","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { IPRUpdatesModel } from '../../../../Models/IPRUpdatesModel';\r\nimport { stateMasterModel } from '../../../../Models/stateMasterModel';\r\nimport { iprupdatesService } from '../../../../Services/iprupdatesService';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { AppConfig } from '../../../../Services/app.config';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { ToolEnum } from 'src/Models/Common';\r\n\r\n@Component({\r\n selector: 'app-my-favorites',\r\n templateUrl: './my-favorites.component.html',\r\n styleUrls: ['./my-favorites.component.css']\r\n})\r\nexport class MyFavoritesComponent implements OnInit {\r\n userID: number = 0;\r\n appModel: any;\r\n isloading: boolean = false;\r\n tokenKey: string = '';\r\n favouriteCarrierModel: IPRUpdatesModel[] = [];\r\n favouriteStateModel: stateMasterModel[] = [];\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n carrierForm: FormGroup;\r\n baseUrl: string;\r\n\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n stateFilter: string = '';\r\n\r\n dropdownListProviders = [];\r\n dropdownSettingsProviders = {};\r\n selectedItemsProviders = [];\r\n listOfstateID: string[] = [];\r\n ClientSelectedTool: string;\r\n ValidationMessage: string;\r\n DeSelectedFavoriteId: number;\r\n FavoriteType: string;\r\n IsDeselected: number = 0;\r\n isStateRecordsExists: boolean = true;\r\n isProviderRecordsExists: boolean = true;\r\n productId: number;\r\n\r\n constructor(@Inject('BASE_URL') baseUrl: string\r\n , private iprupdatesService: iprupdatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth\r\n , private router: Router, private activedRoute: ActivatedRoute) {\r\n this.baseUrl = baseUrl;\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n\r\n this.carrierForm = new FormGroup({\r\n stateId: new FormControl(),\r\n carrierId: new FormControl(),\r\n });\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.titleService.setTitle('My Favorites');\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.movetotop();\r\n this.isloading = false;\r\n this.GetClientFavorites();\r\n this.GetCarriers();\r\n this.GetStateData();\r\n }\r\n\r\n GetCarriers(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.iprupdatesService.GetCarriers(this.tokenKey, '', '', '1,0', 'BusinessName', '', this.userID, 0, '').subscribe(\r\n data => {\r\n if (data[\"updates\"] != null) {\r\n this.selectedItemsProviders = [];\r\n for (let iCounter = 0; iCounter < data[\"updates\"].length; iCounter++) {\r\n this.dropdownListProviders.push( \r\n { \"id\": data[\"updates\"][iCounter].carrierId, \"itemName\": data[\"updates\"][iCounter].businessName }\r\n );\r\n if (data[\"updates\"][iCounter].favourite == \"1\")\r\n this.selectedItemsProviders.push({ \"id\": data[\"updates\"][iCounter].carrierId, \"itemName\": data[\"updates\"][iCounter].businessName });\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsProviders = {\r\n singleSelection: false,\r\n text: \"Select Provider(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No Provider available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n GetStateData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetStatesByUserID(this.tokenKey, this.userID,this.productId).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n this.selectedItemsState = [];\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n\r\n if (data[\"state\"][iCounter].favourite == \"1\")\r\n this.selectedItemsState.push({ \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name });\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: true\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n GetClientFavorites(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetClientFavorites(this.tokenKey, this.userID).subscribe(\r\n data => {\r\n if (data[\"clientfavorites\"] != null) {\r\n this.favouriteCarrierModel = data[\"clientfavorites\"][0].listOfCarriers;\r\n this.favouriteStateModel = data[\"clientfavorites\"][0].listOfStates;\r\n\r\n if (this.favouriteStateModel == null)\r\n this.isStateRecordsExists = false;\r\n else\r\n this.isStateRecordsExists = true;\r\n\r\n if (this.favouriteCarrierModel == null)\r\n this.isProviderRecordsExists = false;\r\n else\r\n this.isProviderRecordsExists = true;\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n // State ---------------------------\r\n OnSelectState($event) {\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteState($event['id'], 1);\r\n }\r\n OnDeSelectState($event) {\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteState($event['id'], 0);\r\n }\r\n\r\n onSelectAllStateList($event) {\r\n let stateIds: string = '';\r\n if ($event) {\r\n $event.map(x => {\r\n stateIds += String(x.id) + ',';\r\n });\r\n stateIds += \"-99\";\r\n }\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteState(stateIds, 1);\r\n }\r\n\r\n onDeSelectAllStateList($event) {\r\n if (this.favouriteStateModel != null) {\r\n let stateIds: string = '';\r\n this.favouriteStateModel.map(x => {\r\n stateIds += String(x.stateId) + ',';\r\n });\r\n stateIds += \"-99\";\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteState(stateIds, 0);\r\n }\r\n }\r\n\r\n SaveFavoriteState(ids: string, IsFavorite: number) {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.iprupdatesService.ClientStateFavouriteAdd(this.tokenKey, this.userID, ids, IsFavorite)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (IsFavorite == 1)\r\n this.showMessage('Selected state added successfully to favorite list.', 'Favorite', 'success');\r\n else\r\n this.showMessage('Selected state removed successfully from favorite list.', 'Favorite', 'success');\r\n this.GetClientFavorites();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n DeselectFavourite() {\r\n this.IsDeselected = 0;\r\n document.getElementById(\"btnClose\").click();\r\n if (this.FavoriteType == 'state') {\r\n this.SaveFavoriteState(String(this.DeSelectedFavoriteId), 0);\r\n this.selectedItemsState = this.removeElemetninArray(this.selectedItemsState, this.DeSelectedFavoriteId);\r\n }\r\n else {\r\n this.SaveFavoriteProvider(this.DeSelectedFavoriteId, 0);\r\n this.selectedItemsProviders = this.removeElemetninArray(this.selectedItemsProviders, this.DeSelectedFavoriteId);\r\n }\r\n }\r\n CancelDeselectFavourite() {\r\n if (this.FavoriteType == 'state' && this.IsDeselected == 1) {\r\n this.selectedItemsState.push({ \"id\": this.DeSelectedFavoriteId });\r\n }\r\n else if (this.FavoriteType == 'provider' && this.IsDeselected == 1) {\r\n this.selectedItemsProviders.push({ \"id\": this.DeSelectedFavoriteId });\r\n }\r\n }\r\n // State ---------------------------\r\n\r\n // Provider ------------------------\r\n OnSelectProvider($event) {\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteProvider($event['id'], 1);\r\n }\r\n OnDeSelectProvider($event) {\r\n this.IsDeselected = 0;\r\n this.SaveFavoriteProvider($event['id'], 0);\r\n }\r\n SaveFavoriteProvider(id: number, IsFavorite: number) {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.ClientCarrierFavouriteAdd(this.tokenKey, this.userID, id, IsFavorite)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (IsFavorite == 1)\r\n this.showMessage('Selected provider added successfully to favorite list.', 'Favorite', 'success');\r\n else\r\n this.showMessage('Selected provider removed successfully from favorite list.', 'Favorite', 'success');\r\n this.GetClientFavorites();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n // Provider ------------------------\r\n\r\n RemoveStarFavorite(id: number, Type: string) {\r\n this.IsDeselected = 1;\r\n this.DeSelectedFavoriteId = id;\r\n if (Type == 'state') {\r\n this.ValidationMessage = \"Are you sure you want to remove selected state from favorite list?\"\r\n this.FavoriteType = 'state';\r\n }\r\n else {\r\n this.ValidationMessage = \"Are you sure you want to remove selected provider from favorite list?\"\r\n this.FavoriteType = 'provider';\r\n }\r\n var elem = document.getElementById(\"lnkFavouriteValidation\");\r\n elem.click();\r\n }\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e.id != element);\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n}\r\n","export default \".lightblue {\\r\\n color: #0039BF;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.lightpink {\\r\\n color: #f5898e;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.gray {\\r\\n color: #7F7F7F;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.martop0 {\\r\\n margin-top: 0px !important;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.desc {\\r\\n font-weight: bold;\\r\\n color: #757575\\r\\n}\\r\\n\\r\\n.carrierbody td {\\r\\n width: 300px;\\r\\n padding-bottom: 10px;\\r\\n padding-right: 30px;\\r\\n vertical-align: top;\\r\\n border-bottom: 1px solid #e4e4e4;\\r\\n padding-top: 10px;\\r\\n}\\r\\n\\r\\n.carrierbody td b{\\r\\n display:block;\\r\\n}\\r\\n\\r\\n.noborder td {\\r\\n border: none !important;\\r\\n}\\r\\n\\r\\n.center{text-align:center}\\r\\n\\r\\n.clearfix {\\r\\n clear: both;\\r\\n padding-bottom: 10px;\\r\\n}\\r\\n\\r\\n.showonresponsive, .showonresponsivefavorite {\\r\\n display: none;\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 730px) {\\r\\n .showonresponsive {\\r\\n display: block;\\r\\n }\\r\\n\\r\\n .up-fil.two {\\r\\n width: 36%;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 1300px) {\\r\\n .showonresponsivefavorite {\\r\\n display: block;\\r\\n }\\r\\n\\r\\n .hidespe {\\r\\n display: none;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 655px) {\\r\\n .width100 {\\r\\n width: 100%\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 480px) {\\r\\n .width70 {\\r\\n width: 70% !important\\r\\n }\\r\\n\\r\\n .regstatus {\\r\\n width: 100% !important;\\r\\n padding-left: 3px !important;\\r\\n }\\r\\n\\r\\n .right {\\r\\n text-align: left;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 1300px) {\\r\\n .up-fil.three {\\r\\n width: 4%;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 731px) and (max-width: 1300px) {\\r\\n .top10 {\\r\\n margin-top: 10px;\\r\\n }\\r\\n}\\r\\n\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvSVBSL3VwZGF0ZXMvdXBkYXRlcy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsY0FBYztFQUNkLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0FBQ2I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBR0E7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsV0FBVztBQUNiOztBQUNBO0VBQ0UsaUJBQWlCO0VBQ2pCO0FBQ0Y7O0FBQ0E7RUFDRSxZQUFZO0VBQ1osb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsZ0NBQWdDO0VBQ2hDLGlCQUFpQjtBQUNuQjs7QUFDQTtFQUNFLGFBQWE7QUFDZjs7QUFDQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFDQSxRQUFRLGlCQUFpQjs7QUFDekI7RUFDRSxXQUFXO0VBQ1gsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0U7SUFDRSxjQUFjO0VBQ2hCOztFQUVBO0lBQ0UsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLGNBQWM7RUFDaEI7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7QUFDRjs7QUFFQTtFQUNFO0lBQ0U7RUFDRjtBQUNGOztBQUVBO0VBQ0U7SUFDRTtFQUNGOztFQUVBO0lBQ0Usc0JBQXNCO0lBQ3RCLDRCQUE0QjtFQUM5Qjs7RUFFQTtJQUNFLGdCQUFnQjtFQUNsQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxTQUFTO0VBQ1g7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsZ0JBQWdCO0VBQ2xCO0FBQ0YiLCJmaWxlIjoic3JjL2FwcC9Gcm9udC9JUFIvdXBkYXRlcy91cGRhdGVzLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubGlnaHRibHVlIHtcclxuICBjb2xvcjogIzAwMzlCRjtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmxpZ2h0cGluayB7XHJcbiAgY29sb3I6ICNmNTg5OGU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5ncmF5IHtcclxuICBjb2xvcjogIzdGN0Y3RjtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLm1hcnRvcDAge1xyXG4gIG1hcmdpbi10b3A6IDBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbC1saWdodGJsdWU6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG59XHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLWxpZ2h0Ymx1ZTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbn1cclxuXHJcbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLWxpZ2h0Ymx1ZTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsLWxpZ2h0cGluazpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNTg5OGU7XHJcbn1cclxuXHJcbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRwaW5rOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ODk4ZTtcclxufVxyXG5cclxuLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRwaW5rOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ODk4ZTtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtZ3JheTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM3RjdGN0Y7XHJcbn1cclxuXHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLWdyYXk6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0Y3RjdGO1xyXG59XHJcblxyXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbC1ncmF5OmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdGN0Y3RjtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG4uZGVzYyB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgY29sb3I6ICM3NTc1NzVcclxufVxyXG4uY2FycmllcmJvZHkgdGQge1xyXG4gIHdpZHRoOiAzMDBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU0ZTQ7XHJcbiAgcGFkZGluZy10b3A6IDEwcHg7XHJcbn1cclxuLmNhcnJpZXJib2R5IHRkIGJ7XHJcbiAgZGlzcGxheTpibG9jaztcclxufVxyXG4ubm9ib3JkZXIgdGQge1xyXG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbi5jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9XHJcbi5jbGVhcmZpeCB7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5zaG93b25yZXNwb25zaXZlLCAuc2hvd29ucmVzcG9uc2l2ZWZhdm9yaXRlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MzBweCkge1xyXG4gIC5zaG93b25yZXNwb25zaXZlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLnVwLWZpbC50d28ge1xyXG4gICAgd2lkdGg6IDM2JTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkge1xyXG4gIC5zaG93b25yZXNwb25zaXZlZmF2b3JpdGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAuaGlkZXNwZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjU1cHgpIHtcclxuICAud2lkdGgxMDAge1xyXG4gICAgd2lkdGg6IDEwMCVcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgLndpZHRoNzAge1xyXG4gICAgd2lkdGg6IDcwJSAhaW1wb3J0YW50XHJcbiAgfVxyXG5cclxuICAucmVnc3RhdHVzIHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDNweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLnJpZ2h0IHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzAwcHgpIHtcclxuICAudXAtZmlsLnRocmVlIHtcclxuICAgIHdpZHRoOiA0JTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDczMXB4KSBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XHJcbiAgLnRvcDEwIHtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4iXX0= */\"","import { Component, OnInit, Input, Inject } from '@angular/core';\r\nimport { IPRUpdatesModel } from '../../../../Models/IPRUpdatesModel';\r\nimport { iprupdatesService } from '../../../../Services/iprupdatesService';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { AppConfig } from '../../../../Services/app.config';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { Router, ActivatedRoute, Params } from '@angular/router';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { htmlToPdf } from '../../../../../src/Services/htmlToPdf';\r\nimport { updatesPageModel, updatesPageModelV2 } from '../../../../Models/updatesPageModel';\r\nimport { StateMasterService } from '../../../../../src/Services/state-master.service';\r\nimport { MatrixFundDetailsService } from '../../../../../src/Services/matrix-fund-details.service';\r\nimport * as FileSaver from 'file-saver';\r\nimport { stateMasterModel } from '../../../../../src/Models/stateMasterModel';\r\nimport { ActionActivity, ToolEnum } from 'src/Models/Common';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\n\r\n@Component({\r\n selector: 'app-updates',\r\n templateUrl: './updates.component.html',\r\n styleUrls: ['./updates.component.css']\r\n})\r\nexport class IPRFrontUpdatesComponent implements OnInit {\r\n userID: number = 0;\r\n isAscending: boolean;\r\n statusCode: number = 0;\r\n appModel: any;\r\n upDowCarrierCSS: string = '';\r\n upDowStateNameCSS: string = '';\r\n upDowUpdateDateCSS: string = '';\r\n upDowDescriptionCSS: string = '';\r\n isloading: boolean = false;\r\n iscarrierloading: boolean = false;\r\n tokenKey: string = '';\r\n iprupdatesModel: IPRUpdatesModel[] = [];\r\n iprCarrierDetailModel: IPRUpdatesModel[] = [];\r\n favouriteUpdateModel: IPRUpdatesModel[] = [];\r\n isRecords: boolean = false;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n totalRecordsCount: number = -1;\r\n queryParams: string = '';\r\n @Input()\r\n rangeOfupdatesDates: Date[] = [];\r\n updateForm: FormGroup;\r\n totalunread: number = 0;\r\n alldata: string = 'all';\r\n unreaddata: string = 'unread';\r\n parameterModel = new updatesPageModel();\r\n parameterModelV2 = new updatesPageModelV2();\r\n \r\n baseUrl: string;\r\n\r\n //State List\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n stateFilter: string = '';\r\n\r\n listOfstateID: string[] = [];\r\n ClientSelectedTool: string;\r\n RegisteredChecked: boolean = true;\r\n NoLongerRegisteredChecked: boolean = true;\r\n ActiveStates: string = '';\r\n DeActiveStates: string = '';\r\n NotRegisteredStates: string = '';\r\n SelectedState: number = 0;\r\n IsNotificationSaved: boolean = false;\r\n CarrierName: string = '';\r\n FilterFavourite: number = 0;\r\n carrierFilter: string = '';\r\n IsFromPopup: number = 0;\r\n listofState: stateMasterModel[];\r\n productId: number;\r\n pageNumber:number=1;\r\n pageSize:number=20;\r\n\r\n constructor(private MaxtixFund: MatrixFundDetailsService, private stateMasterService: StateMasterService, @Inject('BASE_URL') baseUrl: string\r\n , private htmlToPdf: htmlToPdf, private iprupdatesService: iprupdatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth\r\n , private router: Router, private activedRoute: ActivatedRoute,private appActivity: ApplicationActivityService,) {\r\n this.baseUrl = baseUrl;\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.updateForm = new FormGroup({\r\n rangeOfupdatesDates: new FormControl(),\r\n stateId: new FormControl(),\r\n carrierFilter: new FormControl()\r\n });\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.titleService.setTitle('Updates');\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.queryParams = this.activedRoute.snapshot.queryParams['data'];\r\n this.movetotop();\r\n this.parameterModelV2.keywordFilter = 'null';\r\n this.parameterModelV2.whereCondition = 'null';\r\n this.parameterModelV2.orderBy = 'UpdateDate DESC';\r\n this.upDowUpdateDateCSS = 'active';\r\n this.isAscending = true;\r\n this.parameterModelV2.fromupdatesDateFilter = \"null\";\r\n this.parameterModelV2.toupdatesDateFilter = \"null\";\r\n this.parameterModelV2.userID = this.userID.toString();\r\n this.parameterModelV2.updatetype = \"1,0\";\r\n this.parameterModelV2.pageNumber=this.pageNumber;\r\n this.parameterModelV2.pageSize=this.pageSize;\r\n this.isloading = false;\r\n this.GetIPRUpdates();\r\n this.GetStateData();\r\n }\r\n\r\n GetIPRUpdates(): void {\r\n this.isloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n let unreadonly = \"0\";\r\n if (this.queryParams == this.unreaddata) {\r\n unreadonly = \"1\";\r\n }\r\n if (unreadonly == \"1\") {\r\n this.iprupdatesService.GetIPRUpdatesUnread(this.tokenKey, this.userID).subscribe(\r\n data => { \r\n if (data[\"status\"] == \"Success\") {\r\n this.iprupdatesModel = data[\"updates\"];\r\n ApplicationActivityStore('View', 'IPR - Updates', this.appActivity, ToolEnum.ipr, ActionActivity.IPR, '/ipr/Update', null);\r\n\r\n if (this.iprupdatesModel.length > 0) {\r\n this.isRecords = true;\r\n this.totalRecordsCount = this.iprupdatesModel.length;\r\n if (!this.IsNotificationSaved) {\r\n this.saveNotification(this.iprupdatesModel);\r\n this.IsNotificationSaved = true;\r\n }\r\n }\r\n else {\r\n this.viewallupdates();\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n () => this.isloading = false\r\n );\r\n }\r\n else {\r\n this.iprupdatesService.GetIPRUpdatesV2(this.tokenKey, this.parameterModelV2.fromupdatesDateFilter.toString(), this.parameterModelV2.toupdatesDateFilter.toString(), this.parameterModelV2.updatetype, this.parameterModelV2.orderBy, this.parameterModelV2.keywordFilter, this.userID, this.FilterFavourite, this.carrierFilter,this.parameterModelV2.pageNumber,this.parameterModelV2.pageSize).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.iprupdatesModel = data[\"updates\"];\r\n ApplicationActivityStore('View', 'IPR - Updates', this.appActivity, ToolEnum.ipr, ActionActivity.IPR, '/ipr/Update', null);\r\n\r\n if (this.iprupdatesModel.length > 0) {\r\n this.isRecords = true;\r\n this.totalRecordsCount = Number(this.iprupdatesModel[0].totalRecordCount);\r\n }\r\n else {\r\n this.totalRecordsCount = 0;\r\n this.isRecords = false;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n () => this.isloading = false\r\n );\r\n }\r\n }\r\n saveNotification(updates) {\r\n let updateId = updates.map(i => i.updateId).join(',');\r\n this.iprupdatesService.addNotification(this.userID, updateId, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n window.document.body.getElementsByClassName('unread')[0].setAttribute(\"style\", \"display:none\");\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n });\r\n }\r\n sort(sortBy: string) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.parameterModelV2.orderBy = sortBy + ' DESC';\r\n if (sortBy === \"BusinessName\") {\r\n this.upDowCarrierCSS = 'active';\r\n this.upDowStateNameCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n this.upDowDescriptionCSS = '';\r\n }\r\n else if (sortBy === \"StateName\") {\r\n this.upDowCarrierCSS = '';\r\n this.upDowStateNameCSS = 'active';\r\n this.upDowUpdateDateCSS = '';\r\n this.upDowDescriptionCSS = '';\r\n }\r\n else if (sortBy === \"UpdateDate\") {\r\n this.upDowCarrierCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowUpdateDateCSS = 'active';\r\n this.upDowDescriptionCSS = '';\r\n }\r\n else if (sortBy === \"Description\") {\r\n this.upDowCarrierCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n this.upDowDescriptionCSS = 'active';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.parameterModelV2.orderBy = sortBy;\r\n\r\n if (sortBy === \"BusinessName\") {\r\n this.upDowCarrierCSS = 'active-up';\r\n this.upDowStateNameCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n this.upDowDescriptionCSS = '';\r\n }\r\n else if (sortBy === \"StateName\") {\r\n this.upDowCarrierCSS = '';\r\n this.upDowStateNameCSS = 'active-up';\r\n this.upDowUpdateDateCSS = '';\r\n this.upDowDescriptionCSS = '';\r\n }\r\n else if (sortBy === \"UpdateDate\") {\r\n this.upDowCarrierCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowUpdateDateCSS = 'active-up';\r\n this.upDowDescriptionCSS = '';\r\n }\r\n else if (sortBy === \"Description\") {\r\n this.upDowCarrierCSS = '';\r\n this.upDowStateNameCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n this.upDowDescriptionCSS = 'active-up';\r\n }\r\n }\r\n this.GetIPRUpdates();\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n keywordFilters($event) {\r\n this.parameterModelV2.pageNumber = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.parameterModelV2.keywordFilter = $event.target.value;\r\n else\r\n this.parameterModelV2.keywordFilter = 'null';\r\n\r\n this.GetIPRUpdates();\r\n }\r\n isupdatesDatesFilter(dateArray: any) {\r\n this.parameterModelV2.pageNumber=1;\r\n\r\n this.rangeOfupdatesDates = dateArray;\r\n\r\n if (this.rangeOfupdatesDates != null) {\r\n if (this.rangeOfupdatesDates.length > 1) {\r\n let dd1 = this.rangeOfupdatesDates[0].getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (this.rangeOfupdatesDates[0].getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n let dd2 = this.rangeOfupdatesDates[1].getDate().toString();\r\n if (parseInt(dd2.toString()) < 10)\r\n dd2 = '0' + dd2.toString();\r\n\r\n let mm2 = (this.rangeOfupdatesDates[1].getMonth() + 1).toString();\r\n if (parseInt(mm2.toString()) < 10)\r\n mm2 = '0' + mm2.toString();\r\n\r\n this.parameterModelV2.fromupdatesDateFilter = mm1 + '-' + dd1 + '-' + this.rangeOfupdatesDates[0].getFullYear();\r\n this.parameterModelV2.toupdatesDateFilter = mm2 + '-' + dd2 + '-' + this.rangeOfupdatesDates[1].getFullYear();\r\n }\r\n if (this.parameterModelV2.fromupdatesDateFilter === null || this.parameterModelV2.fromupdatesDateFilter === '') {\r\n this.parameterModelV2.fromupdatesDateFilter = \"null\";\r\n this.parameterModelV2.toupdatesDateFilter = \"null\";\r\n }\r\n }\r\n else {\r\n this.parameterModelV2.fromupdatesDateFilter = \"null\";\r\n this.parameterModelV2.toupdatesDateFilter = \"null\";\r\n }\r\n if (this.parameterModelV2.fromupdatesDateFilter != 'null' && this.parameterModelV2.toupdatesDateFilter != 'null')\r\n this.GetIPRUpdates();\r\n }\r\n updatesDateFilterClear() { \r\n this.rangeOfupdatesDates = [];\r\n this.parameterModelV2.fromupdatesDateFilter = \"null\";\r\n this.parameterModelV2.toupdatesDateFilter = \"null\";\r\n this.GetIPRUpdates();\r\n }\r\n updatesCarrierFilterClear() {\r\n this.parameterModelV2.pageNumber=1;\r\n this.carrierFilter = '';\r\n this.GetIPRUpdates();\r\n }\r\n updatetypechange($event) {\r\n this.parameterModelV2.pageNumber=1;\r\n if ($event.target.id == 'chkRegistered') {\r\n this.RegisteredChecked = $event.target.checked;\r\n }\r\n if ($event.target.id == 'chkNoLongerRegistered') {\r\n this.NoLongerRegisteredChecked = $event.target.checked;\r\n }\r\n if ($event.target.checked) {\r\n if (this.parameterModelV2.updatetype == \"-1\") { this.parameterModelV2.updatetype = \"\" }\r\n if (this.parameterModelV2.updatetype == '' || this.parameterModelV2.updatetype == 'null') {\r\n this.parameterModelV2.updatetype = $event.target.value;\r\n }\r\n else {\r\n this.parameterModelV2.updatetype += ',' + $event.target.value;\r\n }\r\n }\r\n else {\r\n this.parameterModelV2.updatetype = this.parameterModelV2.updatetype.replace($event.target.value, \"\");\r\n this.parameterModelV2.updatetype = this.parameterModelV2.updatetype.replace(/,\\s*$/, \"\");\r\n this.parameterModelV2.updatetype = this.parameterModelV2.updatetype.replace(\",,\", \",\");\r\n if (this.parameterModelV2.updatetype.charAt(0) == \",\") {\r\n this.parameterModelV2.updatetype = this.parameterModelV2.updatetype.slice(1)\r\n }\r\n if (this.parameterModelV2.updatetype == \"\") { this.parameterModelV2.updatetype = \"\" }\r\n }\r\n this.GetIPRUpdates();\r\n }\r\n pdfDocument() {\r\n this.blockDocument();\r\n let mainURL = this.baseUrl;\r\n let url = '
';\r\n url += '
';\r\n url += '
';\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '0',this.productId).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n this.downloadFile('Update', data['url']);\r\n }\r\n },\r\n error => {\r\n this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n\r\n }\r\n public downloadFile(filename, url) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename);\r\n ApplicationActivityStore('Download', 'IPR Updates File download ' + filename, this.appActivity, ToolEnum.ipr, ActionActivity.IPR, '/ipr/updates/Details');\r\n\r\n sessionStorage.setItem('fileloading', 'false');\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n GetStateData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetStatesByUserID(this.tokenKey, this.userID,this.productId).subscribe(\r\n //this.MaxtixFund.GetMatrixFundState(this.tokenKey, this.userID).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n // Set All Item\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: false,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n FilterSelecteventState($event) {\r\n this.parameterModelV2.pageNumber=1; \r\n this.stateFilter = '';\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event['id']);\r\n this.listOfstateID.push($event.id);\r\n this.getString(this.listOfstateID);\r\n this.parameterModelV2.keywordFilter = this.stateFilter;\r\n this.GetIPRUpdates();\r\n }\r\n FilterDeSelectseventState($event) {\r\n this.parameterModelV2.pageNumber=1;\r\n this.stateFilter = '';\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event['id']);\r\n this.getString(this.listOfstateID);\r\n this.parameterModelV2.keywordFilter = this.stateFilter;\r\n this.GetIPRUpdates();\r\n }\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e != element);\r\n }\r\n getString(array: any) {\r\n let sprator = '';\r\n this.stateFilter = '';\r\n for (let iCounter = 0; iCounter < array.length; iCounter++) {\r\n this.stateFilter += sprator + array[iCounter];\r\n sprator = ',';\r\n }\r\n }\r\n onSelectAllStateList($event) {\r\n this.parameterModelV2.pageNumber=1;\r\n this.stateFilter = '';\r\n if ($event != \"\" && $event != null) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event[iCounter].id);\r\n this.listOfstateID.push($event[iCounter].id);\r\n }\r\n this.getString(this.listOfstateID);\r\n this.parameterModelV2.keywordFilter = this.stateFilter;\r\n }\r\n this.GetIPRUpdates();\r\n }\r\n onDeSelectAllStateList($event) {\r\n this.parameterModelV2.pageNumber=1;\r\n this.listOfstateID = [];\r\n this.stateFilter = '';\r\n this.parameterModelV2.keywordFilter = '';\r\n this.GetIPRUpdates();\r\n }\r\n GetCarrierDetailsByID(carrierId: number): void {\r\n this.RemoveCarrier();\r\n this.CarrierName = '';\r\n this.iscarrierloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetIPRUpdatesFindByCarrierID(this.tokenKey, carrierId, this.productId).subscribe(\r\n data => {\r\n this.iprCarrierDetailModel = data[\"updates\"];\r\n this.CarrierName = this.iprCarrierDetailModel[0].businessName;\r\n this.ActiveStates = this.iprCarrierDetailModel[0].listOfActiveStates.filter(i => i.isSelected == true).map(i => i.shortName).join(', ');\r\n this.DeActiveStates = this.iprCarrierDetailModel[0].listOfDeActiveStates.filter(i => i.isSelected == true).map(i => i.shortName).join(', ');\r\n this.NotRegisteredStates = this.iprCarrierDetailModel[0].listOfNotRegisteredStates.filter(i => i.isSelected == true).map(i => i.shortName).join(', ');\r\n ApplicationActivityStore('View', 'IPR - Updates', this.appActivity, ToolEnum.ipr, ActionActivity.IPR, '/ipr/Update/details', null);\r\n\r\n this.unblockDocument();\r\n this.iscarrierloading = false;\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.unblockDocument();\r\n this.iscarrierloading = false;\r\n }\r\n );\r\n }\r\n RemoveCarrier() {\r\n this.iprCarrierDetailModel = [];\r\n this.ActiveStates = '';\r\n this.DeActiveStates = '';\r\n this.NotRegisteredStates = '';\r\n }\r\n AddToFavourite(update, IsFavourite: number, IsFromPopup: number) {\r\n this.IsFromPopup = IsFromPopup;\r\n let StateId = update.stateId;\r\n if (IsFavourite == 0) {\r\n this.SelectedState = StateId;\r\n this.favouriteUpdateModel = update;\r\n var elem = document.getElementById(\"lnkFavouriteValidation\");\r\n elem.click();\r\n }\r\n else {\r\n this.SaveFavourite(StateId, IsFavourite, update, IsFromPopup);\r\n }\r\n }\r\n UpdateStateFavourite(update, IsFavourite: number) { \r\n let filterState = this.iprupdatesModel.filter((i) => i.stateName === update.stateName);\r\n for (let li of filterState) {\r\n this.iprupdatesModel.filter((i) => i.updateId === li.updateId)[0].favourite = IsFavourite;\r\n }\r\n }\r\n viewallupdates() {\r\n this.queryParams = this.alldata;\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Updates'], { queryParams: { data: this.alldata } });\r\n this.GetIPRUpdates();\r\n }\r\n SaveFavourite(StateId: number, IsFavourite: number, update, IsFromPopup: number) {\r\n if (IsFromPopup == 0)\r\n this.blockDocument();\r\n document.getElementById(\"btnClose\").click();\r\n this.iprupdatesService.ClientStateFavouriteAdd(this.tokenKey, this.userID, String(StateId), IsFavourite)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (IsFavourite == 1) {\r\n this.showMessage('Selected state added successfully to favorite list.', 'Favorite', 'success');\r\n }\r\n else {\r\n this.showMessage('Selected state removed successfully from favorite list.', 'Favorite', 'success');\r\n }\r\n if (IsFromPopup == 0) {\r\n this.UpdateStateFavourite(update, IsFavourite);\r\n }\r\n else {\r\n update.favourite = IsFavourite;\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n GetFavourite(IsFavourite: number) {\r\n this.parameterModelV2.pageNumber=1;\r\n if (IsFavourite == 1) {\r\n this.FilterFavourite = 1;\r\n }\r\n else {\r\n this.FilterFavourite = 0;\r\n }\r\n\r\n this.GetIPRUpdates();\r\n }\r\n carrrierFilters($event) {\r\n this.parameterModelV2.pageNumber=1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.carrierFilter = $event.target.value;\r\n else\r\n this.carrierFilter = '';\r\n\r\n this.GetIPRUpdates();\r\n }\r\n\r\n GetStatesForFavorites() {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetStatesByUserID(this.tokenKey, this.userID,this.productId).subscribe(\r\n data => {\r\n this.listofState = data[\"state\"]\r\n }, error => {\r\n })\r\n }\r\n\r\n CloseStatePopup() {\r\n this.GetIPRUpdates();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setEmailAutoLoginParameter();\r\n }\r\n \r\n setEmailAutoLoginParameter() {\r\n if (sessionStorage.getItem('DisplayMessage') != null) {\r\n this.showMessage(sessionStorage.getItem('DisplayMessage') + ' - user not have access', 'Error', 'error');\r\n sessionStorage.removeItem('DisplayMessage');\r\n }\r\n }\r\n\r\n pageChanged($event: any) {\r\n this.parameterModelV2.pageNumber = $event.page;\r\n this.GetIPRUpdates();\r\n }\r\n \r\n}\r\n","export default \".lightblue {\\r\\n color: #0039BF;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.lightpink {\\r\\n color: #f5898e;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.gray {\\r\\n color: #7F7F7F;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.martop0 {\\r\\n margin-top:0px !important;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.carrierbody td {\\r\\n width: 300px;\\r\\n padding-bottom: 10px;\\r\\n padding-right: 30px;\\r\\n vertical-align: top;\\r\\n border-bottom: 1px solid #e4e4e4;\\r\\n padding-top: 10px;\\r\\n}\\r\\n\\r\\n.carrierbody td b {\\r\\n display: block;\\r\\n }\\r\\n\\r\\n.noborder td{\\r\\n border:none !important;\\r\\n}\\r\\n\\r\\n.center {\\r\\n text-align: center\\r\\n}\\r\\n\\r\\n.width25{\\r\\n width:25% !important;\\r\\n}\\r\\n\\r\\n.right{\\r\\n text-align:right;\\r\\n}\\r\\n\\r\\n.clearfix {\\r\\n clear:both;\\r\\n padding-bottom:10px;\\r\\n}\\r\\n\\r\\n.registration-label {\\r\\n margin-top: 6px;\\r\\n color: #b1b8bb;\\r\\n margin-right: 20px;\\r\\n margin-left: 0;\\r\\n}\\r\\n\\r\\n.lblRegisterStatus {\\r\\n font-family: 'Sarabun', sans-serif;\\r\\n margin-left: 8px;\\r\\n font-size: 14px;\\r\\n}\\r\\n\\r\\n.displyinline{\\r\\n display:inline-block;\\r\\n}\\r\\n\\r\\n.showonresponsive, .showonresponsivefavorite {\\r\\n display: none;\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 730px) {\\r\\n .showonresponsive {\\r\\n display: block;\\r\\n }\\r\\n .up-fil.two {\\r\\n width: 36%;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 1300px) {\\r\\n .showonresponsivefavorite {\\r\\n display: block;\\r\\n }\\r\\n .hidespe {\\r\\n display:none;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 655px) {\\r\\n .width100 {\\r\\n width: 100%\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 480px) {\\r\\n .width70 {\\r\\n width: 70% !important\\r\\n }\\r\\n .regstatus {\\r\\n width:100% !important;\\r\\n padding-left:3px !important;\\r\\n }\\r\\n .right {\\r\\n text-align:left;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 1300px) { \\r\\n .up-fil.three {\\r\\n width: 4%;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 731px) and (max-width: 1300px) {\\r\\n .top10 {\\r\\n margin-top: 10px;\\r\\n }\\r\\n}\\r\\n\\r\\n.greenColorButton\\r\\n{\\r\\n width: 20px;\\r\\n height: 20px;\\r\\n background-color: #036803;\\r\\n border-radius: 44px;\\r\\n display: inline-block;\\r\\n}\\r\\n\\r\\n.yellowColorButton\\r\\n{\\r\\n width: 20px;\\r\\n height: 20px;\\r\\n background-color: navy;\\r\\n border-radius: 44px;\\r\\n display: inline-block;\\r\\n}\\r\\n\\r\\n.redColorButton\\r\\n{\\r\\n width: 20px;\\r\\n height: 20px;\\r\\n background-color: red;\\r\\n border-radius: 44px;\\r\\n display: inline-block;\\r\\n}\\r\\n\\r\\n.greenText{\\r\\n color: #036803;\\r\\n font-weight: bold;\\r\\n}\\r\\n\\r\\n.yellowText{\\r\\n color: navy;\\r\\n font-weight: bold;\\r\\n}\\r\\n\\r\\n.redText{\\r\\n color: red;\\r\\n font-weight: bold;\\r\\n}\\r\\n\\r\\n.round-box-row{\\r\\n display: -webkit-box;\\r\\n display: flex;\\r\\n grid-column-gap: 30px;\\r\\n flex-wrap: wrap;\\r\\n}\\r\\n\\r\\n.round-box-row .round-box-text span{\\r\\n display: -webkit-box;\\r\\n display: flex;\\r\\n -webkit-box-align: center;\\r\\n align-items: center;\\r\\n grid-column-gap: 10px;\\r\\n}\\r\\n\\r\\n.round-box-row .round-box-text span p{\\r\\n margin-bottom: 0px;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvUk1EL2NhcnJpZXJzL3JtZGNhcnJpZXJzLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxjQUFjO0VBQ2QsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsY0FBYztFQUNkLGNBQWM7QUFDaEI7O0FBQ0E7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsV0FBVztBQUNiOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0FBQ2I7O0FBRUE7RUFDRSxZQUFZO0VBQ1osb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsZ0NBQWdDO0VBQ2hDLGlCQUFpQjtBQUNuQjs7QUFFRTtJQUNFLGNBQWM7RUFDaEI7O0FBQ0Y7RUFDRSxzQkFBc0I7QUFDeEI7O0FBQ0E7RUFDRTtBQUNGOztBQUNBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUNBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUNBO0VBQ0UsVUFBVTtFQUNWLG1CQUFtQjtBQUNyQjs7QUFDQTtFQUNFLGVBQWU7RUFDZixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLGNBQWM7QUFDaEI7O0FBQ0E7RUFDRSxrQ0FBa0M7RUFDbEMsZ0JBQWdCO0VBQ2hCLGVBQWU7QUFDakI7O0FBQ0E7RUFDRSxvQkFBb0I7QUFDdEI7O0FBQ0E7RUFDRSxhQUFhO0FBQ2Y7O0FBQ0E7RUFDRTtJQUNFLGNBQWM7RUFDaEI7RUFDQTtJQUNFLFVBQVU7RUFDWjtBQUNGOztBQUNBO0VBQ0U7SUFDRSxjQUFjO0VBQ2hCO0VBQ0E7SUFDRSxZQUFZO0VBQ2Q7QUFDRjs7QUFDQTtFQUNFO0lBQ0U7RUFDRjtBQUNGOztBQUNBO0VBQ0U7SUFDRTtFQUNGO0VBQ0E7SUFDRSxxQkFBcUI7SUFDckIsMkJBQTJCO0VBQzdCO0VBQ0E7SUFDRSxlQUFlO0VBQ2pCO0FBQ0Y7O0FBQ0E7RUFDRTtJQUNFLFNBQVM7RUFDWDtBQUNGOztBQUNBO0VBQ0U7SUFDRSxnQkFBZ0I7RUFDbEI7QUFDRjs7QUFFQTs7RUFFRSxXQUFXO0VBQ1gsWUFBWTtFQUNaLHlCQUF5QjtFQUN6QixtQkFBbUI7RUFDbkIscUJBQXFCO0FBQ3ZCOztBQUNBOztFQUVFLFdBQVc7RUFDWCxZQUFZO0VBQ1osc0JBQXNCO0VBQ3RCLG1CQUFtQjtFQUNuQixxQkFBcUI7QUFDdkI7O0FBQ0E7O0VBRUUsV0FBVztFQUNYLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxpQkFBaUI7QUFDbkI7O0FBQ0E7RUFDRSxXQUFXO0VBQ1gsaUJBQWlCO0FBQ25COztBQUNBO0VBQ0UsVUFBVTtFQUNWLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHFCQUFxQjtFQUNyQixlQUFlO0FBQ2pCOztBQUNBO0VBQ0Usb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQixxQkFBcUI7QUFDdkI7O0FBQ0E7RUFDRSxrQkFBa0I7QUFDcEIiLCJmaWxlIjoic3JjL2FwcC9Gcm9udC9STUQvY2FycmllcnMvcm1kY2FycmllcnMuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5saWdodGJsdWUge1xyXG4gIGNvbG9yOiAjMDAzOUJGO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4ubGlnaHRwaW5rIHtcclxuICBjb2xvcjogI2Y1ODk4ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmdyYXkge1xyXG4gIGNvbG9yOiAjN0Y3RjdGO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbi5tYXJ0b3AwIHtcclxuICBtYXJnaW4tdG9wOjBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbC1saWdodGJsdWU6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG59XHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLWxpZ2h0Ymx1ZTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbn1cclxuXHJcbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLWxpZ2h0Ymx1ZTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsLWxpZ2h0cGluazpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNTg5OGU7XHJcbn1cclxuXHJcbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRwaW5rOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ODk4ZTtcclxufVxyXG5cclxuLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRwaW5rOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ODk4ZTtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtZ3JheTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM3RjdGN0Y7XHJcbn1cclxuXHJcbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtZ3JheTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM3RjdGN0Y7XHJcbn1cclxuXHJcbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLWdyYXk6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0Y3RjdGO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uY2FycmllcmJvZHkgdGQge1xyXG4gIHdpZHRoOiAzMDBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU0ZTQ7XHJcbiAgcGFkZGluZy10b3A6IDEwcHg7XHJcbn1cclxuXHJcbiAgLmNhcnJpZXJib2R5IHRkIGIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4ubm9ib3JkZXIgdGR7XHJcbiAgYm9yZGVyOm5vbmUgIWltcG9ydGFudDtcclxufVxyXG4uY2VudGVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXJcclxufVxyXG4ud2lkdGgyNXtcclxuICB3aWR0aDoyNSUgIWltcG9ydGFudDtcclxufVxyXG4ucmlnaHR7XHJcbiAgdGV4dC1hbGlnbjpyaWdodDtcclxufVxyXG4uY2xlYXJmaXgge1xyXG4gIGNsZWFyOmJvdGg7XHJcbiAgcGFkZGluZy1ib3R0b206MTBweDtcclxufVxyXG4ucmVnaXN0cmF0aW9uLWxhYmVsIHtcclxuICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgY29sb3I6ICNiMWI4YmI7XHJcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG59XHJcbi5sYmxSZWdpc3RlclN0YXR1cyB7XHJcbiAgZm9udC1mYW1pbHk6ICdTYXJhYnVuJywgc2Fucy1zZXJpZjtcclxuICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG4uZGlzcGx5aW5saW5le1xyXG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG59XHJcbi5zaG93b25yZXNwb25zaXZlLCAuc2hvd29ucmVzcG9uc2l2ZWZhdm9yaXRlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDczMHB4KSB7XHJcbiAgLnNob3dvbnJlc3BvbnNpdmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIC51cC1maWwudHdvIHtcclxuICAgIHdpZHRoOiAzNiU7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkge1xyXG4gIC5zaG93b25yZXNwb25zaXZlZmF2b3JpdGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIC5oaWRlc3BlIHtcclxuICAgIGRpc3BsYXk6bm9uZTtcclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjU1cHgpIHtcclxuICAud2lkdGgxMDAge1xyXG4gICAgd2lkdGg6IDEwMCVcclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAud2lkdGg3MCB7XHJcbiAgICB3aWR0aDogNzAlICFpbXBvcnRhbnRcclxuICB9XHJcbiAgLnJlZ3N0YXR1cyB7XHJcbiAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nLWxlZnQ6M3B4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC5yaWdodCB7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkgeyAgXHJcbiAgLnVwLWZpbC50aHJlZSB7XHJcbiAgICB3aWR0aDogNCU7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDczMXB4KSBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XHJcbiAgLnRvcDEwIHtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uZ3JlZW5Db2xvckJ1dHRvblxyXG57XHJcbiAgd2lkdGg6IDIwcHg7XHJcbiAgaGVpZ2h0OiAyMHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMzY4MDM7XHJcbiAgYm9yZGVyLXJhZGl1czogNDRweDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuLnllbGxvd0NvbG9yQnV0dG9uXHJcbntcclxuICB3aWR0aDogMjBweDtcclxuICBoZWlnaHQ6IDIwcHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogbmF2eTtcclxuICBib3JkZXItcmFkaXVzOiA0NHB4O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4ucmVkQ29sb3JCdXR0b25cclxue1xyXG4gIHdpZHRoOiAyMHB4O1xyXG4gIGhlaWdodDogMjBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XHJcbiAgYm9yZGVyLXJhZGl1czogNDRweDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi5ncmVlblRleHR7XHJcbiAgY29sb3I6ICMwMzY4MDM7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnllbGxvd1RleHR7XHJcbiAgY29sb3I6IG5hdnk7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnJlZFRleHR7XHJcbiAgY29sb3I6IHJlZDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLnJvdW5kLWJveC1yb3d7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBncmlkLWNvbHVtbi1nYXA6IDMwcHg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG59XHJcbi5yb3VuZC1ib3gtcm93IC5yb3VuZC1ib3gtdGV4dCBzcGFue1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBncmlkLWNvbHVtbi1nYXA6IDEwcHg7XHJcbn1cclxuLnJvdW5kLWJveC1yb3cgLnJvdW5kLWJveC10ZXh0IHNwYW4gcHtcclxuICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbn0iXX0= */\"","import { Component, Inject, Input, OnInit } from '@angular/core';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport * as FileSaver from 'file-saver';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RMDClientFavouriteCarriersModel } from 'src/Models/RMDClientFavouriteCarriersModel';\r\nimport { RMDProviderFilterModel } from 'src/Models/RMDProviderFilterModel';\r\nimport { RMDUpdatesModel } from 'src/Models/RMDUpdatesModel';\r\nimport { AppConfig } from 'src/Services/app.config';\r\nimport { RmdupdatesService } from 'src/Services/rmdupdates.service';\r\nimport { htmlToPdf } from '../../../../Services/htmlToPdf';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { ActionActivity, ToolEnum } from 'src/Models/Common';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\n\r\n@Component({\r\n selector: 'app-rmdcarriers',\r\n templateUrl: './rmdcarriers.component.html',\r\n styleUrls: ['./rmdcarriers.component.css']\r\n})\r\nexport class RMDCarriersComponent implements OnInit {\r\n filter = new RMDProviderFilterModel();\r\n @Input()\r\n rangeOfupdatesDates: Date[] = [];\r\n isShowprogressSpinner = false;\r\n blockedDocument = false;\r\n baseUrl: string;\r\n userID: number;\r\n queryParams: string = '';\r\n alldata: string = 'all';\r\n unreaddata: string = 'unread';\r\n isAscending: boolean = false\r\n upDownBussinessNameCSS: string = '';\r\n upDownGateway_providerCSS: string = '';\r\n upDownFrnCSS: string = '';\r\n upDownPrevious_dba_namesCSS: string = '';\r\n upDownOther_dba_namesCSS: string = '';\r\n upDownForeign_voice_providerCSS: string = '';\r\n upDownImplementationCSS: string = '';\r\n upDownSys_updated_onCSS: string = '';\r\n carrier: RMDUpdatesModel;\r\n rmdUpdatesModel: RMDUpdatesModel[];\r\n rmdFullUpdatesModel: RMDUpdatesModel[];\r\n tokenKey: string = '';\r\n isloading: boolean;\r\n appModel: any;\r\n lastModifiedDetails = '';\r\n carrierForm: FormGroup;\r\n totalRecordCount: number = -1;\r\n carrierId: number;\r\n isFavorite: boolean;\r\n upDownIntermediate_provider: string = '';\r\n upDownipr_imported: string = '';\r\n\r\n stirShakenText: string = '';\r\n stirShakenType: string = '';\r\n\r\n\r\n constructor(private htmlToPdf: htmlToPdf, private rmdupdatesService: RmdupdatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth\r\n , private router: Router, private activedRoute: ActivatedRoute, @Inject('BASE_URL') baseUrl: string\r\n , @Inject(Window) private win: Window,private appActivity: ApplicationActivityService\r\n ) {\r\n this.baseUrl = baseUrl;\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.carrierForm = new FormGroup({\r\n rangeOfupdatesDates: new FormControl(),\r\n keywordFilter: new FormControl(),\r\n providerSearch: new FormControl(),\r\n });\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n this.titleService.setTitle('Providers');\r\n }\r\n ngOnInit() {\r\n this.movetotop();\r\n this.filter.orderBy = 'Sys_updated_on DESC';\r\n this.filter.userId = this.userID;\r\n this.filter.isFavorite = false;\r\n this.filter.pageNumber = 1;\r\n this.filter.pageSize = 50;\r\n this.upDownSys_updated_onCSS = 'active';\r\n this.isAscending = true;\r\n this.GetCarriers();\r\n\r\n }\r\n\r\n GetCarriers() {\r\n this.rmdUpdatesModel = [];\r\n this.rmdFullUpdatesModel = [];\r\n this.isloading = true;\r\n this.rmdupdatesService.GetFrontCarrierFilter(this.tokenKey, this.filter).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data != null) {\r\n \r\n this.rmdUpdatesModel = data['updates'];\r\n ApplicationActivityStore('View', 'RMD - Providers ', this.appActivity, ToolEnum.rmd, ActionActivity['Robocall Mitigation Database'], '/rmd/Providers');\r\n\r\n if (this.rmdUpdatesModel != null) {\r\n if (this.rmdUpdatesModel.length > 0) {\r\n this.totalRecordCount = this.rmdUpdatesModel[0].totalRecordCount;\r\n this.lastModifiedDetails = 'Last updated on ' + this.rmdUpdatesModel[0].lastModifiedDate;\r\n }\r\n else {\r\n this.totalRecordCount = 0;\r\n }\r\n }\r\n else {\r\n this.totalRecordCount = 0;\r\n }\r\n }\r\n },\r\n error => {\r\n this.isloading = false;\r\n console.log(error);\r\n }\r\n );\r\n\r\n }\r\n\r\n GetFullCarriers() {\r\n this.blockDocument();\r\n const filternew = Object.assign({}, this.filter);\r\n filternew.pageSize = 0;\r\n this.rmdupdatesService.GetFrontCarrierFilter(this.tokenKey, filternew).subscribe(\r\n data => {\r\n if (data != null) {\r\n this.rmdFullUpdatesModel = data['updates'];\r\n setTimeout(() => {\r\n let mainURL = this.baseUrl;\r\n let url = '
';\r\n url += '
';\r\n url += '
';\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '0',52).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n this.downloadFile('Providers', data['url']);\r\n }\r\n },\r\n error => {\r\n this.unblockDocument();\r\n }\r\n );\r\n }, 10000);\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n\r\n }\r\n\r\n updatesCarrierFilterClear() {\r\n this.filter.providerSearch = '';\r\n this.GetCarriers();\r\n }\r\n\r\n inputFilters($event, type) {\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n if (type == 1)\r\n this.filter.providerSearch = $event.target.value;\r\n else\r\n this.filter.keywordFilter = $event.target.value;\r\n else\r\n if (type == 1)\r\n this.filter.providerSearch = '';\r\n else\r\n this.filter.keywordFilter = '';\r\n this.filter.pageNumber = 1\r\n this.GetCarriers();\r\n }\r\n\r\n isupdatesDatesFilter(dateArray: any) {\r\n this.filter.pageNumber = 1;\r\n this.rangeOfupdatesDates = dateArray;\r\n\r\n if (this.rangeOfupdatesDates != null) {\r\n if (this.rangeOfupdatesDates.length > 1) {\r\n let dd1 = this.rangeOfupdatesDates[0].getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (this.rangeOfupdatesDates[0].getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n let dd2 = this.rangeOfupdatesDates[1].getDate().toString();\r\n if (parseInt(dd2.toString()) < 10)\r\n dd2 = '0' + dd2.toString();\r\n\r\n let mm2 = (this.rangeOfupdatesDates[1].getMonth() + 1).toString();\r\n if (parseInt(mm2.toString()) < 10)\r\n mm2 = '0' + mm2.toString();\r\n\r\n this.filter.fromDate = mm1 + '/' + dd1 + '/' + this.rangeOfupdatesDates[0].getFullYear() + \" 00:00:00\";\r\n this.filter.todate = mm2 + '/' + dd2 + '/' + this.rangeOfupdatesDates[1].getFullYear() + \" 23:59:00\";\r\n }\r\n if (this.filter.fromDate === null || this.filter.fromDate === '') {\r\n this.filter.fromDate = null;\r\n this.filter.todate = null;\r\n }\r\n }\r\n else {\r\n this.filter.fromDate = null;\r\n this.filter.todate = null;\r\n }\r\n if (this.filter.fromDate != null && this.filter.todate != null)\r\n this.GetCarriers();\r\n }\r\n\r\n updatesDateFilterClear() {\r\n this.filter.fromDate = null;\r\n this.filter.todate = null;\r\n this.rangeOfupdatesDates = [];\r\n this.GetCarriers();\r\n }\r\n GetFavourite(IsFavourite: boolean) {\r\n this.filter.pageNumber = 1;\r\n this.filter.isFavorite = IsFavourite;\r\n this.GetCarriers();\r\n }\r\n\r\n\r\n cleanCssClass() {\r\n this.upDownBussinessNameCSS = '';\r\n this.upDownGateway_providerCSS= '';\r\n this.upDownFrnCSS= '';\r\n this.upDownPrevious_dba_namesCSS = '';\r\n this.upDownOther_dba_namesCSS = '';\r\n this.upDownForeign_voice_providerCSS = '';\r\n this.upDownImplementationCSS = '';\r\n this.upDownSys_updated_onCSS = '';\r\n this.upDownIntermediate_provider = '';\r\n this.upDownipr_imported = '';\r\n }\r\n\r\n sort(sortBy: any) {\r\n this.cleanCssClass();\r\n this.isAscending = !this.isAscending;\r\n this.filter.orderBy = this.isAscending ? sortBy : sortBy + ' DESC';\r\n\r\n switch (sortBy) {\r\n case \"Business_name\": this.upDownBussinessNameCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Gateway_provider\": this.upDownGateway_providerCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Frn\": this.upDownFrnCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Previous_dba_names\": this.upDownPrevious_dba_namesCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Other_dba_names\": this.upDownOther_dba_namesCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Foreign_voice_provider\": this.upDownForeign_voice_providerCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Implementation\": this.upDownImplementationCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Sys_updated_on\": this.upDownSys_updated_onCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Intermediate_provider\": this.upDownIntermediate_provider = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"ipr_imported\": this.upDownipr_imported = this.isAscending ? 'active' : 'active-up'; break;\r\n default: break;\r\n }\r\n this.GetCarriers();\r\n }\r\n\r\n GetRMDUpdateById(carrierId) {\r\n this.carrier = undefined;\r\n this.blockDocument();\r\n this.rmdupdatesService.GetRMDUpdatesFindByCarrierID(this.tokenKey, carrierId).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n if (data != null) {\r\n this.carrier = data['updates'];\r\n ApplicationActivityStore('View', 'RMD - Providers', this.appActivity, ToolEnum.rmd, ActionActivity['Robocall Mitigation Database'], '/RMD/Providers/details', null);\r\n }\r\n },\r\n error => {\r\n this.unblockDocument();\r\n console.log(error);\r\n }\r\n );\r\n\r\n }\r\n pageChanged($event: any) {\r\n this.filter.pageNumber = $event.page;\r\n this.GetCarriers();\r\n }\r\n\r\n AddToFavourite(id: number, isFavorite: boolean) {\r\n this.carrierId = id;\r\n this.isFavorite = isFavorite;\r\n if (!isFavorite) {\r\n var elem = document.getElementById(\"lnkFavouriteValidation\");\r\n elem.click();\r\n }\r\n else {\r\n this.SaveFavoriteProvider();\r\n }\r\n }\r\n\r\n SaveFavoriteProvider() {\r\n const favouriteCarriersModel = new RMDClientFavouriteCarriersModel();\r\n favouriteCarriersModel.clientId = this.userID;\r\n favouriteCarriersModel.isFavourite = this.isFavorite;\r\n favouriteCarriersModel.carrierId = this.carrierId;\r\n this.rmdupdatesService.RMDClientCarrierFavouriteAddRemove(this.tokenKey, favouriteCarriersModel)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.rmdUpdatesModel.filter(x => x.carrierId == this.carrierId).forEach(element => {\r\n element.isFavorite = this.isFavorite;\r\n });\r\n if (this.isFavorite) {\r\n this.showMessage('Selected provider added successfully to favorite list.', 'Favorite', 'success');\r\n }\r\n else {\r\n\r\n this.showMessage('Selected provider removed successfully from favorite list.', 'Favorite', 'success');\r\n }\r\n document.getElementById(\"btnClose\").click();\r\n // this.GetRMDClientFavouriteCarriers();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n\r\n pdfDocument() {\r\n this.GetFullCarriers();\r\n\r\n\r\n }\r\n\r\n public downloadFile(filename, url) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename);\r\n ApplicationActivityStore('Download', 'RMD Providers File download ' + filename, this.appActivity, ToolEnum.rmd, ActionActivity['Robocall Mitigation Database'], '/rmd/providers/Details');\r\n sessionStorage.setItem('fileloading', 'false');\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n\r\n setColor(textValue) {\r\n if (textValue != null) {\r\n if (textValue.toString().indexOf('Complete STIR') > -1) {\r\n return 'greenText';\r\n }\r\n else if (textValue.toString().indexOf('Partial STIR/SHAKEN') > -1) {\r\n return 'yellowText';\r\n }\r\n else if (textValue.toString().indexOf('No STIR/SHAKEN') > -1) {\r\n return 'redText';\r\n }\r\n }\r\n }\r\n\r\n downloadDocument(sys_id) {\r\n if (sys_id != null) {\r\n this.win.open('https://fccprod.servicenowservices.com/api/x_g_fmc_rmd/rmd/attachment?sys=' + sys_id);\r\n }\r\n }\r\n\r\n setstirShakenModelPopupText(type) {\r\n if (type == 'Complete') {\r\n this.stirShakenText = 'Complete STIR/SHAKEN Implementation. The filer certifies that all voice traffic that originates on its network is authenticated with STIR/SHAKEN, consistent with 47 CFR § 64.6301(a).';\r\n this.stirShakenType = 'Complete';\r\n }\r\n else if (type == 'Partial') {\r\n this.stirShakenText = 'Partial STIR/SHAKEN Implementation – Performing Robocall Mitigation. The filer certifies that it commits to respond to all traceback requests from the Commission, law enforcement, and the industry traceback consortium, and to cooperate with such entities in investigating and stopping any illegal robocallers that use its service to originate calls, and that some of the voice traffic that originates on its network is authenticated with STIR/SHAKEN, and the remainder of the voice traffic that originates on its network is subject to a robocall mitigation program. The filer also certifies that the attached searchable PDF details the specific reasonable steps it has taken to avoid originating illegal robocall traffic as part of its robocall mitigation program, and, if applicable, the type of extension or extensions it received under 47 CFR § 64.6304.';\r\n this.stirShakenType = 'Partial';\r\n }\r\n else if (type == 'No') {\r\n this.stirShakenText = 'No STIR/SHAKEN Implementation – Performing Robocall Mitigation. The filer certifies that it commits to respond to all traceback requests from the Commission, law enforcement, and the industry traceback consortium, and to cooperate with such entities in investigating and stopping any illegal robocallers that use its service to originate calls, and that none of the voice traffic that originates on its network is authenticated with STIR/SHAKEN, and that all of the voice traffic that originates on its network is subject to a robocall mitigation program. The filer also certifies that the attached searchable PDF details the specific reasonable steps it has taken to avoid originating illegal robocall traffic as part of its robocall mitigation program, and, if applicable, the type of extension or extensions it received under 47 CFR § 64.6304.';\r\n this.stirShakenType = 'No';\r\n }\r\n }\r\n\r\n}\r\n","export default \".up-fil label {\\r\\n color: #000 !important;\\r\\n}\\r\\n.left35\\r\\n{\\r\\n padding-left:35px;\\r\\n}\\r\\n.states {\\r\\n display: inline-block;\\r\\n margin-right: 40px;\\r\\n /*line-height:35px;*/\\r\\n vertical-align: top;\\r\\n margin-bottom: 14px;\\r\\n}\\r\\n.lightblue {\\r\\n color: #2d0080;\\r\\n font-weight: 600;\\r\\n font-size: 15px;\\r\\n font-family: 'Sarabun', sans-serif;\\r\\n}\\r\\n.states img {\\r\\n vertical-align: top;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvUk1EL215LWZhdm9yaXRlcy9ybWRteS1mYXZvcml0ZXMuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHNCQUFzQjtBQUN4QjtBQUNBOztFQUVFLGlCQUFpQjtBQUNuQjtBQUNBO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLG1CQUFtQjtBQUNyQjtBQUNBO0VBQ0UsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2Ysa0NBQWtDO0FBQ3BDO0FBQ0E7RUFDRSxtQkFBbUI7QUFDckIiLCJmaWxlIjoic3JjL2FwcC9Gcm9udC9STUQvbXktZmF2b3JpdGVzL3JtZG15LWZhdm9yaXRlcy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnVwLWZpbCBsYWJlbCB7XHJcbiAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcclxufVxyXG4ubGVmdDM1XHJcbntcclxuICBwYWRkaW5nLWxlZnQ6MzVweDtcclxufVxyXG4uc3RhdGVzIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xyXG4gIC8qbGluZS1oZWlnaHQ6MzVweDsqL1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTRweDtcclxufVxyXG4ubGlnaHRibHVlIHtcclxuICBjb2xvcjogIzJkMDA4MDtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGZvbnQtc2l6ZTogMTVweDtcclxuICBmb250LWZhbWlseTogJ1NhcmFidW4nLCBzYW5zLXNlcmlmO1xyXG59XHJcbi5zdGF0ZXMgaW1nIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG59Il19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ToolEnum } from 'src/Models/Common';\r\nimport { RMDClientFavouriteCarriersModel } from 'src/Models/RMDClientFavouriteCarriersModel';\r\nimport { AppConfig } from 'src/Services/app.config';\r\nimport { RmdupdatesService } from 'src/Services/rmdupdates.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\n\r\n@Component({\r\n selector: 'app-rmdmy-favorites',\r\n templateUrl: './rmdmy-favorites.component.html',\r\n styleUrls: ['./rmdmy-favorites.component.css']\r\n})\r\nexport class RMDMyFavoritesComponent implements OnInit {\r\n dropdownListProviders = [];\r\n dropdownSettingsProviders = {};\r\n selectedItemsProviders = [];\r\n favoriteProviderList = [];\r\n providerList = [];\r\n isloading: boolean = false;\r\n tokenKey: string = '';\r\n userID: number;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n carrierId: number;\r\n constructor(private rmdupdatesService: RmdupdatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth\r\n , private router: Router, private activedRoute: ActivatedRoute) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.titleService.setTitle('My Favorites');\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.movetotop();\r\n this.isloading = false;\r\n this.GetRMDClientFavouriteCarriers();\r\n this.dropdownSettingsProviders = {\r\n singleSelection: false,\r\n text: \"Select Provider(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No Provider available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: false,\r\n primaryKey: 'carrierId',\r\n labelKey: 'business_name',\r\n };\r\n }\r\n GetRMDClientFavouriteCarriers() {\r\n this.favoriteProviderList = [];\r\n this.dropdownListProviders = [];\r\n this.selectedItemsProviders = [];\r\n this.blockDocument();\r\n this.rmdupdatesService.GetRMDClientFavouriteCarriers(this.tokenKey, this.userID).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n if (data[\"updates\"] != null) {\r\n this.providerList = data[\"updates\"];\r\n this.favoriteProviderList = this.providerList.filter(x => x.favouriteId != 0);\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n RemoveStarFavorite(id: number, Type: string) {\r\n this.carrierId = id;\r\n var elem = document.getElementById(\"lnkFavouriteValidation\");\r\n elem.click();\r\n }\r\n OnSelectProvider($event) {\r\n this.SaveFavoriteProvider($event['carrierId'], true);\r\n }\r\n OnDeSelectProvider($event) {\r\n this.SaveFavoriteProvider($event['carrierId'], false);\r\n }\r\n\r\n SaveFavoriteProvider(id: number, IsFavorite: boolean) {\r\n const favouriteCarriersModel = new RMDClientFavouriteCarriersModel();\r\n favouriteCarriersModel.clientId = this.userID;\r\n favouriteCarriersModel.isFavourite = IsFavorite;\r\n favouriteCarriersModel.carrierId = id;\r\n this.rmdupdatesService.RMDClientCarrierFavouriteAddRemove(this.tokenKey, favouriteCarriersModel)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (IsFavorite) {\r\n this.showMessage('Selected provider added successfully to favorite list.', 'Favorite', 'success');\r\n }\r\n else {\r\n this.favoriteProviderList = this.favoriteProviderList.filter(x => x.carrierId != id)\r\n this.showMessage('Selected provider removed successfully from favorite list.', 'Favorite', 'success');\r\n }\r\n // this.GetRMDClientFavouriteCarriers();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n // \r\n\r\n DeselectFavourite() {\r\n document.getElementById(\"btnClose\").click();\r\n this.SaveFavoriteProvider(this.carrierId, false);\r\n }\r\n CancelDeselectFavourite() {\r\n document.getElementById(\"btnClose\").click();\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n\r\n}\r\n","export default \".lightblue {\\r\\n color: #0039BF;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.lightpink {\\r\\n color: #f5898e;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.gray {\\r\\n color: #7F7F7F;\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.martop0 {\\r\\n margin-top: 0px !important;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-lightblue:before {\\r\\n background-color: #0039BF;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-lightpink:before {\\r\\n background-color: #f5898e;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n}\\r\\n\\r\\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label-gray:before {\\r\\n background-color: #7F7F7F;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.desc {\\r\\n font-weight: bold;\\r\\n color: #757575\\r\\n}\\r\\n\\r\\n.carrierbody td {\\r\\n width: 300px;\\r\\n padding-bottom: 10px;\\r\\n padding-right: 30px;\\r\\n vertical-align: top;\\r\\n border-bottom: 1px solid #e4e4e4;\\r\\n padding-top: 10px;\\r\\n}\\r\\n\\r\\n.carrierbody td b{\\r\\n display:block;\\r\\n}\\r\\n\\r\\n.noborder td {\\r\\n border: none !important;\\r\\n}\\r\\n\\r\\n.center{text-align:center}\\r\\n\\r\\n.clearfix {\\r\\n clear: both;\\r\\n padding-bottom: 10px;\\r\\n}\\r\\n\\r\\n.showonresponsive, .showonresponsivefavorite {\\r\\n display: none;\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 730px) {\\r\\n .showonresponsive {\\r\\n display: block;\\r\\n }\\r\\n\\r\\n .up-fil.two {\\r\\n width: 36%;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 1300px) {\\r\\n .showonresponsivefavorite {\\r\\n display: block;\\r\\n }\\r\\n\\r\\n .hidespe {\\r\\n display: none;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 655px) {\\r\\n .width100 {\\r\\n width: 100%\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 480px) {\\r\\n .width70 {\\r\\n width: 70% !important\\r\\n }\\r\\n\\r\\n .regstatus {\\r\\n width: 100% !important;\\r\\n padding-left: 3px !important;\\r\\n }\\r\\n\\r\\n .right {\\r\\n text-align: left;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 1300px) {\\r\\n .up-fil.three {\\r\\n width: 4%;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 731px) and (max-width: 1300px) {\\r\\n .top10 {\\r\\n margin-top: 10px;\\r\\n }\\r\\n}\\r\\n\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvUk1EL3VwZGF0ZXMvcm1kdXBkYXRlcy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsY0FBYztFQUNkLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0FBQ2I7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBR0E7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsV0FBVztBQUNiOztBQUNBO0VBQ0UsaUJBQWlCO0VBQ2pCO0FBQ0Y7O0FBQ0E7RUFDRSxZQUFZO0VBQ1osb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsZ0NBQWdDO0VBQ2hDLGlCQUFpQjtBQUNuQjs7QUFDQTtFQUNFLGFBQWE7QUFDZjs7QUFDQTtFQUNFLHVCQUF1QjtBQUN6Qjs7QUFDQSxRQUFRLGlCQUFpQjs7QUFDekI7RUFDRSxXQUFXO0VBQ1gsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0U7SUFDRSxjQUFjO0VBQ2hCOztFQUVBO0lBQ0UsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLGNBQWM7RUFDaEI7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7QUFDRjs7QUFFQTtFQUNFO0lBQ0U7RUFDRjtBQUNGOztBQUVBO0VBQ0U7SUFDRTtFQUNGOztFQUVBO0lBQ0Usc0JBQXNCO0lBQ3RCLDRCQUE0QjtFQUM5Qjs7RUFFQTtJQUNFLGdCQUFnQjtFQUNsQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxTQUFTO0VBQ1g7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsZ0JBQWdCO0VBQ2xCO0FBQ0YiLCJmaWxlIjoic3JjL2FwcC9Gcm9udC9STUQvdXBkYXRlcy9ybWR1cGRhdGVzLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubGlnaHRibHVlIHtcclxuICBjb2xvcjogIzAwMzlCRjtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmxpZ2h0cGluayB7XHJcbiAgY29sb3I6ICNmNTg5OGU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5ncmF5IHtcclxuICBjb2xvcjogIzdGN0Y3RjtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLm1hcnRvcDAge1xyXG4gIG1hcmdpbi10b3A6IDBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbC1saWdodGJsdWU6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzOUJGO1xyXG59XHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLWxpZ2h0Ymx1ZTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbn1cclxuXHJcbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLWxpZ2h0Ymx1ZTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDM5QkY7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsLWxpZ2h0cGluazpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNTg5OGU7XHJcbn1cclxuXHJcbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRwaW5rOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ODk4ZTtcclxufVxyXG5cclxuLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtbGlnaHRwaW5rOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ODk4ZTtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtbGFiZWwtZ3JheTpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM3RjdGN0Y7XHJcbn1cclxuXHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLWdyYXk6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0Y3RjdGO1xyXG59XHJcblxyXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbC1ncmF5OmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdGN0Y3RjtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG4uZGVzYyB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgY29sb3I6ICM3NTc1NzVcclxufVxyXG4uY2FycmllcmJvZHkgdGQge1xyXG4gIHdpZHRoOiAzMDBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU0ZTQ7XHJcbiAgcGFkZGluZy10b3A6IDEwcHg7XHJcbn1cclxuLmNhcnJpZXJib2R5IHRkIGJ7XHJcbiAgZGlzcGxheTpibG9jaztcclxufVxyXG4ubm9ib3JkZXIgdGQge1xyXG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbi5jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9XHJcbi5jbGVhcmZpeCB7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5zaG93b25yZXNwb25zaXZlLCAuc2hvd29ucmVzcG9uc2l2ZWZhdm9yaXRlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MzBweCkge1xyXG4gIC5zaG93b25yZXNwb25zaXZlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLnVwLWZpbC50d28ge1xyXG4gICAgd2lkdGg6IDM2JTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkge1xyXG4gIC5zaG93b25yZXNwb25zaXZlZmF2b3JpdGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAuaGlkZXNwZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjU1cHgpIHtcclxuICAud2lkdGgxMDAge1xyXG4gICAgd2lkdGg6IDEwMCVcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgLndpZHRoNzAge1xyXG4gICAgd2lkdGg6IDcwJSAhaW1wb3J0YW50XHJcbiAgfVxyXG5cclxuICAucmVnc3RhdHVzIHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDNweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLnJpZ2h0IHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzAwcHgpIHtcclxuICAudXAtZmlsLnRocmVlIHtcclxuICAgIHdpZHRoOiA0JTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDczMXB4KSBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XHJcbiAgLnRvcDEwIHtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4iXX0= */\"","import { Component, Inject, Input, OnInit } from '@angular/core';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport * as FileSaver from 'file-saver';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RMDClientFavouriteCarriersModel } from 'src/Models/RMDClientFavouriteCarriersModel';\r\nimport { RMDProviderFilterModel } from 'src/Models/RMDProviderFilterModel';\r\nimport { RMDUpdatesModel } from 'src/Models/RMDUpdatesModel';\r\nimport { AppConfig } from 'src/Services/app.config';\r\nimport { RmdupdatesService } from 'src/Services/rmdupdates.service';\r\nimport { htmlToPdf } from '../../../../Services/htmlToPdf';\r\nimport { CheckAuth } from '../../../../Services/utility.service';\r\nimport { ActionActivity, ToolEnum } from 'src/Models/Common';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\n\r\n@Component({\r\n selector: 'app-rmdupdates',\r\n templateUrl: './rmdupdates.component.html',\r\n styleUrls: ['./rmdupdates.component.css']\r\n})\r\nexport class RMDUpdatesComponent implements OnInit {\r\n filter = new RMDProviderFilterModel();\r\n @Input()\r\n rangeOfupdatesDates: Date[] = [];\r\n isShowprogressSpinner = false;\r\n blockedDocument = false;\r\n baseUrl: string;\r\n userID: number;\r\n isAscending: boolean = false\r\n upDownBussinessNameCSS: string = '';\r\n upDownImplementationCSS: string = '';\r\n upDownSys_updated_onCSS: string = '';\r\n upDownDescription_onCSS: string = '';\r\n carrier: RMDUpdatesModel;\r\n rmdUpdatesModel: RMDUpdatesModel[];\r\n rmdFullUpdatesModel: RMDUpdatesModel[];\r\n tokenKey: string = '';\r\n isloading: boolean;\r\n appModel: any;\r\n lastModifiedDetails: '';\r\n carrierForm: FormGroup;\r\n totalRecordCount: number = -1;\r\n IsNotificationSaved: boolean = false;\r\n carrierId: number;\r\n isFavorite: boolean;\r\n constructor(private htmlToPdf: htmlToPdf, private rmdupdatesService: RmdupdatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth,private appActivity: ApplicationActivityService\r\n , private router: Router, private activedRoute: ActivatedRoute, @Inject('BASE_URL') baseUrl: string) {\r\n this.baseUrl = baseUrl;\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.carrierForm = new FormGroup({\r\n rangeOfupdatesDates: new FormControl(),\r\n keywordFilter: new FormControl(),\r\n providerSearch: new FormControl(),\r\n });\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n this.titleService.setTitle('Providers');\r\n }\r\n ngOnInit() {\r\n this.movetotop();\r\n this.filter.orderBy = 'Sys_updated_on DESC';\r\n this.filter.userId = this.userID;\r\n this.filter.isFavorite = false;\r\n this.filter.pageNumber = 1;\r\n this.filter.pageSize = 0;\r\n this.filter.unreadonly = true;\r\n this.upDownSys_updated_onCSS = 'active';\r\n this.isAscending = true;\r\n this.GetCarriers();\r\n\r\n }\r\n\r\n GetCarriers() {\r\n this.rmdUpdatesModel = [];\r\n this.rmdFullUpdatesModel = [];\r\n this.isloading = true;\r\n this.rmdupdatesService.GetRMDUpdatesUnread(this.tokenKey, this.filter).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data != null) {\r\n this.rmdUpdatesModel = data['updates'];\r\n if (this.rmdUpdatesModel != null) {\r\n ApplicationActivityStore('View', 'RMD - Updates', this.appActivity, ToolEnum.rmd, ActionActivity['Robocall Mitigation Database'], '/rmd/Update', null);\r\n \r\n if (this.rmdUpdatesModel.length > 0) {\r\n this.totalRecordCount = this.rmdUpdatesModel[0].totalRecordCount;\r\n this.filter.unreadonly = data.unreadonly;\r\n if (!data.unreadonly) {\r\n this.filter.pageSize = 50;\r\n }\r\n if (!this.IsNotificationSaved) {\r\n this.saveNotification(this.rmdUpdatesModel);\r\n this.IsNotificationSaved = true;\r\n }\r\n }\r\n else {\r\n this.totalRecordCount = 0;\r\n }\r\n }\r\n else {\r\n this.totalRecordCount = 0;\r\n }\r\n }\r\n },\r\n error => {\r\n this.isloading = false;\r\n console.log(error);\r\n }\r\n );\r\n\r\n }\r\n GetFullCarriers() {\r\n this.blockDocument();\r\n const filternew = Object.assign({}, this.filter);\r\n filternew.pageSize = 0;\r\n this.rmdupdatesService.GetFrontCarrierFilter(this.tokenKey, filternew).subscribe(\r\n data => {\r\n if (data != null) {\r\n this.rmdFullUpdatesModel = data['updates'];\r\n setTimeout(() => {\r\n let mainURL = this.baseUrl;\r\n let url = '
';\r\n url += '
';\r\n url += '
';\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '0',0).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n this.downloadFile('Providers', data['url']);\r\n }\r\n },\r\n error => {\r\n this.unblockDocument();\r\n }\r\n );\r\n }, 10000);\r\n\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n\r\n }\r\n\r\n saveNotification(updates) {\r\n let carrierIds = updates.map(i => i.carrierId).join(',');\r\n const filter = new RMDProviderFilterModel();\r\n filter.userId = this.userID;\r\n filter.carrierIds = carrierIds;\r\n this.rmdupdatesService.addNotification(this.tokenKey, filter).subscribe(data => {\r\n if (data.status == 'Success') {\r\n window.document.body.getElementsByClassName('unread')[0].setAttribute(\"style\", \"display:none\");\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n });\r\n }\r\n\r\n updatesCarrierFilterClear() {\r\n this.filter.providerSearch = '';\r\n this.GetCarriers();\r\n }\r\n\r\n inputFilters($event, type) {\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n if (type == 1)\r\n this.filter.providerSearch = $event.target.value;\r\n else\r\n this.filter.keywordFilter = $event.target.value;\r\n else\r\n if (type == 1)\r\n this.filter.providerSearch = '';\r\n else\r\n this.filter.keywordFilter = '';\r\n this.filter.pageNumber = 1\r\n this.GetCarriers();\r\n }\r\n\r\n isupdatesDatesFilter(dateArray: any) {\r\n this.filter.pageNumber = 1;\r\n this.rangeOfupdatesDates = dateArray;\r\n\r\n if (this.rangeOfupdatesDates != null) {\r\n if (this.rangeOfupdatesDates.length > 1) {\r\n let dd1 = this.rangeOfupdatesDates[0].getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (this.rangeOfupdatesDates[0].getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n let dd2 = this.rangeOfupdatesDates[1].getDate().toString();\r\n if (parseInt(dd2.toString()) < 10)\r\n dd2 = '0' + dd2.toString();\r\n\r\n let mm2 = (this.rangeOfupdatesDates[1].getMonth() + 1).toString();\r\n if (parseInt(mm2.toString()) < 10)\r\n mm2 = '0' + mm2.toString();\r\n\r\n this.filter.fromDate = mm1 + '/' + dd1 + '/' + this.rangeOfupdatesDates[0].getFullYear() + \" 00:00:00\";\r\n this.filter.todate = mm2 + '/' + dd2 + '/' + this.rangeOfupdatesDates[1].getFullYear() + \" 23:59:00\";\r\n }\r\n if (this.filter.fromDate === null || this.filter.fromDate === '') {\r\n this.filter.fromDate = null;\r\n this.filter.todate = null;\r\n }\r\n }\r\n else {\r\n this.filter.fromDate = null;\r\n this.filter.todate = null;\r\n }\r\n if (this.filter.fromDate != null && this.filter.todate != null)\r\n this.GetCarriers();\r\n }\r\n\r\n updatesDateFilterClear() {\r\n this.filter.fromDate = null;\r\n this.filter.todate = null;\r\n this.rangeOfupdatesDates = [];\r\n this.GetCarriers();\r\n }\r\n GetFavourite(IsFavourite: boolean) {\r\n this.filter.pageNumber = 1;\r\n this.filter.isFavorite = IsFavourite;\r\n this.GetCarriers();\r\n }\r\n\r\n\r\n cleanCssClass() {\r\n this.upDownBussinessNameCSS = '';\r\n this.upDownDescription_onCSS = '';\r\n this.upDownImplementationCSS = '';\r\n this.upDownSys_updated_onCSS = '';\r\n }\r\n\r\n sort(sortBy: any) {\r\n this.cleanCssClass();\r\n this.isAscending = !this.isAscending;\r\n this.filter.orderBy = this.isAscending ? sortBy : sortBy + ' DESC';\r\n\r\n switch (sortBy) {\r\n case \"Business_name\": this.upDownBussinessNameCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Description\": this.upDownDescription_onCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Implementation\": this.upDownImplementationCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n case \"Sys_updated_on\": this.upDownSys_updated_onCSS = this.isAscending ? 'active' : 'active-up'; break;\r\n default: break;\r\n }\r\n this.GetCarriers();\r\n }\r\n\r\n GetRMDUpdateById(carrierId) {\r\n this.carrier = undefined;\r\n this.blockDocument();\r\n this.rmdupdatesService.GetRMDUpdatesFindByCarrierID(this.tokenKey, carrierId).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n if (data != null) {\r\n this.carrier = data['updates'];\r\n ApplicationActivityStore('View', 'RMD - Updates', this.appActivity, ToolEnum.rmd, ActionActivity['Robocall Mitigation Database'], '/rmd/Update/details', null);\r\n\r\n }\r\n },\r\n error => {\r\n this.unblockDocument();\r\n console.log(error);\r\n }\r\n );\r\n\r\n }\r\n pageChanged($event: any) {\r\n this.filter.pageNumber = $event.page;\r\n this.GetCarriers();\r\n }\r\n\r\n AddToFavourite(id: number, isFavorite: boolean) {\r\n this.carrierId = id;\r\n this.isFavorite = isFavorite;\r\n if (!isFavorite) {\r\n var elem = document.getElementById(\"lnkFavouriteValidation\");\r\n elem.click();\r\n }\r\n else {\r\n this.SaveFavoriteProvider();\r\n }\r\n }\r\n\r\n SaveFavoriteProvider() {\r\n const favouriteCarriersModel = new RMDClientFavouriteCarriersModel();\r\n favouriteCarriersModel.clientId = this.userID;\r\n favouriteCarriersModel.isFavourite = this.isFavorite;\r\n favouriteCarriersModel.carrierId = this.carrierId;\r\n this.rmdupdatesService.RMDClientCarrierFavouriteAddRemove(this.tokenKey, favouriteCarriersModel)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.rmdUpdatesModel.filter(x => x.carrierId == this.carrierId).forEach(element => {\r\n element.isFavorite = this.isFavorite;\r\n });\r\n if (this.isFavorite) {\r\n this.showMessage('Selected provider added successfully to favorite list.', 'Favorite', 'success');\r\n }\r\n else {\r\n this.showMessage('Selected provider removed successfully from favorite list.', 'Favorite', 'success');\r\n }\r\n document.getElementById(\"btnClose\").click();\r\n // this.GetRMDClientFavouriteCarriers();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n })\r\n }\r\n\r\n\r\n pdfDocument() {\r\n this.GetFullCarriers();\r\n\r\n\r\n }\r\n\r\n public downloadFile(filename, url) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename);\r\n ApplicationActivityStore('Download', 'RMD Updates File download ' + filename, this.appActivity, ToolEnum.rmd, ActionActivity['Robocall Mitigation Database'], '/rmd/updates/Details');\r\n\r\n sessionStorage.setItem('fileloading', 'false');\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setEmailAutoLoginParameter();\r\n }\r\n \r\n setEmailAutoLoginParameter() {\r\n if (sessionStorage.getItem('DisplayMessage') != null) {\r\n this.showMessage(sessionStorage.getItem('DisplayMessage') + ' - user not have access', 'Error', 'error');\r\n sessionStorage.removeItem('DisplayMessage');\r\n }\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L2FjY2Vzcy1kZW5pZWQvYWNjZXNzLWRlbmllZC5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-access-denied',\r\n templateUrl: './access-denied.component.html',\r\n styleUrls: ['./access-denied.component.css']\r\n})\r\nexport class FrontAccessDeniedComponent implements OnInit {\r\n\r\n AccessDeniedTool: string = 'selected'\r\n constructor() {\r\n this.AccessDeniedTool = sessionStorage.getItem('ClientAccessDeniedTool');\r\n if (this.AccessDeniedTool.toLocaleLowerCase() == \"ipr\")\r\n this.AccessDeniedTool = \"iPR\";\r\n else if (this.AccessDeniedTool.toLocaleLowerCase() == \"voip\")\r\n this.AccessDeniedTool = \"VoIP\";\r\n else if (this.AccessDeniedTool.toLocaleLowerCase() == \"actionitem\")\r\n this.AccessDeniedTool = \"Trac-It\";\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L2FkbWluLWJ5LXBhc3MtY2xpZW50LWxvZ2luL2FkbWluLWJ5LXBhc3MtY2xpZW50LWxvZ2luLmNvbXBvbmVudC5jc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router, Params } from '@angular/router';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AdminByPassClientLoginService } from '../../../Services/adminByPassClientLogin.service';\r\nimport { userModel } from '../../../Models/usersModel';\r\n\r\n@Component({\r\n selector: 'app-admin-by-pass-client-login',\r\n templateUrl: './admin-by-pass-client-login.component.html',\r\n styleUrls: ['./admin-by-pass-client-login.component.css']\r\n})\r\nexport class AdminByPassClientLoginComponent implements OnInit {\r\n appModel: any;\r\n tokenKey: string = '';\r\n adminUserId: string = '';\r\n clientId: string = '';\r\n userModel = new userModel();\r\n\r\n constructor(private adminByPassService: AdminByPassClientLoginService, private toastr: ToastrService, private activedRoute: ActivatedRoute, private router: Router) {\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n sessionStorage.setItem('BaseURL', this.appModel.BaseURL);\r\n }\r\n\r\n ngOnInit() { \r\n this.activedRoute.params.subscribe((params: Params) => { \r\n if (params['id'] && params['id2']) { \r\n if (params['id'] != null && params['id'] != null) { \r\n this.adminUserId = params['id'];\r\n this.clientId = params['id2'];\r\n if (this.adminUserId != '' && this.clientId != null) {\r\n this.AddNewUserForAdmin(this.adminUserId, this.clientId);\r\n }\r\n else {\r\n this.router.navigate(['/Login']);\r\n }\r\n }\r\n }\r\n else {\r\n this.router.navigate(['/Login']);\r\n }\r\n });\r\n }\r\n\r\n AddNewUserForAdmin(adminUserId: any, clientId: any) {\r\n this.adminByPassService.AddNewUserForAdmin(adminUserId, clientId).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") { \r\n let newId = data[\"newId\"];\r\n this.tokenKey = data['token'];\r\n\r\n if (newId > 0) {\r\n this.CheckLogin(newId);\r\n }\r\n else {\r\n this.showMessage(\"You don't have access to any Tool. Please contact administrator.\", 'Error', 'error');\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n },\r\n errorCode => {\r\n this.showMessage(errorCode, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n CheckLogin(newId: any) {\r\n this.adminByPassService.GetAdminByPassUserLoginData(this.tokenKey, newId).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.userModel = data[\"usersModel\"];\r\n if (this.userModel != null) {\r\n if (data[\"usersModel\"].listOfProducts.length > 0) {\r\n sessionStorage.setItem('UserId', this.userModel.userId);\r\n sessionStorage.setItem('LastLogin', this.userModel.lastLogin);\r\n sessionStorage.setItem('isUserByPass', 'Login');\r\n let FirstLastName = this.userModel.firstName + ' ' + this.userModel.lastName;\r\n if (FirstLastName.trim() != '')\r\n sessionStorage.setItem('FirstLastName', FirstLastName);\r\n else\r\n sessionStorage.setItem('FirstLastName', this.userModel.userName);\r\n\r\n let Tool: string = data[\"usersModel\"].listOfProducts[0].productName.toLowerCase();\r\n sessionStorage.setItem('ClientLoginTool', Tool);\r\n let UserAccessibleTools: string = ''\r\n\r\n for (let iCounter = 0; iCounter < data[\"usersModel\"].listOfProducts.length; iCounter++) {\r\n UserAccessibleTools += data[\"usersModel\"].listOfProducts[iCounter].productName + ',';\r\n }\r\n const clientAccessibleTools = UserAccessibleTools.substring(0, UserAccessibleTools.length - 1).toLowerCase();\r\n sessionStorage.setItem('ClientAccessibleTools', clientAccessibleTools);\r\n sessionStorage.setItem('CompanyId', this.userModel.companyId);\r\n sessionStorage.setItem('IsICalSubscription', this.userModel.isICalSubscription);\r\n sessionStorage.setItem('EncyUserId', this.userModel.encyUserId);\r\n sessionStorage.setItem('CompanyName', this.userModel.companyName);\r\n //this.router.navigate(['Home']);\r\n //this.router.navigate([Tool + '/Home']); \r\n if (Tool == 'actionitem') {\r\n this.router.navigate(['trac-it/Dashboard']);\r\n }\r\n else if (Tool == 'wireless' || Tool == 'voip') {\r\n this.router.navigate([Tool + '/Matrix']);\r\n }\r\n else if (Tool == 'ipr' || Tool == 'rmd') {\r\n this.router.navigate([Tool + '/Providers']);\r\n }\r\n else this.router.navigate(['Home']); \r\n }\r\n else {\r\n this.showMessage(\"You don't have access to any Tool. Please contact administrator.\", 'Error', 'error');\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n },\r\n errorCode => {\r\n this.showMessage(errorCode, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L2J5LXBhc3MtbG9naW4vYnktcGFzcy1sb2dpbi5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router, Params } from '@angular/router';\r\nimport { BypassService } from 'src/Services/bypass.service';\r\nimport { userModel } from 'src/Models/usersModel';\r\nimport { AppConfig } from '../../../Services/app.config';\r\n\r\n@Component({\r\n selector: 'app-by-pass-login',\r\n templateUrl: './by-pass-login.component.html',\r\n styleUrls: ['./by-pass-login.component.css']\r\n})\r\nexport class ByPassLoginComponent implements OnInit {\r\n userModel = new userModel();\r\n userName: string = '';\r\n hashKey: string = '';\r\n appModel: any;\r\n isUserFound: boolean = false;\r\n errorMsg: string = '';\r\n productName: string = '';\r\n\r\n constructor(private byPassService: BypassService, private activedRoute: ActivatedRoute, private router: Router) {\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n sessionStorage.setItem('BaseURL', this.appModel.BaseURL);\r\n }\r\n\r\n ngOnInit() {\r\n if (sessionStorage.getItem('Username') != '' && sessionStorage.getItem('Hash') != '') {\r\n this.userName = sessionStorage.getItem('Username');\r\n this.hashKey = sessionStorage.getItem('Hash');\r\n this.productName = sessionStorage.getItem('Productname');\r\n if (this.userName != '' && this.hashKey != '' && this.productName)\r\n this.checkByPassAuthentication();\r\n }\r\n else\r\n this.router.navigate(['/login']);\r\n\r\n // this.activedRoute.params.subscribe((params: Params) => {\r\n // // if (params['username']) {\r\n // // if (params['username'] != null && params['haskey']) {\r\n // // this.userName = params['username'];\r\n // // this.hashKey = params['haskey'];\r\n // // if (this.userName != '' && this.hashKey != '')\r\n // // this.checkByPassAuthentication();\r\n // // }\r\n // // }\r\n // });\r\n }\r\n\r\n checkByPassAuthentication() {\r\n this.byPassService.checkByPassAuthentication(this.userName, this.hashKey).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.userModel = data[\"user\"];\r\n this.isUserFound = true;\r\n if (this.userModel != null) {\r\n sessionStorage.setItem('tokenValue', this.userModel.token);\r\n sessionStorage.setItem('UserId', this.userModel.userId);\r\n sessionStorage.setItem('LastLogin', this.userModel.lastLogin);\r\n sessionStorage.setItem('isUserByPass', 'AutoLogin');\r\n let FirstLastName = this.userModel.firstName + ' ' + this.userModel.lastName;\r\n if (FirstLastName.trim() != '')\r\n sessionStorage.setItem('FirstLastName', FirstLastName);\r\n else\r\n sessionStorage.setItem('FirstLastName', this.userModel.userName);\r\n\r\n let UserAccessibleTools: string = ''\r\n let Tool: string = '';\r\n for (let iCounter = 0; iCounter < data[\"user\"].listOfProducts.length; iCounter++) {\r\n UserAccessibleTools += data[\"user\"].listOfProducts[iCounter].productName + ',';\r\n }\r\n if ((this.productName && UserAccessibleTools.toLowerCase().indexOf(this.productName.toLowerCase()) >= 0) || this.productName == 'i360') {\r\n Tool = this.productName.toLowerCase();\r\n }\r\n else {\r\n Tool = data[\"user\"].listOfProducts[0].productName.toLowerCase();\r\n }\r\n\r\n if (this.productName != 'i360')\r\n sessionStorage.setItem('ClientLoginTool', Tool);\r\n\r\n sessionStorage.setItem('ClientAccessibleTools', UserAccessibleTools.substring(0, UserAccessibleTools.length - 1).toLowerCase());\r\n\r\n sessionStorage.setItem('CompanyId', this.userModel.companyId);\r\n sessionStorage.setItem('IsICalSubscription', this.userModel.isICalSubscription);\r\n sessionStorage.setItem('EncyUserId', this.userModel.encyUserId);\r\n sessionStorage.setItem('CompanyName', this.userModel.companyName);\r\n \r\n let redirectToProduct = Tool == 'actionitem' ? 'trac-it' : Tool;\r\n if (Tool != this.productName.toLowerCase() && this.productName != '' && this.productName != 'i360') {\r\n sessionStorage.setItem('ClientAccessDeniedTool', this.productName);\r\n this.router.navigate([redirectToProduct + '/access-denied']);\r\n }\r\n else {\r\n if (redirectToProduct == 'trac-it') {\r\n this.router.navigate([redirectToProduct + '/Dashboard']);\r\n }\r\n else if (this.productName == 'i360') {\r\n this.router.navigate(['Home']);\r\n }\r\n else if (this.productName == 'Wireless' || this.productName == 'VoIP' || this.productName == 'IPCS') {\r\n this.router.navigate([redirectToProduct + '/Matrix']);\r\n }\r\n else if (this.productName == 'IPR' || this.productName == 'RMD') {\r\n this.router.navigate([redirectToProduct + '/Providers']);\r\n }\r\n else\r\n this.router.navigate(['Home']);\r\n }\r\n\r\n }\r\n }\r\n else {\r\n sessionStorage.removeItem('Hash');\r\n this.errorMsg = data['status'];\r\n this.isUserFound = false;\r\n sessionStorage.setItem('byPassError', data['status']);\r\n this.router.navigate(['/login']);\r\n }\r\n },\r\n error => {\r\n }\r\n );\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L2NsaWVudC1sb2dpbi9jbGllbnQtbG9naW4uY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute, Params } from '@angular/router';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { UsersService } from '../../../Services/users.service';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { userModel } from '../../../Models/usersModel';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-client-login',\r\n templateUrl: './client-login.component.html',\r\n styleUrls: ['./client-login.component.css']\r\n})\r\nexport class ClientLoginComponent implements OnInit {\r\n userModel = new userModel();\r\n appModel: any;\r\n tokenKey: string = '';\r\n loginForm: FormGroup;\r\n\r\n constructor(private titleService: Title, private toastr: ToastrService, private _fb: FormBuilder, private UserService: UsersService, private checkAuth: CheckAuth, private router: Router\r\n , private activedRoute: ActivatedRoute) {\r\n sessionStorage.removeItem('tokenValue');\r\n sessionStorage.removeItem('appStartTime');\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n sessionStorage.removeItem('isAdminOpen');\r\n sessionStorage.removeItem('AdminUserId');\r\n sessionStorage.removeItem('StateSetupManageRedirection');\r\n this.titleService.setTitle('Client Login');\r\n }\r\n\r\n ngOnInit() {\r\n if (sessionStorage.getItem('byPassError') != null && sessionStorage.getItem('byPassError') != '') {\r\n let byPassError = sessionStorage.getItem('byPassError');\r\n sessionStorage.removeItem('byPassError');\r\n this.showMessage(byPassError, 'Error', 'error');\r\n }\r\n let queryParams = this.activedRoute.snapshot.queryParams['data'];\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.loginForm = this._fb.group({\r\n userid: 0,\r\n username: ['', [Validators.required]],\r\n password: ['', [Validators.required]]\r\n })\r\n\r\n // if (sessionStorage.getItem('Username') != '' && sessionStorage.getItem('Username') != 'null'\r\n // && sessionStorage.getItem('Hash') != '' && sessionStorage.getItem('Hash') != 'null') {\r\n // this.CheckLoginbyusernamewithhash();\r\n // }\r\n }\r\n\r\n CheckLogin() {\r\n\r\n if (this.loginForm.value[\"username\"] == \"\") {\r\n this.showMessage('Please enter username', 'Error', 'error');\r\n return;\r\n }\r\n if (this.loginForm.value[\"password\"] == \"\") {\r\n this.showMessage('Please enter password', 'Error', 'error');\r\n return;\r\n }\r\n if (!this.loginForm.valid) {\r\n return;\r\n }\r\n\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.UserService.checkUserLogin(this.tokenKey, this.loginForm.value.username, this.loginForm.value.password).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.userModel = data[\"usersModel\"];\r\n if (this.userModel != null) {\r\n if (data[\"usersModel\"].listOfProducts.length > 0) {\r\n sessionStorage.setItem('UserId', this.userModel.userId);\r\n sessionStorage.setItem('LastLogin', this.userModel.lastLogin);\r\n sessionStorage.setItem('isUserByPass', 'Login');\r\n let FirstLastName = this.userModel.firstName + ' ' + this.userModel.lastName;\r\n if (FirstLastName.trim() != '')\r\n sessionStorage.setItem('FirstLastName', FirstLastName);\r\n else\r\n sessionStorage.setItem('FirstLastName', this.userModel.userName);\r\n\r\n let Tool: string = data[\"usersModel\"].listOfProducts[0].productName.toLowerCase();\r\n if (sessionStorage.getItem('ClientLoginTool') != null) {\r\n Tool=sessionStorage.getItem('ClientLoginTool');\r\n }\r\n else{\r\n sessionStorage.setItem('ClientLoginTool', Tool);}\r\n\r\n \r\n\r\n let UserAccessibleTools: string = ''\r\n\r\n for (let iCounter = 0; iCounter < data[\"usersModel\"].listOfProducts.length; iCounter++) {\r\n UserAccessibleTools += data[\"usersModel\"].listOfProducts[iCounter].productName + ',';\r\n }\r\n const clientAccessibleTools = UserAccessibleTools.substring(0, UserAccessibleTools.length - 1).toLowerCase();\r\n sessionStorage.setItem('ClientAccessibleTools', clientAccessibleTools);\r\n sessionStorage.setItem('CompanyId', this.userModel.companyId);\r\n sessionStorage.setItem('IsICalSubscription', this.userModel.isICalSubscription);\r\n sessionStorage.setItem('EncyUserId', this.userModel.encyUserId);\r\n sessionStorage.setItem('CompanyName', this.userModel.companyName);\r\n //this.router.navigate(['Home']);\r\n //this.router.navigate([Tool + '/Home']); \r\n //this.router.navigate(['Home']);\r\n debugger;\r\n if (Tool == 'actionitem') {\r\n this.router.navigate(['trac-it/Dashboard']);\r\n }\r\n else if (Tool == 'wireless' || Tool == 'voip') {\r\n // this.router.navigate([Tool + '/Matrix']);\r\n this.router.navigate([Tool + '/Update']);\r\n }\r\n else if (Tool == 'ipr' || Tool == 'rmd') {\r\n this.router.navigate([Tool + '/Providers']);\r\n }\r\n else this.router.navigate(['Home']); \r\n }\r\n else {\r\n this.showMessage(\"You don't have access to any Tool. Please contact administrator.\", 'Error', 'error');\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n\r\n\r\n\r\n },\r\n errorCode => {\r\n this.showMessage(errorCode, 'Error', 'error');\r\n }\r\n );\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n CheckLoginbyusernamewithhash() {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.UserService.checkUserbyusernamewithhash(this.tokenKey,\r\n sessionStorage.getItem('Username'), sessionStorage.getItem('Hash')).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.userModel = data[\"usersModel\"];\r\n if (this.userModel != null) {\r\n sessionStorage.setItem('UserId', this.userModel.userId);\r\n sessionStorage.setItem('LastLogin', this.userModel.lastLogin);\r\n this.router.navigate(['Home']);\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n },\r\n errorCode => {\r\n this.showMessage(errorCode, 'Error', 'error');\r\n }\r\n );\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L2VtYWlsLWxvZ2luL2VtYWlsLWxvZ2luLmNvbXBvbmVudC5jc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { ActivatedRoute, Router, Params } from '@angular/router';\r\nimport { EmailLoginService } from '../../../Services/emaillogin.service';\r\nimport { filterModel } from '../../../Models/filterModel';\r\nimport { userModel } from 'src/Models/usersModel';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ToolEnum } from '../../../Models/Common';\r\nimport { updatesPageModel } from '../../../Models/updatesPageModel';\r\nimport { updatesService } from '../../../Services/updatesService';\r\nimport { iprupdatesService } from '../../../Services/iprupdatesService';\r\nimport { RmdupdatesService } from 'src/Services/rmdupdates.service';\r\n\r\n@Component({\r\n selector: 'app-email-login',\r\n templateUrl: './email-login.component.html',\r\n styleUrls: ['./email-login.component.css']\r\n})\r\nexport class EmailLoginComponent implements OnInit {\r\n appModel: any;\r\n tokenKey: string = '';\r\n emailKey: string = '';\r\n filterModel = new filterModel();\r\n userModel = new userModel();\r\n\r\n unread: number = 0;\r\n parameterModel = new updatesPageModel();\r\n productId: number = 0;\r\n\r\n isShowprogressSpinner: boolean = true;\r\n blockedDocument: boolean = true;\r\n isDataProcess: boolean = false;\r\n\r\n constructor(private updatesService: updatesService,\r\n private toastr: ToastrService,\r\n private emailLoginService: EmailLoginService,\r\n private activedRoute: ActivatedRoute,\r\n private router: Router,\r\n private iprupdatesService: iprupdatesService,\r\n private rmdupdatesService: RmdupdatesService\r\n ) {\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n sessionStorage.setItem('BaseURL', this.appModel.BaseURL);\r\n }\r\n\r\n ngOnInit() {\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n\r\n if (params['id']) {\r\n\r\n if (params['id'] != null) {\r\n this.emailKey = params['id'];\r\n if (this.emailKey != '' && this.emailKey != null) {\r\n this.filterModel.emailKey = this.emailKey;\r\n this.DecryptEmailKey(this.filterModel);\r\n }\r\n else {\r\n this.router.navigate(['/Login']);\r\n }\r\n }\r\n }\r\n else {\r\n this.router.navigate(['/Login']);\r\n }\r\n });\r\n }\r\n\r\n DecryptEmailKey(model) {\r\n this.blockDocument();\r\n\r\n this.isDataProcess = true;\r\n this.emailLoginService.DecryptEmailKey(model).subscribe(\r\n data => {\r\n\r\n if (data[\"status\"] == \"Success\") {\r\n this.userModel = data[\"usersModel\"];\r\n if (this.userModel != null) {\r\n if (data[\"usersModel\"].listOfProducts.length > 0) {\r\n sessionStorage.setItem('UserId', this.userModel.userId);\r\n sessionStorage.setItem('LastLogin', this.userModel.lastLogin);\r\n sessionStorage.setItem('isUserByPass', 'Login');\r\n let FirstLastName = this.userModel.firstName + ' ' + this.userModel.lastName;\r\n if (FirstLastName.trim() != '')\r\n sessionStorage.setItem('FirstLastName', FirstLastName);\r\n else\r\n sessionStorage.setItem('FirstLastName', this.userModel.userName);\r\n\r\n let Tool: string = data[\"usersModel\"].listOfProducts[0].productName.toLowerCase();\r\n //sessionStorage.setItem('ClientLoginTool', Tool);\r\n let UserAccessibleTools: string = ''\r\n\r\n for (let iCounter = 0; iCounter < data[\"usersModel\"].listOfProducts.length; iCounter++) {\r\n UserAccessibleTools += data[\"usersModel\"].listOfProducts[iCounter].productName + ',';\r\n }\r\n sessionStorage.setItem('ClientAccessibleTools', UserAccessibleTools.substring(0, UserAccessibleTools.length - 1).toLowerCase());\r\n sessionStorage.setItem('CompanyId', this.userModel.companyId);\r\n sessionStorage.setItem('IsICalSubscription', this.userModel.isICalSubscription);\r\n sessionStorage.setItem('EncyUserId', this.userModel.encyUserId);\r\n sessionStorage.setItem('CompanyName', this.userModel.companyName);\r\n if (data['productId'] === ToolEnum.voip) {\r\n this.productId = data['productId'];\r\n sessionStorage.setItem('ClientLoginTool', 'voip');\r\n this.GetUpdates(false);\r\n }\r\n else if (data['productId'] === ToolEnum.wireless) {\r\n sessionStorage.setItem('ClientLoginTool', 'wireless');\r\n this.productId = data['productId'];\r\n this.GetUpdates(false);\r\n }\r\n else if (data['productId'] === ToolEnum.ipcs) {\r\n sessionStorage.setItem('ClientLoginTool', 'ipcs');\r\n this.productId = data['productId'];\r\n this.GetIPCSUpdates(false);\r\n }\r\n else if (data['productId'] === ToolEnum.actionitem) {\r\n sessionStorage.setItem('ClientLoginTool', 'actionitem');\r\n sessionStorage.setItem('emailProductId', data['productId']);\r\n sessionStorage.setItem('emailActionId', data['actionId']);\r\n sessionStorage.setItem('emailUpdatedId', data['updateId']);\r\n sessionStorage.setItem('emailBriefingId', data['briefingId']);\r\n sessionStorage.setItem('emailUserId', this.userModel.userId);\r\n if (data['actionId'] != 0)\r\n sessionStorage.setItem('emailDeadlineDate', this.userModel.deadlineDateFromAction);\r\n else if (data['updateId'] != 0)\r\n sessionStorage.setItem('emailDeadlineDate', this.userModel.deadlineDateFromUpdate);\r\n else if (data['briefingId'] != 0)\r\n sessionStorage.setItem('emailDeadlineDate', this.userModel.deadlineDateFromBriefing);\r\n else\r\n sessionStorage.setItem('emailDeadlineDate', '');\r\n this.router.navigate(['/trac-it/Calendar']);\r\n }\r\n else if (data['productId'] === ToolEnum.generalalert) {\r\n this.router.navigate(['/Home']);\r\n }\r\n else if (data['productId'] === ToolEnum.ipr) {\r\n this.productId = data['productId'];\r\n sessionStorage.setItem('ClientLoginTool', 'ipr');\r\n this.GetIPRNotification(false);\r\n }\r\n else if (data['productId'] === 21) {\r\n this.productId = data['productId'];\r\n sessionStorage.setItem('ClientLoginTool', 'rmd');\r\n this.GetRMDNotification(false)\r\n }\r\n else {\r\n this.router.navigate(['/login']);\r\n }\r\n }\r\n else {\r\n this.showMessage(\"You don't have access to any Tool. Please contact administrator.\", 'Error', 'error');\r\n this.router.navigate(['/login']);\r\n }\r\n }\r\n }\r\n else if (data[\"status\"] == \"Email Token/Key Expired\") {\r\n this.userModel = data[\"usersModel\"];\r\n if (this.userModel != null) {\r\n if (data[\"usersModel\"].listOfProducts.length > 0) {\r\n sessionStorage.setItem('UserId', this.userModel.userId);\r\n sessionStorage.setItem('LastLogin', this.userModel.lastLogin);\r\n sessionStorage.setItem('isUserByPass', 'Login');\r\n let FirstLastName = this.userModel.firstName + ' ' + this.userModel.lastName;\r\n if (FirstLastName.trim() != '')\r\n sessionStorage.setItem('FirstLastName', FirstLastName);\r\n else\r\n sessionStorage.setItem('FirstLastName', this.userModel.userName);\r\n\r\n let Tool: string = data[\"usersModel\"].listOfProducts[0].productName.toLowerCase();\r\n //sessionStorage.setItem('ClientLoginTool', Tool);\r\n let UserAccessibleTools: string = ''\r\n\r\n for (let iCounter = 0; iCounter < data[\"usersModel\"].listOfProducts.length; iCounter++) {\r\n UserAccessibleTools += data[\"usersModel\"].listOfProducts[iCounter].productName + ',';\r\n }\r\n sessionStorage.setItem('ClientAccessibleTools', UserAccessibleTools.substring(0, UserAccessibleTools.length - 1).toLowerCase());\r\n sessionStorage.setItem('CompanyId', this.userModel.companyId);\r\n sessionStorage.setItem('IsICalSubscription', this.userModel.isICalSubscription);\r\n sessionStorage.setItem('EncyUserId', this.userModel.encyUserId);\r\n sessionStorage.setItem('CompanyName', this.userModel.companyName);\r\n if (data['productId'] === ToolEnum.actionitem) {\r\n sessionStorage.setItem('ClientLoginTool', 'actionitem');\r\n sessionStorage.setItem('emailUserId', this.userModel.userId);\r\n sessionStorage.setItem('displayMessage', data[\"status\"]);\r\n this.router.navigate(['/trac-it/Dashboard']);\r\n }\r\n else if (data['productId'] === ToolEnum.wireless) {\r\n sessionStorage.setItem('ClientLoginTool', 'wireless');\r\n sessionStorage.setItem('emailUserId', this.userModel.userId);\r\n sessionStorage.setItem('DisplayMessage', data[\"status\"]);\r\n this.router.navigate(['/wireless/Update']);\r\n }\r\n else if (data['productId'] === ToolEnum.voip) {\r\n sessionStorage.setItem('ClientLoginTool', 'voip');\r\n sessionStorage.setItem('emailUserId', this.userModel.userId);\r\n sessionStorage.setItem('DisplayMessage', data[\"status\"]);\r\n this.router.navigate(['/voip/Update']);\r\n }\r\n else if (data['productId'] === ToolEnum.ipcs) {\r\n sessionStorage.setItem('ClientLoginTool', 'ipcs');\r\n sessionStorage.setItem('emailUserId', this.userModel.userId);\r\n sessionStorage.setItem('DisplayMessage', data[\"status\"]);\r\n this.router.navigate(['/ipcs/Update']);\r\n }\r\n else if (data['productId'] === ToolEnum.ipr) {\r\n sessionStorage.setItem('ClientLoginTool', 'ipr');\r\n sessionStorage.setItem('emailUserId', this.userModel.userId);\r\n sessionStorage.setItem('DisplayMessage', data[\"status\"]);\r\n this.router.navigate(['/ipr/Updates']);\r\n }\r\n else if (data['productId'] === ToolEnum.actualrmd) {\r\n sessionStorage.setItem('ClientLoginTool', 'rmd');\r\n sessionStorage.setItem('emailUserId', this.userModel.userId);\r\n sessionStorage.setItem('DisplayMessage', data[\"status\"]);\r\n this.router.navigate(['/rmd/Updates']);\r\n }\r\n else {\r\n this.router.navigate(['/login']);\r\n }\r\n }\r\n else {\r\n this.showMessage(\"You don't have access to any Tool. Please contact administrator.\", 'Error', 'error');\r\n this.router.navigate(['/login']);\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"status\"] + ' - user not have access', 'Error', 'error');\r\n this.router.navigate(['/login']);\r\n }\r\n this.unblockDocument();\r\n },\r\n );\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n GetUpdates(onlynotification): void {\r\n //this.timesRun = 0;\r\n\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.parameterModel.pageIndex = '1';\r\n this.parameterModel.pageSize = '10000';\r\n this.parameterModel.orderBy = \"UpdateDate desc\";\r\n this.parameterModel.keywordFilter = 'null';\r\n this.parameterModel.whereCondition = 'null';\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.parameterModel.userID = sessionStorage.getItem('UserId');\r\n this.parameterModel.unreadonly = \"1\";\r\n this.parameterModel.productId = this.productId.toString();\r\n this.unread = 0;\r\n this.updatesService.getupdatesfindByUserIDByCount(this.tokenKey, this.parameterModel).subscribe(\r\n data => {\r\n //this.timesRun = 0;\r\n\r\n if (data[\"status\"] == \"Success\") {\r\n this.unread = data[\"updates\"];\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n if (!onlynotification) {\r\n let ClientSelectedTool = '';\r\n if (this.productId === ToolEnum.wireless) {\r\n ClientSelectedTool = 'wireless';\r\n }\r\n else if (this.productId === ToolEnum.voip) {\r\n ClientSelectedTool = 'voip';\r\n }\r\n else if (this.productId === ToolEnum.ipcs) {\r\n ClientSelectedTool = 'ipcs';\r\n }\r\n if (this.unread > 0) {\r\n this.router.navigate(['/' + ClientSelectedTool + '/Update'], { queryParams: { data: 'unread' } });\r\n }\r\n else {\r\n this.router.navigate(['/' + ClientSelectedTool + '/Update'], { queryParams: { data: 'all' } });\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.unread = 0;\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n this.router.navigate(['/login']);\r\n },\r\n );\r\n }\r\n\r\n GetIPCSUpdates(onlynotification): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.parameterModel.pageIndex = '1';\r\n this.parameterModel.pageSize = '10000';\r\n this.parameterModel.orderBy = \"UpdateDate desc\";\r\n this.parameterModel.keywordFilter = 'null';\r\n this.parameterModel.whereCondition = 'null';\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.parameterModel.userID = sessionStorage.getItem('UserId');\r\n this.parameterModel.unreadonly = \"1\";\r\n this.unread = 0;\r\n this.updatesService.GetIPCSupdatesfindByUserIDByCount(this.tokenKey, this.parameterModel).subscribe(\r\n data => {\r\n if (data[\"status\"] == \"Success\") {\r\n this.unread = data[\"updates\"];\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n if (!onlynotification) {\r\n let ClientSelectedTool = '';\r\n \r\n ClientSelectedTool = 'ipcs';\r\n\r\n if (this.unread > 0) {\r\n this.router.navigate(['/' + ClientSelectedTool + '/Update'], { queryParams: { data: 'unread' } });\r\n }\r\n else {\r\n this.router.navigate(['/' + ClientSelectedTool + '/Update'], { queryParams: { data: 'all' } });\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.unread = 0;\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n this.router.navigate(['/login']);\r\n },\r\n );\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n GetIPRNotification(onlynotification): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n let userID = +sessionStorage.getItem('UserId');\r\n this.iprupdatesService.GetIPRUpdatesUnread(this.tokenKey, userID).subscribe(\r\n data => {\r\n let timesRun = 0;\r\n if (data[\"status\"] == \"Success\") {\r\n let iprUnread = data[\"updates\"].length;\r\n if (!onlynotification) {\r\n let ClientSelectedTool = 'ipr';\r\n if (iprUnread > 0) {\r\n this.router.navigate(['/' + ClientSelectedTool + '/Updates'], { queryParams: { data: 'unread' } });\r\n }\r\n else {\r\n this.router.navigate(['/' + ClientSelectedTool + '/Updates'], { queryParams: { data: 'all' } });\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.unread = 0;\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n },\r\n );\r\n }\r\n\r\n GetRMDNotification(onlynotification): void {\r\n let ClientSelectedTool = 'rmd'\r\n if (!onlynotification) {\r\n this.router.navigate(['/' + ClientSelectedTool + '/Updates']);\r\n }\r\n else {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n const userId = +sessionStorage.getItem('UserId');\r\n this.rmdupdatesService.GetRMDUpdatesUnreadCount(this.tokenKey, userId).subscribe(\r\n data => {\r\n let timesRun = 0;\r\n if (data[\"status\"] == \"Success\") {\r\n //this.rmdUnread = data[\"unreadCount\"];\r\n }\r\n },\r\n error => {\r\n this.unread = 0;\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n },\r\n );\r\n }\r\n\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L2Zyb250LWxhbmRpbmctcGFnZS9mcm9udC1sYW5kaW5nLXBhZ2UuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { LandingPageModel } from 'src/Models/landingPageModel';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\n\r\n@Component({\r\n selector: 'app-front-landing-page',\r\n templateUrl: './front-landing-page.component.html',\r\n styleUrls: ['./front-landing-page.component.css']\r\n})\r\nexport class FrontLandingPageComponent implements OnInit {\r\n tokenKey: string = ''; \r\n\r\n title: string = '';\r\n description: string = '';\r\n\r\n constructor(private actionItemService: ActionItemService, private checkAuth: CheckAuth) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue'); \r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.GetLandingPageDetails();\r\n }\r\n\r\n GetLandingPageDetails() {\r\n this.actionItemService.GetLandingPageDetails(this.tokenKey).subscribe(data => {\r\n if (data['status'] !== 'Failure') {\r\n this.description = data.result.description;\r\n this.title = data.result.title\r\n }\r\n });\r\n\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L2hvbWUvaG9tZS5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.css']\r\n})\r\nexport class HomeComponent implements OnInit {\r\n\r\n years: any = Date.now();\r\n lastLogin: string = '';\r\n name: string = '';\r\n ClientSelectedTool: string;\r\n constructor(private titleService: Title) {\r\n this.lastLogin = sessionStorage.getItem('LastLogin'); \r\n this.name = sessionStorage.getItem('FirstLastName');\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.titleService.setTitle('Home');\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \".lbl, .lbl:hover {\\r\\n pointer-events: none;\\r\\n cursor: default;\\r\\n color: #78868d;\\r\\n}\\r\\n\\r\\n.overflow2 {\\r\\n max-height:500px;\\r\\n}\\r\\n\\r\\n.downloadIcon\\r\\n {\\r\\n margin-bottom: -35px;\\r\\n }\\r\\n\\r\\n/*===============keep screen 1260=============*/\\r\\n\\r\\n@media screen and (max-width: 1359px) \\r\\n{\\r\\n .overflow2 {\\r\\n max-height:320px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*===============keep screen 1260=============*/\\r\\n\\r\\n@media screen and (max-width: 1280px) \\r\\n{\\r\\n .overflow2 {\\r\\n max-height:384px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*===============keep screen 1024=============*/\\r\\n\\r\\n@media screen and (max-width: 1159px) \\r\\n{\\r\\n .overflow2 {\\r\\n max-height:465px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*===============keep screen 768=============*/\\r\\n\\r\\n@media screen and (max-width: 999px) \\r\\n{ \\r\\n .overflow2 {\\r\\n max-height:540px;\\r\\n }\\r\\n .downloadIcon\\r\\n {\\r\\n margin-bottom: -10px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*===============keep screen 480=============*/\\r\\n\\r\\n@media screen and (max-width: 767px) \\r\\n{\\r\\n .overflow2 {\\r\\n max-height:350px;\\r\\n }\\r\\n .downloadIcon\\r\\n {\\r\\n margin-bottom: -10px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*===============keep screen 320=============*/\\r\\n\\r\\n@media screen and (max-width: 479px) \\r\\n{\\r\\n .overflow2 {\\r\\n max-height:350px;\\r\\n }\\r\\n}\\r\\n\\r\\n.modal-title{\\r\\n color:#fff !important;\\r\\n font-size:16px !important;\\r\\n font-style:normal !important;\\r\\n margin:0;\\r\\n line-height: 1.42857143 !important;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvbWF0cml4L21hdHJpeC5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksb0JBQW9CO0lBQ3BCLGVBQWU7SUFDZixjQUFjO0FBQ2xCOztBQUVBO0lBQ0ksZ0JBQWdCO0FBQ3BCOztBQUVBOztJQUVJLG9CQUFvQjtFQUN0Qjs7QUFHRiwrQ0FBK0M7O0FBQy9DOztJQUVJO1FBQ0ksZ0JBQWdCO0lBQ3BCO0FBQ0o7O0FBRUEsK0NBQStDOztBQUMvQzs7SUFFSTtRQUNJLGdCQUFnQjtJQUNwQjtBQUNKOztBQUVBLCtDQUErQzs7QUFDL0M7O0lBRUk7UUFDSSxnQkFBZ0I7SUFDcEI7QUFDSjs7QUFFQSw4Q0FBOEM7O0FBQzlDOztJQUVJO1FBQ0ksZ0JBQWdCO0lBQ3BCO0lBQ0E7O01BRUUsb0JBQW9CO0lBQ3RCO0FBQ0o7O0FBRUEsOENBQThDOztBQUM5Qzs7SUFFSTtRQUNJLGdCQUFnQjtJQUNwQjtJQUNBOztNQUVFLG9CQUFvQjtJQUN0QjtBQUNKOztBQUdBLDhDQUE4Qzs7QUFDOUM7O0lBRUk7UUFDSSxnQkFBZ0I7SUFDcEI7QUFDSjs7QUFDQTtJQUNJLHFCQUFxQjtJQUNyQix5QkFBeUI7SUFDekIsNEJBQTRCO0lBQzVCLFFBQVE7SUFDUixrQ0FBa0M7QUFDdEMiLCJmaWxlIjoic3JjL2FwcC9Gcm9udC9tYXRyaXgvbWF0cml4LmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubGJsLCAubGJsOmhvdmVyIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgY29sb3I6ICM3ODg2OGQ7XHJcbn1cclxuXHJcbi5vdmVyZmxvdzIge1xyXG4gICAgbWF4LWhlaWdodDo1MDBweDtcclxufVxyXG5cclxuLmRvd25sb2FkSWNvblxyXG4gIHtcclxuICAgIG1hcmdpbi1ib3R0b206IC0zNXB4O1xyXG4gIH1cclxuXHJcblxyXG4vKj09PT09PT09PT09PT09PWtlZXAgc2NyZWVuIDEyNjA9PT09PT09PT09PT09Ki9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM1OXB4KSBcclxue1xyXG4gICAgLm92ZXJmbG93MiB7XHJcbiAgICAgICAgbWF4LWhlaWdodDozMjBweDtcclxuICAgIH1cclxufVxyXG5cclxuLyo9PT09PT09PT09PT09PT1rZWVwIHNjcmVlbiAxMjYwPT09PT09PT09PT09PSovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyODBweCkgXHJcbntcclxuICAgIC5vdmVyZmxvdzIge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6Mzg0cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qPT09PT09PT09PT09PT09a2VlcCBzY3JlZW4gMTAyND09PT09PT09PT09PT0qL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTU5cHgpIFxyXG57XHJcbiAgICAub3ZlcmZsb3cyIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OjQ2NXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKj09PT09PT09PT09PT09PWtlZXAgc2NyZWVuIDc2OD09PT09PT09PT09PT0qL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgXHJcbnsgICBcclxuICAgIC5vdmVyZmxvdzIge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6NTQwcHg7XHJcbiAgICB9XHJcbiAgICAuZG93bmxvYWRJY29uXHJcbiAgICB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKj09PT09PT09PT09PT09PWtlZXAgc2NyZWVuIDQ4MD09PT09PT09PT09PT0qL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgXHJcbntcclxuICAgIC5vdmVyZmxvdzIge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6MzUwcHg7XHJcbiAgICB9XHJcbiAgICAuZG93bmxvYWRJY29uXHJcbiAgICB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xyXG4gICAgfVxyXG59IFxyXG5cclxuXHJcbi8qPT09PT09PT09PT09PT09a2VlcCBzY3JlZW4gMzIwPT09PT09PT09PT09PSovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSBcclxue1xyXG4gICAgLm92ZXJmbG93MiB7XHJcbiAgICAgICAgbWF4LWhlaWdodDozNTBweDtcclxuICAgIH1cclxufVxyXG4ubW9kYWwtdGl0bGV7XHJcbiAgICBjb2xvcjojZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXNpemU6MTZweCAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1zdHlsZTpub3JtYWwgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDMgIWltcG9ydGFudDtcclxufSJdfQ== */\"","import { Component, OnInit, Inject, ViewChild, ElementRef } from '@angular/core';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { Router } from '@angular/router';\r\nimport { matrixPropery } from 'src/Models/matrixProperty';\r\nimport { stateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { MetrixTableModel } from 'src/Models/MetrixTableModel';\r\nimport { updatesModel } from '../../../Models/updatesModel';\r\nimport { updatesPageModel } from '../../../Models/updatesPageModel';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { updatesService } from '../../../Services/updatesService';\r\nimport { ToastrService } from 'ngx-toastr';\r\n// import * as jspdf from 'jspdf';\r\n// import * as html2canvas from 'html2canvas';\r\nimport { htmlToPdf } from 'src/Services/htmlToPdf';\r\nimport * as FileSaver from 'file-saver';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { SiteLayoutComponent } from '../../Layout/site-layout/site-layout.component';\r\nimport { UsersService } from 'src/Services/users.service';\r\nimport { OrderPipe } from 'ngx-order-pipe';\r\nimport { ActionActivity, ToolEnum } from '../../../Models/Common';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\n\r\n\r\n@Component({\r\n selector: 'app-matrix',\r\n templateUrl: './matrix.component.html',\r\n styleUrls: ['./matrix.component.css']\r\n})\r\nexport class MatrixComponent implements OnInit {\r\n isSidePanelActive: boolean = true;\r\n tokenKey: string = '';\r\n listOfStateId: string = '';\r\n listOfData: any[];\r\n statusCode: any;\r\n loginUser: any;\r\n\r\n columnName: matrixPropery[];\r\n columnData: any[];\r\n\r\n listOfState: stateMasterModel[];\r\n\r\n isRecordFound: boolean = false;\r\n\r\n listOfID: any[];\r\n\r\n isShowprogressSpinner: boolean = true;\r\n blockedDocument: boolean = true;\r\n\r\n isAscending: boolean = false;\r\n upDowCSS: string = '';\r\n colIndex: string;\r\n OrderBy: string = 'DisplayOrder';\r\n WhereCondition: string = 'null';\r\n keyword: string = '';\r\n\r\n OrderByArray = [\"DisplayOrder\"];\r\n\r\n CustomerComplaintsHandledByIndex: number = -1;\r\n isColumnAvalible: boolean;\r\n selectedStateCounter: number;\r\n\r\n matrixData: MetrixTableModel[];\r\n\r\n UpDownArrowCommissionCertification: string = '';\r\n UpDownArrowAgencyAssessments: string = '';\r\n UpDownArrow911: string = '';\r\n UpDownArrowUSF: string = '';\r\n UpDownArrowTRS: string = '';\r\n UpDownArrowOtherFees: string = '';\r\n UpDownArrowOtherRequirement: string = '';\r\n UpDownArrow988: string = '';\r\n isNoRecordFoundCount: number = -1;\r\n\r\n selectAllID: string[];\r\n isStateRecord: boolean = false;\r\n chkselectAll: boolean = false;\r\n\r\n // constructor(private checkAuth: CheckAuth, private router: Router, private matrix: MatrixService) {\r\n appModel: any;\r\n isKeywordStateSearch: boolean = false;\r\n\r\n updatesModel: updatesModel[] = [];\r\n parameterModel = new updatesPageModel();\r\n isupdatesloading: boolean = false;\r\n totalupdatesRecordsCount: number = -1;\r\n statenamepopup: string;\r\n totalunread: number = 0;\r\n alldata: string = 'all';\r\n unreaddata: string = 'unread';\r\n baseUrl: string;\r\n sortColumnName: string = '';\r\n sotingMode: string = ' ASC';\r\n isColumnClick: boolean = false;\r\n\r\n @ViewChild('divElements', { static: false })\r\n public divElements: ElementRef;\r\n isShowPdfButton: boolean = true;\r\n isDataProcess: boolean = false;\r\n\r\n mainMatrix: MetrixTableModel[];\r\n sortedCollection: any[];\r\n subscriptionArray: any[];\r\n ClientSelectedTool: string;\r\n productId: number = 1;\r\n\r\n constructor(private orderPipe: OrderPipe, private usersService: UsersService, private titleService: Title, @Inject('BASE_URL') baseUrl: string, private htmlToPdf: htmlToPdf, private checkAuth: CheckAuth, private router: Router, private matrix: MatrixService, private updatesService: updatesService, private toastr: ToastrService, private appActivity: ApplicationActivityService) {\r\n this.baseUrl = baseUrl;\r\n this.listOfStateId = 'null';\r\n this.listOfData = [];\r\n this.columnName = [];\r\n this.columnData = [];\r\n this.loginUser = sessionStorage.getItem('UserId');\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.listOfID = [];\r\n this.colIndex = 'StateName';\r\n this.keyword = '';\r\n this.isColumnAvalible = false;\r\n this.selectedStateCounter = 0;\r\n this.isNoRecordFoundCount = -1;\r\n this.selectAllID = [];\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.isKeywordStateSearch = false;\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.titleService.setTitle('Matrix');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.unblockDocument();\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.GetRightPanelStateList();\r\n }\r\n\r\n GetMatrix() {\r\n //if (!this.isKeywordStateSearch && !this.isColumnClick)\r\n this.blockDocument();\r\n\r\n this.isDataProcess = true;\r\n this.matrix.getMatrix(this.tokenKey, this.listOfStateId, this.loginUser, this.colIndex, this.OrderBy, this.WhereCondition, this.productId).subscribe(\r\n data => {\r\n this.matrixData = data['matrix'];\r\n\r\n this.mainMatrix = data['matrix'];\r\n\r\n this.sortedCollection = this.orderPipe.transform(this.matrixData, this.OrderBy);\r\n\r\n this.isDataProcess = false;\r\n if (this.matrixData != null) {\r\n if (this.matrixData.length > 0) {\r\n this.isRecordFound = true;\r\n this.isNoRecordFoundCount = this.matrixData.length;\r\n }\r\n else {\r\n this.isRecordFound = false;\r\n this.isNoRecordFoundCount = -1;\r\n }\r\n }\r\n else {\r\n this.isRecordFound = false;\r\n this.isNoRecordFoundCount = -1;\r\n }\r\n let sData = Object.assign([], this.matrixData);\r\n if (this.listOfID != null) {\r\n this.matrixData = [];\r\n if (this.listOfID.length > 0) {\r\n for (var jCounter = 0; jCounter < this.listOfID.length; jCounter++) {\r\n for (var iCounter = 0; iCounter < sData.length; iCounter++) {\r\n if (this.listOfID[jCounter] == sData[iCounter].stateId) {\r\n this.matrixData.push(sData[iCounter]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (!this.isKeywordStateSearch && !this.isColumnClick)\r\n this.unblockDocument();\r\n // this.GetRightPanelStateList();\r\n this.unblockDocument();\r\n },\r\n error => {\r\n this.statusCode = error;\r\n }\r\n );\r\n this.isKeywordStateSearch = false;\r\n }\r\n\r\n ShowHideSidePanel() {\r\n this.isSidePanelActive = !this.isSidePanelActive;\r\n }\r\n\r\n GetRightPanelStateList() {\r\n // this.blockDocument();\r\n this.isStateRecord = false;\r\n this.selectAllID = [];\r\n this.listOfID = [];\r\n\r\n this.matrix.getState(this.tokenKey, this.loginUser, this.productId).subscribe(\r\n data => {\r\n this.isStateRecord = true;\r\n this.selectedStateCounter = 0;\r\n this.listOfState = data['state'];\r\n if (this.listOfState != null) {\r\n let seprator = '';\r\n if (this.listOfState.length > 0) {\r\n\r\n let IsAnychecked = this.listOfState.filter(m => m.isChecked.toString() == 'true');\r\n\r\n // if (Array.isArray(IsAnychecked)) {\r\n // if (IsAnychecked.length > 0) {\r\n // this.listOfStateId = '';\r\n // this.isShowPdfButton = true;\r\n // }\r\n // else {\r\n // this.isShowPdfButton = false;\r\n // }\r\n // }\r\n this.listOfStateId = '';\r\n this.isShowPdfButton = true;\r\n\r\n for (let iCounter = 0; iCounter < this.listOfState.length; iCounter++) {\r\n if (this.listOfState[iCounter].isChecked || IsAnychecked.length == 0) {\r\n this.listOfState[iCounter].isChecked = true;\r\n this.selectedStateCounter = this.selectedStateCounter + 1;\r\n this.listOfID.push(this.listOfState[iCounter].stateId);\r\n this.listOfStateId += seprator + this.listOfState[iCounter].stateId;\r\n seprator = ',';\r\n\r\n }\r\n this.selectAllID.push(this.listOfState[iCounter].stateId)\r\n if (this.listOfID.length == this.selectAllID.length)\r\n this.chkselectAll = true;\r\n else\r\n this.chkselectAll = false;\r\n }\r\n }\r\n else {\r\n this.listOfStateId = 'null';\r\n }\r\n }\r\n this.GetMatrix();\r\n //this.unblockDocument();\r\n },\r\n error => {\r\n this.statusCode = error;\r\n }\r\n );\r\n }\r\n\r\n checkIfSelected(stateId: any, event: any) {\r\n this.keyword = '';\r\n this.WhereCondition = 'null';\r\n if (!event.currentTarget.checked) {\r\n this.listOfID = this.listOfID.filter(m => m != stateId);\r\n }\r\n else {\r\n this.listOfID.push(stateId);\r\n }\r\n this.populateSelectedIdData(this.listOfID);\r\n }\r\n\r\n populateSelectedIdData(listOfID: any) {\r\n this.listOfData = [];\r\n this.columnName = [];\r\n this.columnData = [];\r\n this.isRecordFound = false;\r\n\r\n let sData = Object.assign([], this.mainMatrix);\r\n this.matrixData = [];\r\n\r\n if (this.listOfID != null) {\r\n let seprator = '';\r\n if (this.listOfID.length > 0) {\r\n this.listOfStateId = '';\r\n for (let iCounter = 0; iCounter < this.listOfID.length; iCounter++) {\r\n this.listOfStateId += seprator + this.listOfID[iCounter];\r\n seprator = ',';\r\n\r\n // Find by ID\r\n if (this.mainMatrix.length > 0) {\r\n for (var jCounter = 0; jCounter < sData.length; jCounter++) {\r\n if (sData[jCounter].stateId == this.listOfID[iCounter]) {\r\n this.matrixData.push(sData[jCounter]);\r\n }\r\n }\r\n }\r\n }\r\n this.selectedStateCounter = this.listOfID.length;\r\n this.isShowPdfButton = true;\r\n }\r\n else {\r\n this.listOfStateId = 'null';\r\n this.selectedStateCounter = 0;\r\n this.isShowPdfButton = false;\r\n //this.refreshGrid();\r\n }\r\n }\r\n this.isKeywordStateSearch = true;\r\n this.isRecordFound = true;\r\n //this.SaveUserPrefrences();\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n // SaveUserPrefrences() {\r\n // //this.blockDocument();\r\n // this.matrix.SaveUserPrefrences(this.tokenKey, this.listOfStateId, this.loginUser,this.productId).subscribe(\r\n // data => {\r\n // //this.unblockDocument();\r\n // //this.GetRightPanelStateList();\r\n // //this.GetMatrix();\r\n // },\r\n // error => {\r\n // this.statusCode = error;\r\n // }\r\n // );\r\n // }\r\n\r\n sort(colName: any) {\r\n if (this.sortColumnName != colName) {\r\n this.isAscending = true;\r\n }\r\n\r\n if (this.OrderBy === colName) {\r\n this.isAscending = !this.isAscending;\r\n }\r\n\r\n if (this.isAscending)\r\n this.UpDownArrowCommissionCertification = 'active-up';\r\n else\r\n this.UpDownArrowCommissionCertification = 'active';\r\n\r\n this.OrderByArray = [colName, \"DisplayOrder\"];\r\n this.OrderBy = colName;\r\n this.sortColumnName = colName;\r\n }\r\n\r\n keywordFilters($event) {\r\n this.listOfData = [];\r\n this.columnName = [];\r\n this.columnData = [];\r\n this.isRecordFound = false;\r\n\r\n if ($event.target.value != \"\" && $event.target.value != null) {\r\n this.keyword = $event.target.value;\r\n this.WhereCondition = $event.target.value;\r\n if (this.mainMatrix.length > 0) {\r\n let sData = Object.assign([], this.mainMatrix);\r\n this.matrixData = [];\r\n for (var iCounter = 0; iCounter < sData.length; iCounter++) {\r\n for (var i = 0; i < this.listOfID.length; i++) {\r\n if (this.listOfID[i] == sData[iCounter].stateId) {\r\n if (sData[iCounter].name.toLowerCase().indexOf(this.keyword.toLowerCase()) > -1) {\r\n this.matrixData.push(sData[iCounter]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n }\r\n else {\r\n this.WhereCondition = 'null'\r\n this.refreshGrid();\r\n }\r\n //this.sortedCollection = this.orderPipe.transform(this.matrixData, this.OrderBy);\r\n this.isRecordFound = true;\r\n this.isKeywordStateSearch = true;\r\n }\r\n\r\n refreshGrid() {\r\n if (this.mainMatrix.length > 0) {\r\n let sData = Object.assign([], this.mainMatrix);\r\n this.matrixData = [];\r\n for (var iCounter = 0; iCounter < sData.length; iCounter++) {\r\n for (var i = 0; i < this.listOfID.length; i++) {\r\n if (this.listOfID[i] == sData[iCounter].stateId) {\r\n this.matrixData.push(sData[iCounter]);\r\n }\r\n }\r\n }\r\n this.sortedCollection = this.orderPipe.transform(this.matrixData, 'name');\r\n }\r\n }\r\n\r\n clearSearch() {\r\n this.sortColumnName = '';\r\n this.UpDownArrowCommissionCertification = '';\r\n this.UpDownArrowAgencyAssessments = '';\r\n this.UpDownArrow911 = '';\r\n this.UpDownArrowUSF = '';\r\n this.UpDownArrowTRS = '';\r\n this.UpDownArrowOtherFees = '';\r\n this.UpDownArrowOtherRequirement = '';\r\n this.colIndex = 'StateName';\r\n this.OrderBy = 'DisplayOrder';\r\n this.OrderByArray = [\"DisplayOrder\"];\r\n this.WhereCondition = 'null';\r\n this.keyword = '';\r\n this.listOfData = [];\r\n this.columnName = [];\r\n this.columnData = [];\r\n this.isRecordFound = false;\r\n this.isAscending = false;\r\n this.UpDownArrow988 = '';\r\n this.GetRightPanelStateList();\r\n }\r\n\r\n navigateToFundDetails(stateId: any,stateName: any, AssementCatId: any) {\r\n this.blockDocument();\r\n sessionStorage.setItem('singleStatePreview', stateId);\r\n this.matrix.GetfundRefrence(this.tokenKey, stateId, AssementCatId, this.loginUser, this.productId).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n let fundTitleReference = data['fundTitleReference'];\r\n if (fundTitleReference == '')\r\n fundTitleReference = 'null'\r\n\r\n if (this.ClientSelectedTool == 'wireless') {\r\n ApplicationActivityStore('View', 'Wireless PRO - View History', this.appActivity, ToolEnum.wireless, ActionActivity.Wireless, '/wireless/Matrix/Fund/Details/' + fundTitleReference,stateName);\r\n }\r\n else if (this.ClientSelectedTool == 'ipcs') {\r\n ApplicationActivityStore('View', 'IPCS PRO - View History', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix/Fund/Details/' + fundTitleReference,stateName);\r\n }\r\n else {\r\n ApplicationActivityStore('View', 'VoIP PRO - View History', this.appActivity, ToolEnum.voip, ActionActivity.VoIP, '/voip/Matrix/Fund/Details/' + fundTitleReference,stateName);\r\n }\r\n\r\n let navigation = '/' + this.ClientSelectedTool + '/Matrix/Fund/Details/' + fundTitleReference;\r\n this.router.navigate([navigation]);\r\n //this.GetMatrix();\r\n },\r\n error => {\r\n this.statusCode = error;\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n openpopup(stateid, statename) {\r\n this.statenamepopup = statename;\r\n this.GetUpdates(stateid);\r\n }\r\n\r\n GetUpdates(stateid): void {\r\n this.isupdatesloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.parameterModel.pageSize = this.appModel.PageSize;\r\n this.parameterModel.pageIndex = '1';\r\n this.parameterModel.keywordFilter = 'null';\r\n this.parameterModel.whereCondition = ' StateId=' + stateid;\r\n this.parameterModel.orderBy = 'UpdateDate desc';\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.parameterModel.userID = this.loginUser.toString();\r\n this.parameterModel.updatetype = \"null\";\r\n this.parameterModel.unreadonly = \"1\";\r\n this.parameterModel.productId = this.productId.toString();\r\n if (sessionStorage.getItem('isVisibleflag') != '')\r\n sessionStorage.setItem('isVisibleflag', sessionStorage.getItem('isVisibleflag'));\r\n else\r\n sessionStorage.setItem('isVisibleflag', 'true');\r\n\r\n this.updatesService.getupdatesfindByUserID(this.tokenKey, this.parameterModel).subscribe(\r\n data => {\r\n this.isupdatesloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.updatesModel = data[\"updates\"];\r\n if (this.updatesModel.length > 0) {\r\n this.totalupdatesRecordsCount = this.updatesModel.length;\r\n this.saveNotification(this.updatesModel);\r\n }\r\n else {\r\n this.totalupdatesRecordsCount = 0;\r\n }\r\n //new SiteLayoutComponent(this.usersService, this.router, this.updatesService, this.baseUrl).GetUpdates(true);\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n\r\n saveNotification(updates) {\r\n let _updates = updates;\r\n for (let iCounter = 0; iCounter < _updates.length; iCounter++) {\r\n _updates[iCounter].createdBy = this.loginUser.toString();\r\n }\r\n let count = updates.length;\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n this.updatesService.addNotification(_updates, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n sessionStorage.setItem(this.unreaddata, ((+this.totalunread) - (+count)).toString());\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n\r\n // Set Update Counter Logic\r\n if (window.document.body.getElementsByClassName('unread')) {\r\n if (this.totalunread == 0) {\r\n window.document.body.getElementsByClassName('unread')[0].setAttribute(\"style\", \"display:none\");\r\n }\r\n else\r\n window.document.body.getElementsByClassName('unread')[0].innerHTML = this.totalunread.toString();\r\n }\r\n this.GetRightPanelStateList();\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n });\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n selectAllCheckBox(event: any) {\r\n this.listOfStateId = '';\r\n //this.listOfState = []\r\n this.listOfID = [];\r\n let allState = Object.assign([], this.listOfState);\r\n\r\n if (!event.currentTarget.checked) {\r\n //this.selectAllID = [];\r\n this.isShowPdfButton = false;\r\n // Select checkbox\r\n if (allState.length > 0) {\r\n for (var jCounter = 0; jCounter < allState.length; jCounter++) {\r\n this.listOfState[jCounter].isChecked = false;\r\n }\r\n }\r\n }\r\n else {\r\n this.listOfID = this.selectAllID;\r\n this.isShowPdfButton = true;\r\n // Select checkbox\r\n if (allState.length > 0) {\r\n for (var jCounter = 0; jCounter < allState.length; jCounter++) {\r\n this.listOfState[jCounter].isChecked = true;\r\n }\r\n }\r\n }\r\n\r\n this.populateSelectedIdData(this.listOfID);\r\n }\r\n\r\n navigateToFundDetailByName(stateId: any, stateName: any) {\r\n sessionStorage.setItem('singleStatePreview', stateId);\r\n if (this.ClientSelectedTool == 'wireless') {\r\n ApplicationActivityStore('View', 'Wireless PRO - View History', this.appActivity, ToolEnum.wireless, ActionActivity.Wireless, '/wireless/Matrix/Fund/Details/', stateName);\r\n }\r\n else if (this.ClientSelectedTool == 'ipcs') {\r\n ApplicationActivityStore('View', 'IPCS PRO - View History', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix/Fund/Details/', stateName);\r\n }\r\n else {\r\n ApplicationActivityStore('View', 'VoIP PRO - View History', this.appActivity, ToolEnum.voip, ActionActivity.VoIP, '/voip/Matrix/Fund/Details/', stateName);\r\n }\r\n\r\n let navigation = '/' + this.ClientSelectedTool + '/Matrix/Fund/Details/' + stateName;\r\n this.router.navigate([navigation]);\r\n }\r\n\r\n pdfDocument() {\r\n this.blockDocument();\r\n let mainURL = this.baseUrl;\r\n let url = ' '\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n //url += '
';\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '1',this.productId).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n //this.downloadFile(data['fileName'], data['url']);\r\n this.downloadFile('Matrix.pdf', data['url'], data['fileName']);\r\n }\r\n },\r\n error => {\r\n this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n public downloadFile(filename: any, url: any, orignalFileName: any) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename);\r\n if (this.ClientSelectedTool == 'wireless') {\r\n ApplicationActivityStore('Download', 'Wireless PRO File download ' + filename, this.appActivity, ToolEnum.wireless, ActionActivity.Wireless, '/wireless/Matrix');\r\n }\r\n else if (this.ClientSelectedTool == 'ipcs') {\r\n ApplicationActivityStore('Download', 'IPCS PRO File download ' + filename, this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix');\r\n }\r\n else {\r\n ApplicationActivityStore('Download', 'VoIP PRO File download ' + filename, this.appActivity, ToolEnum.voip, ActionActivity.VoIP, '/voip/Matrix');\r\n }\r\n sessionStorage.setItem('fileloading', 'false');\r\n this.htmlToPdf.DeletePDF(this.tokenKey, orignalFileName).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n },\r\n );\r\n }\r\n );\r\n }\r\n\r\n // pdfDocument() {\r\n // //this.blockDocument();\r\n // var data = document.getElementById('divPrint');\r\n\r\n\r\n // var margins = {\r\n // top: 10,\r\n // bottom: 10,\r\n // left: 10,\r\n // width: 800\r\n // };\r\n\r\n // var pdf = new jspdf('p', 'pt', 'a4');\r\n // var source = document.getElementById('divPrint');\r\n // pdf.fromHTML(source,\r\n // margins.left, // x coord\r\n // margins.top,\r\n // {\r\n // // y coord\r\n // width: margins.width// max width of content on PDF\r\n // }, function (dispose) {\r\n // //headerFooterFormatting(pdf, pdf.internal.getNumberOfPages());\r\n // pdf.save(\"Test.pdf\");\r\n // },\r\n // margins);\r\n\r\n // // var iframe = document.createElement('iframe');\r\n // // iframe.setAttribute('style', 'position:absolute;right:0; top:0; bottom:0; height:100%; width:650px; padding:20px;');\r\n // // document.body.appendChild(iframe);\r\n // // iframe.src = pdf.output('datauristring');\r\n\r\n // // html2canvas(data).then(canvas => {\r\n // // var imgWidth = 210;\r\n // // var pageHeight = 295;\r\n // // var imgHeight = canvas.height * imgWidth / canvas.width;\r\n // // var heightLeft = imgHeight;\r\n\r\n // // var imgData = canvas.toDataURL('image/png')\r\n\r\n // // var doc = new jspdf('p', 'mm', 'a4');\r\n // // var position = 5;\r\n\r\n // // doc.addImage(imgData, 'PNG', 0, position, imgWidth, imgHeight);\r\n // // heightLeft -= pageHeight;\r\n // // var margins = { top: 90, bottom: 60, left: 90, width: 900 };\r\n\r\n // // while (heightLeft >= 0) {\r\n // // position = heightLeft - imgHeight;\r\n // // doc.addPage();\r\n // // doc.addImage(imgData, 'PNG', 0, position, imgWidth, imgHeight);\r\n // // heightLeft -= pageHeight;\r\n // // }\r\n // // doc.save('DocumentDetails.pdf');\r\n // // this.unblockDocument();\r\n // // });\r\n // }\r\n\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L3ByaXZhY3kvcHJpdmFjeS5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-privacy',\r\n templateUrl: './privacy.component.html',\r\n styleUrls: ['./privacy.component.css']\r\n})\r\nexport class PrivacyComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L3NpdGUtc3RhdGUtZnVuZC1wcml2aWV3L3NpdGUtc3RhdGUtZnVuZC1wcml2aWV3LmNvbXBvbmVudC5jc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-site-state-fund-priview',\r\n templateUrl: './site-state-fund-priview.component.html',\r\n styleUrls: ['./site-state-fund-priview.component.css']\r\n})\r\nexport class SiteStateFundPriviewComponent implements OnInit {\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() { \r\n }\r\n\r\n}\r\n","export default \".custom-checkbox .custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #2d0080;\\r\\n}\\r\\n\\r\\n.custom-control-input:checked ~ .custom-control-label:before {\\r\\n background-color: #2d0080;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRnJvbnQvdXBkYXRlL3VwZGF0ZS5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLFdBQVc7QUFDYiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L3VwZGF0ZS91cGRhdGUuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQwMDgwO1xyXG59XHJcblxyXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyZDAwODA7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuIl19 */\"","import { Component, OnInit, ViewChild, ViewChildren, ElementRef, HostListener, Input, Inject, Output, EventEmitter } from '@angular/core';\r\nimport { updatesModel } from '../../../Models/updatesModel';\r\nimport { updatesService } from '../../../Services/updatesService';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { Router, ActivatedRoute, Params } from '@angular/router';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { updatesPageModel } from '../../../Models/updatesPageModel';\r\nimport { htmlToPdf } from 'src/Services/htmlToPdf';\r\nimport * as FileSaver from 'file-saver';\r\nimport { StateMasterService } from 'src/Services/state-master.service';\r\nimport { MatrixFundDetailsService } from 'src/Services/matrix-fund-details.service';\r\nimport { ActionActivity, ToolEnum } from '../../../Models/Common';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ActionStatusPopupComponent } from 'src/app/Shared/action-status-popup/action-status-popup.component';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\n\r\n@Component({\r\n selector: 'app-update',\r\n templateUrl: './update.component.html',\r\n styleUrls: ['./update.component.css']\r\n})\r\nexport class UpdateComponent implements OnInit {\r\n userID: number = 0;\r\n //pageSize: number = 0;\r\n //pageIndex: number = 0;\r\n //orderBy: string = 'null';\r\n //keywordFilter: string = '';\r\n //whereCondition: string = 'null';\r\n isAscending: boolean;\r\n statusCode: number = 0;\r\n appModel: any;\r\n\r\n upDowUpdateCategoryNameCSS: string = '';\r\n upDowStateCSS: string = '';\r\n upDowUpdateTypeCSS: string = '';\r\n upDowCreatedByCSS: string = '';\r\n upDowCreatedDateCSS: string = '';\r\n upDowModifiedByCSS: string = '';\r\n upDowModifiedDateCSS: string = '';\r\n upDowUpdateDateCSS: string = '';\r\n\r\n isloading: boolean = false;\r\n tokenKey: string = '';\r\n updatesModel: updatesModel[] = [];\r\n isRecords: boolean = false;\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n totalRecordsCount: number = -1;\r\n deleteupdateId: number = 0;\r\n @ViewChild('deletecloseBtn', { static: false }) deletecloseBtn: ElementRef;\r\n queryParams: string = '';\r\n @Input()\r\n rangeOfupdatesDates: Date[] = [];\r\n updatesForm: FormGroup;\r\n //fromupdatesDateFilter: string;\r\n //toupdatesDateFilter: string;\r\n totalunread: number = 0;\r\n alldata: string = 'all';\r\n unreaddata: string = 'unread';\r\n parameterModel = new updatesPageModel();\r\n baseUrl: string;\r\n\r\n //State List\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n stateFilter: string = '';\r\n\r\n listOfstateID: string[] = [];\r\n ClientSelectedTool: string;\r\n productId: number = 1;\r\n\r\n isActionItemSubscription: boolean = false;\r\n\r\n constructor(private modalService: NgbModal, private MaxtixFund: MatrixFundDetailsService,\r\n private stateMasterService: StateMasterService, @Inject('BASE_URL') baseUrl: string, private htmlToPdf: htmlToPdf,\r\n private updatesService: updatesService, private toastr: ToastrService\r\n , private titleService: Title, private checkAuth: CheckAuth\r\n , private router: Router, private activedRoute: ActivatedRoute, private appActivity: ApplicationActivityService) {\r\n this.baseUrl = baseUrl;\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n\r\n this.updatesForm = new FormGroup({\r\n rangeOfupdatesDates: new FormControl(),\r\n stateId: new FormControl(),\r\n });\r\n\r\n // if (window.document.getElementsByTagName('sup')[0] != undefined)\r\n // window.document.getElementsByTagName('sup')[0].innerHTML = ''; \r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.titleService.setTitle('Updates');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.queryParams = this.activedRoute.snapshot.queryParams['data'];\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n if (this.totalunread == 0) {\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Update'], { queryParams: { data: this.alldata } });\r\n this.queryParams = this.alldata;\r\n }\r\n this.movetotop();\r\n this.parameterModel.pageIndex = 1;\r\n this.parameterModel.pageSize = 20;\r\n this.parameterModel.keywordFilter = 'null';\r\n this.parameterModel.whereCondition = 'null';\r\n this.parameterModel.orderBy = 'UpdateDate desc';\r\n this.upDowUpdateDateCSS = 'active';\r\n this.isAscending = true;\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.parameterModel.userID = this.userID.toString();\r\n this.parameterModel.updatetype = \"1,2\";\r\n this.isloading = true;\r\n this.GetUpdates();\r\n this.GetStateData();\r\n this.clientHasActionItemSubscription();\r\n }\r\n\r\n clientHasActionItemSubscription() {\r\n let clientToolAccess = sessionStorage.getItem('ClientAccessibleTools');\r\n if (clientToolAccess != null && clientToolAccess != '') {\r\n let arraySubscription = clientToolAccess.split(',');\r\n if (arraySubscription.length > 0) {\r\n let tmpAction = ToolEnum[ToolEnum.actionitem];\r\n let coun = arraySubscription.filter(m => m === tmpAction);\r\n if (coun.length > 0)\r\n this.isActionItemSubscription = true;\r\n else\r\n this.isActionItemSubscription = false;\r\n }\r\n }\r\n }\r\n\r\n GetUpdates(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n let unreadonly = \"0\";\r\n if (this.queryParams == this.unreaddata) {\r\n unreadonly = \"1\";\r\n }\r\n this.parameterModel.unreadonly = unreadonly;\r\n this.parameterModel.productId = this.productId.toString();\r\n this.updatesService.getupdatesfindByUserID(this.tokenKey, this.parameterModel).subscribe(\r\n data => {\r\n this.isloading = false;\r\n if (data[\"status\"] == \"Success\") {\r\n this.updatesModel = data[\"updates\"];\r\n if (this.updatesModel.length > 0) {\r\n debugger\r\n this.isRecords = true;\r\n this.totalRecordsCount = parseInt(this.updatesModel[0].totalRecordCount);\r\n if (this.totalunread) {\r\n this.saveNotification(this.updatesModel);\r\n }\r\n }\r\n else {\r\n this.totalRecordsCount = 0;\r\n this.isRecords = false;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n\r\n ActiveInactiveUpdates(updateId: any, isactive: any) {\r\n this.blockDocument();\r\n this.updatesService.activeinactiveupdates(this.tokenKey, updateId, isactive)\r\n .subscribe(data => {\r\n if (data[\"status\"] == \"Success\") {\r\n if (isactive) {\r\n this.showMessage('Activated successfully', 'Active', 'success');\r\n }\r\n else {\r\n this.showMessage('Inactivated successfully', 'Inactive', 'success');\r\n }\r\n this.GetUpdates();\r\n }\r\n else {\r\n this.showMessage(data[\"status\"], 'Error', 'error');\r\n }\r\n this.unblockDocument();\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n sort(sortBy: string) {\r\n if (!this.isAscending) {\r\n this.isAscending = true;\r\n this.parameterModel.orderBy = sortBy + ' DESC';\r\n\r\n if (sortBy === \"UpdateCategoryName\") {\r\n this.upDowUpdateCategoryNameCSS = 'active';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"StateName\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = 'active';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"UpdateType\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = 'active';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedBy\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = 'active';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = 'active';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedBy\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = 'active';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = 'active';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"UpdateDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = 'active';\r\n }\r\n }\r\n else {\r\n this.isAscending = false;\r\n this.parameterModel.orderBy = sortBy;\r\n\r\n if (sortBy === \"UpdateCategoryName\") {\r\n this.upDowUpdateCategoryNameCSS = 'active-up';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"StateName\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = 'active-up';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"UpdateType\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = 'active-up';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedBy\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = 'active-up';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"CreatedDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = 'active-up';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedBy\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = 'active-up';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"ModifiedDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = 'active-up';\r\n this.upDowUpdateDateCSS = '';\r\n }\r\n else if (sortBy === \"UpdateDate\") {\r\n this.upDowUpdateCategoryNameCSS = '';\r\n this.upDowStateCSS = '';\r\n this.upDowUpdateTypeCSS = '';\r\n this.upDowCreatedByCSS = '';\r\n this.upDowCreatedDateCSS = '';\r\n this.upDowModifiedByCSS = '';\r\n this.upDowModifiedDateCSS = '';\r\n this.upDowUpdateDateCSS = 'active-up';\r\n }\r\n }\r\n this.GetUpdates();\r\n }\r\n pageChanged($event) {\r\n debugger\r\n this.parameterModel.pageIndex = parseInt($event.page);\r\n this.GetUpdates();\r\n }\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n movetotop() {\r\n let scrollToTop = window.setInterval(() => {\r\n let pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 1);\r\n }\r\n keywordFilters($event) {\r\n this.parameterModel.pageIndex = 1;\r\n if ($event.target.value != \"\" && $event.target.value != null)\r\n this.parameterModel.keywordFilter = $event.target.value;\r\n else\r\n this.parameterModel.keywordFilter = 'null';\r\n\r\n this.GetUpdates();\r\n }\r\n isupdatesDatesFilter(dateArray: any) {\r\n this.rangeOfupdatesDates = dateArray;\r\n\r\n if (this.rangeOfupdatesDates != null) {\r\n if (this.rangeOfupdatesDates.length > 1) {\r\n let dd1 = this.rangeOfupdatesDates[0].getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (this.rangeOfupdatesDates[0].getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n let dd2 = this.rangeOfupdatesDates[1].getDate().toString();\r\n if (parseInt(dd2.toString()) < 10)\r\n dd2 = '0' + dd2.toString();\r\n\r\n let mm2 = (this.rangeOfupdatesDates[1].getMonth() + 1).toString();\r\n if (parseInt(mm2.toString()) < 10)\r\n mm2 = '0' + mm2.toString();\r\n\r\n this.parameterModel.fromupdatesDateFilter = mm1 + '-' + dd1 + '-' + this.rangeOfupdatesDates[0].getFullYear();\r\n this.parameterModel.toupdatesDateFilter = mm2 + '-' + dd2 + '-' + this.rangeOfupdatesDates[1].getFullYear();\r\n }\r\n if (this.parameterModel.fromupdatesDateFilter === null || this.parameterModel.fromupdatesDateFilter === '') {\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n }\r\n }\r\n else {\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n }\r\n if (this.parameterModel.fromupdatesDateFilter != 'null' && this.parameterModel.toupdatesDateFilter != 'null')\r\n this.GetUpdates();\r\n }\r\n updatesDateFilterClear() {\r\n this.rangeOfupdatesDates = [];\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.GetUpdates();\r\n }\r\n viewallupdates() {\r\n this.queryParams = this.alldata;\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Update'], { queryParams: { data: this.alldata } });\r\n this.GetUpdates();\r\n }\r\n saveNotification(updates) {\r\n let _updates = updates;\r\n for (let iCounter = 0; iCounter < _updates.length; iCounter++) {\r\n _updates[iCounter].createdBy = this.userID.toString();\r\n }\r\n this.updatesService.addNotification(_updates, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n sessionStorage.setItem(this.unreaddata, \"0\");\r\n\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n // Set Update Counter Logic\r\n if (window.document.body.getElementsByClassName('unread')) {\r\n if (this.totalunread == 0) {\r\n window.document.body.getElementsByClassName('unread')[0].setAttribute(\"style\", \"display:none\");\r\n }\r\n else\r\n window.document.body.getElementsByClassName('unread')[0].innerHTML = this.totalunread.toString();\r\n }\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n });\r\n }\r\n updatetypechange($event) {\r\n this.parameterModel.pageIndex = 1;\r\n if ($event.target.checked) {\r\n if (this.parameterModel.updatetype == \"-1\") { this.parameterModel.updatetype = \"\" }\r\n if (this.parameterModel.updatetype == '' || this.parameterModel.updatetype == 'null') {\r\n this.parameterModel.updatetype = $event.target.value;\r\n }\r\n else {\r\n this.parameterModel.updatetype += ',' + $event.target.value;\r\n }\r\n }\r\n else {\r\n this.parameterModel.updatetype = this.parameterModel.updatetype.replace($event.target.value, \"\");\r\n this.parameterModel.updatetype = this.parameterModel.updatetype.replace(/,\\s*$/, \"\");\r\n this.parameterModel.updatetype = this.parameterModel.updatetype.replace(\",,\", \",\");\r\n if (this.parameterModel.updatetype.charAt(0) == \",\") {\r\n this.parameterModel.updatetype = this.parameterModel.updatetype.slice(1)\r\n }\r\n if (this.parameterModel.updatetype == \"\") { this.parameterModel.updatetype = \"-1\" }\r\n }\r\n\r\n this.GetUpdates();\r\n }\r\n\r\n navigateToFundDetailByName(stateId: any, stateName: any, title: any, fieldName: any) {\r\n sessionStorage.setItem('singleStatePreview', stateId);\r\n sessionStorage.setItem('updatefunddata', title + ' - ' + fieldName);\r\n if (this.ClientSelectedTool == 'wireless') {\r\n ApplicationActivityStore('View', 'Wireless PRO Updates - View History', this.appActivity, ToolEnum.wireless, ActionActivity.Wireless, '/wireless/Matrix/Fund/Details/', stateName);\r\n }\r\n else if (this.ClientSelectedTool == 'ipcs') {\r\n ApplicationActivityStore('View', 'IPCS PRO Updates - View History', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix/Fund/Details/', stateName);\r\n }\r\n else {\r\n ApplicationActivityStore('View', 'VoIP PRO Updates - View History', this.appActivity, ToolEnum.voip, ActionActivity.VoIP, '/voip/Matrix/Fund/Details/', stateName);\r\n }\r\n let navigation = '/' + this.ClientSelectedTool + '/Matrix/Fund/Details/' + stateName;\r\n this.router.navigate([navigation]);\r\n }\r\n\r\n pdfDocument() {\r\n this.blockDocument();\r\n let mainURL = this.baseUrl;\r\n let url = '
';\r\n url += '
';\r\n url += '
';\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '0',this.productId).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n //this.downloadFile(data['fileName'], data['url']);\r\n this.downloadFile('Update', data['url']);\r\n }\r\n },\r\n error => {\r\n this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n\r\n }\r\n\r\n public downloadFile(filename, url) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename);\r\n if (this.ClientSelectedTool == 'wireless') {\r\n ApplicationActivityStore('Download', 'Wireless PRO Updates File download ' + filename, this.appActivity, ToolEnum.wireless, ActionActivity.Wireless, '/wireless/Update');\r\n }\r\n else if (this.ClientSelectedTool == 'ipcs') {\r\n ApplicationActivityStore('Download', 'IPCS PRO Updates File download ' + filename, this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Update');\r\n }\r\n else {\r\n ApplicationActivityStore('Download', 'VoIP PRO Updates File download ' + filename, this.appActivity, ToolEnum.voip, ActionActivity.VoIP, '/voip/Update');\r\n }\r\n sessionStorage.setItem('fileloading', 'false');\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n GetStateData(): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.MaxtixFund.GetMatrixFundState(this.tokenKey, this.userID, this.productId).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n // Set All Item\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n }\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: false,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n FilterSelecteventState($event) {\r\n this.stateFilter = '';\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event['id']);\r\n this.listOfstateID.push($event.id);\r\n this.getString(this.listOfstateID);\r\n this.parameterModel.keywordFilter = this.stateFilter;\r\n this.GetUpdates();\r\n }\r\n\r\n FilterDeSelectseventState($event) {\r\n this.stateFilter = '';\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event['id']);\r\n this.getString(this.listOfstateID);\r\n this.parameterModel.keywordFilter = this.stateFilter;\r\n this.GetUpdates();\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e != element);\r\n }\r\n\r\n getString(array: any) {\r\n let sprator = '';\r\n this.stateFilter = '';\r\n for (let iCounter = 0; iCounter < array.length; iCounter++) {\r\n this.stateFilter += sprator + array[iCounter];\r\n sprator = ',';\r\n }\r\n }\r\n\r\n onSelectAllStateList($event) {\r\n this.stateFilter = '';\r\n if ($event != \"\" && $event != null) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n this.listOfstateID = this.removeElemetninArray(this.listOfstateID, $event[iCounter].id);\r\n this.listOfstateID.push($event[iCounter].id);\r\n }\r\n this.getString(this.listOfstateID);\r\n this.parameterModel.keywordFilter = this.stateFilter;\r\n }\r\n this.GetUpdates();\r\n }\r\n\r\n onDeSelectAllStateList($event) {\r\n this.listOfstateID = [];\r\n this.stateFilter = '';\r\n this.parameterModel.keywordFilter = '';\r\n this.GetUpdates();\r\n }\r\n\r\n OpenActionStatusPopup(actionId: any, updateId: any, briefingId) {\r\n\r\n let prodid = ToolEnum.actionitem.toString();\r\n sessionStorage.setItem('productId', prodid);\r\n sessionStorage.setItem('actionId', actionId);\r\n sessionStorage.setItem('updateId', updateId);\r\n sessionStorage.setItem('briefingId', briefingId);\r\n const modalRef = this.modalService.open(ActionStatusPopupComponent, { size: 'lg' }).result.then(\r\n result => {\r\n if (result == 'Yes') {\r\n // this.GetDashboardActionItemsReuiredAttention();\r\n }\r\n },\r\n reason => {\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setEmailAutoLoginParameter();\r\n }\r\n\r\n setEmailAutoLoginParameter() {\r\n if (sessionStorage.getItem('DisplayMessage') != null) {\r\n this.showMessage(sessionStorage.getItem('DisplayMessage') + ' - user not have access', 'Error', 'error');\r\n sessionStorage.removeItem('DisplayMessage');\r\n }\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL0Zyb250L3dpcmVsZXNzLXZvaXAtbXktZmF2b3JpdGVzL3dpcmVsZXNzLXZvaXAtbXktZmF2b3JpdGVzLmNvbXBvbmVudC5jc3MifQ== */\"","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ToolEnum } from 'src/Models/Common';\r\nimport { iprupdatesService } from '../../../Services/iprupdatesService';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { stateMasterModel } from 'src/Models/stateMasterModel';\r\n\r\n@Component({\r\n selector: 'app-wireless-voip-my-favorites',\r\n templateUrl: './wireless-voip-my-favorites.component.html',\r\n styleUrls: ['./wireless-voip-my-favorites.component.css']\r\n})\r\nexport class WirelessVoipMyFavoritesComponent implements OnInit {\r\n userID: number = 0;\r\n appModel: any;\r\n isloading: boolean = false;\r\n tokenKey: string = '';\r\n\r\n dropdownListState = [];\r\n selectedItemsState = [];\r\n dropdownSettingsState = {};\r\n listOfStateId: number[] = [];\r\n stateFilter: string = '';\r\n favouriteStateModel: stateMasterModel[] = [];\r\n\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean = false;\r\n\r\n ClientSelectedTool: string;\r\n productId: number;\r\n baseUrl: string;\r\n\r\n statusCode: any;\r\n ValidationMessage: string;\r\n DeSelectedFavoriteId: number = 0;\r\n\r\n constructor(@Inject('BASE_URL') baseUrl: string,\r\n private matrix: MatrixService, private toastr: ToastrService, private iprupdatesService: iprupdatesService, private titleService: Title,\r\n private checkAuth: CheckAuth, private router: Router, private activedRoute: ActivatedRoute) {\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.baseUrl = baseUrl;\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.titleService.setTitle('My Favorites');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ngOnInit() {\r\n this.GetStateData();\r\n }\r\n\r\n GetStateData(): void {\r\n this.listOfStateId = [];\r\n this.dropdownListState = [];\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.iprupdatesService.GetMatrixStatesByUserID(this.tokenKey, this.userID, this.productId).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n this.selectedItemsState = [];\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n\r\n if (data[\"state\"][iCounter].isActionFavorite == true) {\r\n this.selectedItemsState.push({ \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name });\r\n this.listOfStateId.push(data[\"state\"][iCounter].stateId);\r\n }\r\n\r\n }\r\n this.favouriteStateModel = data[\"state\"].filter(book => book.isActionFavorite === true);\r\n }\r\n else {\r\n this.showMessage(data[\"message\"], 'Error', 'error');\r\n this.unblockDocument();\r\n }\r\n this.dropdownSettingsState = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: true\r\n };\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.unblockDocument();\r\n })\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n SaveUserPrefrences() {\r\n this.matrix.SaveUserPrefrences(this.tokenKey, this.stateFilter, this.userID, this.productId).subscribe(\r\n data => {\r\n this.GetStateData();\r\n },\r\n error => {\r\n this.statusCode = error;\r\n }\r\n );\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n OnSelectState($event) {\r\n if (this.listOfStateId != null) {\r\n if (this.listOfStateId.length > 0) {\r\n this.listOfStateId = this.removeElemetninArray(this.listOfStateId, $event.id)\r\n this.listOfStateId.push($event.id);\r\n }\r\n else {\r\n this.listOfStateId.push($event.id);\r\n }\r\n }\r\n this.stateFilter = this.listOfStateId.join(',');\r\n this.SaveUserPrefrences();\r\n }\r\n\r\n OnDeSelectState($event) {\r\n if (this.listOfStateId != null) {\r\n if (this.listOfStateId.length > 0) {\r\n this.listOfStateId = this.removeElemetninArray(this.listOfStateId, $event.id)\r\n }\r\n }\r\n this.stateFilter = this.listOfStateId.join(',');\r\n if (this.listOfStateId.length == 0)\r\n this.stateFilter = 'null';\r\n this.SaveUserPrefrences();\r\n }\r\n\r\n onSelectAllStateList($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listOfStateId != null) {\r\n if (this.listOfStateId.length > 0) {\r\n this.listOfStateId = this.removeElemetninArray(this.listOfStateId, $event[iCounter].id)\r\n this.listOfStateId.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listOfStateId.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n this.stateFilter = this.listOfStateId.join(',');\r\n this.SaveUserPrefrences();\r\n }\r\n\r\n onDeSelectAllStateList($event) {\r\n this.listOfStateId = [];\r\n this.stateFilter = this.listOfStateId.join(',');\r\n if (this.listOfStateId.length == 0)\r\n this.stateFilter = 'null';\r\n this.SaveUserPrefrences();\r\n }\r\n\r\n RemoveStarFavorite(id: number, Type: string) {\r\n // this.IsDeselected = 1;\r\n this.DeSelectedFavoriteId = id;\r\n if (Type == 'state') {\r\n this.ValidationMessage = \"Are you sure you want to remove selected state from favorite list?\"\r\n }\r\n var elem = document.getElementById(\"lnkFavouriteValidation\");\r\n elem.click();\r\n }\r\n\r\n // CancelDeselectFavourite() {\r\n // this.GetStateData();\r\n // }\r\n\r\n DeselectFavourite() { \r\n //debugger\r\n this.iprupdatesService.RemoveMatrixFavoriteByUserID(this.tokenKey, this.userID, this.productId, this.DeSelectedFavoriteId).subscribe(\r\n data => {\r\n //debugger\r\n this.DeSelectedFavoriteId = 0;\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Selected state removed successfully from favorite list.', 'Favorite', 'success');\r\n this.GetStateData();\r\n document.getElementById(\"btnClose\").click();\r\n }\r\n\r\n }\r\n , error => {\r\n document.getElementById(\"btnClose\").click();\r\n }\r\n );\r\n\r\n }\r\n\r\n}\r\n","export default \".curpointer {\\r\\n cursor:pointer;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvTGF5b3V0L2FkbWluLWxheW91dC9hZG1pbi1sYXlvdXQuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGNBQWM7QUFDaEIiLCJmaWxlIjoic3JjL2FwcC9MYXlvdXQvYWRtaW4tbGF5b3V0L2FkbWluLWxheW91dC5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmN1cnBvaW50ZXIge1xyXG4gIGN1cnNvcjpwb2ludGVyO1xyXG59XHJcbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { Router } from '@angular/router';\r\nimport { AdminUserType } from '../../../Models/Common';\r\n\r\n@Component({\r\n selector: 'app-admin-layout',\r\n templateUrl: './admin-layout.component.html',\r\n styleUrls: ['./admin-layout.component.css']\r\n})\r\nexport class AdminLayoutComponent implements OnInit {\r\n appModel: any;\r\n dt: string = '';\r\n SelectedTool: string;\r\n\r\n firstLastName: string = '';\r\n adminCompanyName: string = '';\r\n isUserSystemAdmin: boolean = false;\r\n\r\n constructor(private router: Router) {\r\n if (sessionStorage.getItem('AdminUserId') != '' && sessionStorage.getItem('AdminUserId') != undefined && sessionStorage.getItem('AdminUserId') != null) {\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n }\r\n else\r\n this.router.navigate(['admin/login']);\r\n\r\n this.SelectedTool = sessionStorage.getItem('UserLoginTool');\r\n this.firstLastName = sessionStorage.getItem('AdminFirstLastName');\r\n this.adminCompanyName = sessionStorage.getItem('AdminCompanyName');\r\n\r\n if (AdminUserType.systemadmin == parseInt(sessionStorage.getItem('adminTypeId')))\r\n this.isUserSystemAdmin = true;\r\n }\r\n\r\n ngOnInit() {\r\n this.dt = Date();\r\n }\r\n\r\n logout(): void {\r\n this.clearSession();\r\n let UserId = sessionStorage.getItem('AdminUserId');\r\n let LoginSession = sessionStorage.getItem('LoginSession');\r\n sessionStorage.removeItem('AdminUserId');\r\n this.setOprationSession('logout');\r\n sessionStorage.removeItem('tokenValue');\r\n sessionStorage.removeItem('appStartTime');\r\n this.router.navigate(['admin/login']);\r\n }\r\n\r\n setOprationSession(logout: string) {\r\n sessionStorage.setItem('LoginStatus', logout);\r\n }\r\n\r\n SetTool(ToolType: string) {\r\n \r\n var AccessibleTools = sessionStorage.getItem('UserAccessibleTools');\r\n if (AccessibleTools.toLowerCase().indexOf(ToolType.toLowerCase()) !== -1) {\r\n this.SelectedTool = ToolType;\r\n sessionStorage.setItem('UserLoginTool', ToolType);\r\n if (ToolType == 'actionitem')\r\n this.router.navigate(['admin/trac-it/dashboard']);\r\n else\r\n this.router.navigate(['admin/' + this.SelectedTool + '/dashboard']);\r\n }\r\n else {\r\n sessionStorage.setItem('AccessDeniedTool', ToolType);\r\n let redirectToTool = ToolType == 'actionitem' ? 'trac-it' : ToolType;\r\n this.router.navigate(['admin/' + redirectToTool + '/access-denied']);\r\n }\r\n }\r\n\r\n clearSession() {\r\n sessionStorage.removeItem('saveFilterPageNo');\r\n sessionStorage.removeItem('saveFilterOrderBy');\r\n sessionStorage.removeItem('saveFilterWhereCondition');\r\n sessionStorage.removeItem('saveFilterStateID');\r\n sessionStorage.removeItem('saveFilterCarrierCategories');\r\n\r\n sessionStorage.removeItem('saveFilterUpDownDeadlineDateCSS');\r\n sessionStorage.removeItem('saveFilterUpDownSubjectCSS');\r\n sessionStorage.removeItem('saveFilterUpDownTypeNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownCompanyNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownStateNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownCarrierNameCSS');\r\n sessionStorage.removeItem('saveFilterUpDownActionChargesCSS');\r\n sessionStorage.removeItem('saveFilterUpDownIsActionCSS');\r\n sessionStorage.removeItem('saveFilterUpDownIsInformationOnlyCSS');\r\n sessionStorage.removeItem('saveFilterIsAscending');\r\n sessionStorage.removeItem('savePreviousUrl');\r\n sessionStorage.removeItem('saveFilterOprator');\r\n sessionStorage.removeItem('saveFilterFromDate');\r\n sessionStorage.removeItem('saveFilterToDate');\r\n sessionStorage.removeItem('saveFilterListOfType');\r\n sessionStorage.removeItem('saveFilterIsActionRequired');\r\n }\r\n}\r\n\r\n","export default \".padleft {\\r\\n padding-left: 12px;\\r\\n cursor: pointer;\\r\\n}\\r\\n.logo img.act {\\r\\n display: none;\\r\\n}\\r\\n.logo .active img {\\r\\n display: none;\\r\\n}\\r\\n.logo .active .act {\\r\\n display: inline-block;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvTGF5b3V0L3NpdGUtbGF5b3V0L3NpdGUtbGF5b3V0LmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxrQkFBa0I7RUFDbEIsZUFBZTtBQUNqQjtBQUNBO0VBQ0UsYUFBYTtBQUNmO0FBRUE7RUFDRSxhQUFhO0FBQ2Y7QUFFQTtFQUNFLHFCQUFxQjtBQUN2QiIsImZpbGUiOiJzcmMvYXBwL0xheW91dC9zaXRlLWxheW91dC9zaXRlLWxheW91dC5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnBhZGxlZnQge1xyXG4gIHBhZGRpbmctbGVmdDogMTJweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuLmxvZ28gaW1nLmFjdCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmxvZ28gLmFjdGl2ZSBpbWcge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5sb2dvIC5hY3RpdmUgLmFjdCB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcbiJdfQ== */\"","import { Component, OnInit, Inject, DebugElement } from '@angular/core';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { Router, NavigationEnd } from '@angular/router';\r\nimport { updatesService } from '../../../Services/updatesService';\r\nimport { updatesPageModel } from '../../../Models/updatesPageModel';\r\nimport { UsersService } from 'src/Services/users.service';\r\nimport { iprupdatesService } from '../../../Services/iprupdatesService';\r\n// import { timingSafeEqual } from 'crypto';\r\nimport { ActionActivity, ToolEnum } from '../../../Models/Common';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { RmdupdatesService } from 'src/Services/rmdupdates.service';\r\nimport { RMDProviderFilterModel } from 'src/Models/RMDProviderFilterModel';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\n\r\n@Component({\r\n selector: 'app-site-layout',\r\n templateUrl: './site-layout.component.html',\r\n styleUrls: ['./site-layout.component.css']\r\n})\r\nexport class SiteLayoutComponent implements OnInit {\r\n appModel: any;\r\n unread: number = 0;\r\n tokenKey: string = '';\r\n userID: number = 0;\r\n parameterModel = new updatesPageModel();\r\n ismenuactive: boolean = false;\r\n dt: string = '';\r\n baseURL: string = '';\r\n timesRun: number = 0;\r\n isUpdate: boolean = false;\r\n ClientSelectedTool: string = '';\r\n iprUnread: number = 0;\r\n productId: number = 1;\r\n\r\n isClickedOni360: boolean = false;\r\n isClickedOnWireless: boolean = false;\r\n isClickedOniPR: boolean = false;\r\n isClickedOnVoIp: boolean = false;\r\n isClickedOnRMD: boolean = false;\r\n isClickedOnActionItem: boolean = false;\r\n actionUnread: number = 0;\r\n loginName: string = ''\r\n companyName: string = ''\r\n rmdUnread: number = 0;\r\n isClickedOnIPCS: boolean = false;\r\n\r\n constructor(private actionServices: ActionItemService, private toastr: ToastrService, private userService: UsersService, private router: Router,\r\n private updatesService: updatesService, private iprupdatesService: iprupdatesService, private rmdupdatesService: RmdupdatesService\r\n , @Inject('BASE_URL') baseUrl: string, private appActivity: ApplicationActivityService) {\r\n this.loginName = sessionStorage.getItem('FirstLastName');\r\n this.companyName = sessionStorage.getItem('CompanyName');\r\n this.timesRun = 0;\r\n this.baseURL = baseUrl;\r\n if (sessionStorage.getItem('UserId') != '' && sessionStorage.getItem('UserId') != undefined && sessionStorage.getItem('UserId') != null) {\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.userID = +sessionStorage.getItem('UserId');\r\n }\r\n else {\r\n this.router.navigate(['/login']);\r\n }\r\n\r\n router.events.forEach((event) => {\r\n if (event instanceof NavigationEnd) {\r\n //this.ismenuactive = true;\r\n this.ismenuactive = event.url.indexOf('Update') > -1;\r\n }\r\n });\r\n\r\n this.dt = Date();\r\n\r\n if (sessionStorage.getItem('ClientLoginTool') != '' && sessionStorage.getItem('ClientLoginTool') != null) {\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n }\r\n else {\r\n this.resetTools();\r\n this.isClickedOni360 = true;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n if (this.productId == ToolEnum.wireless || this.productId == ToolEnum.voip)\r\n this.GetUpdates(true);\r\n else if(this.productId==ToolEnum.ipcs)\r\n this.GetIPCSUpdates(true);\r\n else if (this.productId == ToolEnum.ipr)\r\n this.GetIPRNotification(true);\r\n else if (this.productId == ToolEnum.actionitem) {\r\n this.GetActionUpdates(true);\r\n }\r\n else if (this.productId == ToolEnum.rmd) {\r\n this.GetRMDNotification(true);\r\n }\r\n }\r\n\r\n Logout() {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.userService.UserLogout(this.tokenKey, this.userID).subscribe(\r\n data => {\r\n sessionStorage.removeItem('UserId');\r\n sessionStorage.removeItem('tokenValue');\r\n sessionStorage.removeItem('appStartTime');\r\n let isUserByPass = sessionStorage.getItem('isUserByPass');\r\n sessionStorage.removeItem('isUserByPass');\r\n sessionStorage.removeItem('ClientLoginTool');\r\n sessionStorage.removeItem('ClientAccessibleTools');\r\n\r\n sessionStorage.removeItem('dashboardSettingFromDate');\r\n sessionStorage.removeItem('dashboardSettingToDate');\r\n sessionStorage.removeItem('dashboardSettingIsFavorite');\r\n sessionStorage.removeItem('dashboardSettingIsMyTracIt');\r\n\r\n if (isUserByPass == 'AutoLogin') {\r\n window.location.href = this.baseURL + 'Logout.aspx';\r\n }\r\n else {\r\n this.router.navigate(['/login']);\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n }\r\n );\r\n }\r\n updates() {\r\n this.GetNotification(false);\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n GetIPCSUpdates(onlynotification): void {\r\n this.timesRun = 0;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.parameterModel.pageIndex = '1';\r\n this.parameterModel.pageSize = '10000';\r\n this.parameterModel.orderBy = \"UpdateDate desc\";\r\n this.parameterModel.keywordFilter = 'null';\r\n this.parameterModel.whereCondition = 'null';\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.parameterModel.userID = sessionStorage.getItem('UserId');\r\n this.parameterModel.unreadonly = \"1\";\r\n this.unread = 0;\r\n this.updatesService.GetIPCSupdatesfindByUserIDByCount(this.tokenKey, this.parameterModel).subscribe(\r\n data => {\r\n this.timesRun = 0;\r\n if (data[\"status\"] == \"Success\") {\r\n this.unread = data[\"updates\"];\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n if (!onlynotification && !this.ismenuactive) {\r\n if (this.unread > 0) {\r\n ApplicationActivityStore('View', 'IPCS PRO - Updates', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Update', null);\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Update'], { queryParams: { data: 'unread' } });\r\n }\r\n\r\n else {\r\n ApplicationActivityStore('View', 'IPCS PRO - Updates', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Update', null);\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Update'], { queryParams: { data: 'all' } });\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.unread = 0;\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n },\r\n );\r\n }\r\n\r\n GetUpdates(onlynotification): void {\r\n this.timesRun = 0;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.parameterModel.pageIndex = '1';\r\n this.parameterModel.pageSize = '10000';\r\n this.parameterModel.orderBy = \"UpdateDate desc\";\r\n this.parameterModel.keywordFilter = 'null';\r\n this.parameterModel.whereCondition = 'null';\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.parameterModel.userID = sessionStorage.getItem('UserId');\r\n this.parameterModel.unreadonly = \"1\";\r\n this.parameterModel.productId = this.productId.toString();\r\n this.unread = 0;\r\n this.updatesService.getupdatesfindByUserIDByCount(this.tokenKey, this.parameterModel).subscribe(\r\n data => {\r\n this.timesRun = 0;\r\n if (data[\"status\"] == \"Success\") {\r\n this.unread = data[\"updates\"];\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n if (!onlynotification && !this.ismenuactive) {\r\n if (this.unread > 0) {\r\n\r\n if (this.ClientSelectedTool == 'wireless') {\r\n ApplicationActivityStore('View', 'Wireless PRO - Updates', this.appActivity, ToolEnum.wireless, ActionActivity.Wireless, '/wireless/Update', null);\r\n }\r\n else if (this.ClientSelectedTool == 'ipcs') {\r\n ApplicationActivityStore('View', 'IPCS PRO - Updates', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Update', null);\r\n }\r\n else {\r\n ApplicationActivityStore('View', 'VoIP PRO - Updates', this.appActivity, ToolEnum.voip, ActionActivity.VoIP, '/voip/Update', null);\r\n }\r\n\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Update'], { queryParams: { data: 'unread' } });\r\n }\r\n\r\n else {\r\n\r\n if (this.ClientSelectedTool == 'wireless') {\r\n ApplicationActivityStore('View', 'Wireless PRO - Updates', this.appActivity, ToolEnum.wireless, ActionActivity.Wireless, '/wireless/Update', null);\r\n }\r\n else if (this.ClientSelectedTool == 'ipcs') {\r\n ApplicationActivityStore('View', 'IPCS PRO - Updates', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Update', null);\r\n }\r\n else {\r\n ApplicationActivityStore('View', 'VoIP PRO - Updates', this.appActivity, ToolEnum.voip, ActionActivity.VoIP, '/voip/Update', null);\r\n }\r\n\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Update'], { queryParams: { data: 'all' } });\r\n }\r\n }\r\n }\r\n // var interval = setInterval(() => {\r\n // this.timesRun += 1;\r\n // if (this.timesRun >= 100) {\r\n // this.isUpdate = true; \r\n // clearInterval(interval);\r\n // }\r\n // if (this.timesRun <= 100) {\r\n // this.isUpdate = false; \r\n // }\r\n // }, 1);\r\n //this.updateSession();\r\n },\r\n error => {\r\n this.unread = 0;\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n },\r\n );\r\n }\r\n\r\n GetActionUpdates(isClickOnActionUpdate: any): void {\r\n if (isClickOnActionUpdate) {\r\n this.timesRun = 0;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.parameterModel.userID = sessionStorage.getItem('UserId');\r\n this.actionUnread = 0;\r\n this.actionServices.GetActionItemSearchListForUpdateCount(this.tokenKey, sessionStorage.getItem('UserId')).subscribe(\r\n data => {\r\n this.timesRun = 0;\r\n if (data[\"status\"] == \"Success\") {\r\n this.actionUnread = data[\"unreadReacord\"];\r\n sessionStorage.setItem('actionUnread',this.actionUnread.toString());\r\n }\r\n },\r\n error => {\r\n this.actionUnread = 0;\r\n },\r\n );\r\n }\r\n else\r\n this.actionUnread = 0;\r\n }\r\n\r\n // updateSession() {\r\n // var interval = setInterval(() => {\r\n // this.timesRun += 1;\r\n // if (this.timesRun >= 100) { \r\n // clearInterval(interval);\r\n // }\r\n // if (this.timesRun <= 100) {\r\n // this.unread = +sessionStorage.getItem('unread'); \r\n // }\r\n // }, 1);\r\n // }\r\n\r\n GetNotification(onlynotification) {\r\n if (this.ClientSelectedTool == 'wireless') {\r\n ApplicationActivityStore('View', 'Wireless PRO', this.appActivity, ToolEnum.wireless, ActionActivity.Wireless, '/wireless/Matrix', null);\r\n }\r\n else if (this.ClientSelectedTool == 'ipcs') {\r\n ApplicationActivityStore('View', 'IPCS PRO', this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix', null);\r\n }\r\n else {\r\n ApplicationActivityStore('View', 'VoIP PRO', this.appActivity, ToolEnum.voip, ActionActivity.VoIP, '/voip/Matrix', null);\r\n }\r\n if (this.ClientSelectedTool == 'ipcs') {\r\n this.GetIPCSUpdates(onlynotification);\r\n }\r\n else{\r\n this.GetUpdates(onlynotification);\r\n }\r\n }\r\n GetIPRNotification(onlynotification): void {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.userID = +sessionStorage.getItem('UserId');\r\n this.iprupdatesService.GetIPRUpdatesUnread(this.tokenKey, this.userID).subscribe(\r\n data => {\r\n this.timesRun = 0;\r\n if (data[\"status\"] == \"Success\") {\r\n this.iprUnread = data[\"updates\"].length;\r\n if (!onlynotification && !this.ismenuactive) {\r\n if (this.iprUnread > 0) {\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Updates'], { queryParams: { data: 'unread' } });\r\n }\r\n else {\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Updates'], { queryParams: { data: 'all' } });\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n this.unread = 0;\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n },\r\n );\r\n }\r\n\r\n GetRMDNotification(onlynotification): void {\r\n if (!onlynotification && !this.ismenuactive) {\r\n this.router.navigate(['/' + this.ClientSelectedTool + '/Updates']);\r\n }\r\n else {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n const userId = +sessionStorage.getItem('UserId');\r\n this.rmdupdatesService.GetRMDUpdatesUnreadCount(this.tokenKey, userId).subscribe(\r\n data => {\r\n this.timesRun = 0;\r\n if (data[\"status\"] == \"Success\") {\r\n this.rmdUnread = data[\"unreadCount\"];\r\n }\r\n },\r\n error => {\r\n this.unread = 0;\r\n sessionStorage.setItem('unread', this.unread.toString());\r\n },\r\n );\r\n }\r\n\r\n }\r\n\r\n // clearDashbaordSessionSetting() {\r\n // sessionStorage.removeItem('dashboardSettingFromDate');\r\n // sessionStorage.removeItem('dashboardSettingToDate');\r\n // sessionStorage.removeItem('dashboardSettingIsFavorite');\r\n // sessionStorage.removeItem('dashboardSettingIsMyTracIt');\r\n // }\r\n\r\n SetTool(ToolType: string) {\r\n //this.clearDashbaordSessionSetting();\r\n this.varibleSetFalse();\r\n\r\n if (ToolEnum[ToolType] == ToolEnum.wireless)\r\n this.isClickedOnWireless = true;\r\n else if (ToolEnum[ToolType] == ToolEnum.ipr)\r\n this.isClickedOniPR = true;\r\n else if (ToolEnum[ToolType] == ToolEnum.voip)\r\n this.isClickedOnVoIp = true;\r\n else if (ToolEnum[ToolType] == ToolEnum.ipcs)\r\n this.isClickedOnIPCS = true;\r\n else if (ToolEnum[ToolType] == ToolEnum.actionitem) {\r\n this.isClickedOnActionItem = true;\r\n }\r\n else if (ToolEnum[ToolType] == ToolEnum.rmd) {\r\n this.isClickedOnRMD = true;\r\n }\r\n\r\n var AccessibleTools = sessionStorage.getItem('ClientAccessibleTools');\r\n if (AccessibleTools.toLowerCase().indexOf(ToolType.toLowerCase()) !== -1) {\r\n this.ClientSelectedTool = ToolType;\r\n sessionStorage.setItem('ClientLoginTool', ToolType);\r\n if (ToolType == ToolEnum[ToolEnum.ipr]) {\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.GetIPRNotification(true);\r\n }\r\n else if (ToolType == ToolEnum[ToolEnum.wireless] || ToolType == ToolEnum[ToolEnum.voip] || ToolType == ToolEnum[ToolEnum.ipcs]) {\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.GetNotification(true);\r\n }\r\n else if (ToolType == ToolEnum[ToolEnum.actionitem]) {\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n }\r\n else if (ToolType == ToolEnum[ToolEnum.rmd]) {\r\n this.GetRMDNotification(true);\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n }\r\n if (this.productId == ToolEnum.actionitem) {\r\n this.router.navigate(['/trac-it/Dashboard']);\r\n }\r\n else if (this.ClientSelectedTool == 'trac-it') {\r\n this.router.navigate([this.ClientSelectedTool + '/Dashboard']);\r\n }\r\n else if (this.ClientSelectedTool == 'wireless' || this.ClientSelectedTool == 'voip' || this.ClientSelectedTool == 'ipcs') {\r\n this.router.navigate([this.ClientSelectedTool + '/Matrix']);\r\n }\r\n else if (this.ClientSelectedTool == 'ipr' || this.ClientSelectedTool == 'rmd') {\r\n this.router.navigate([this.ClientSelectedTool + '/Providers']);\r\n }\r\n else\r\n this.router.navigate([this.ClientSelectedTool + '/Home']);\r\n }\r\n else {\r\n if (ToolType === 'i360') {\r\n this.isClickedOni360 = true;\r\n this.router.navigate(['/Home']);\r\n }\r\n else {\r\n sessionStorage.setItem('ClientAccessDeniedTool', ToolType);\r\n if (ToolType == ToolEnum[ToolEnum.actionitem])\r\n this.router.navigate(['/trac-it/access-denied']);\r\n else\r\n this.router.navigate(['/' + ToolType + '/access-denied']);\r\n }\r\n }\r\n }\r\n\r\n varibleSetFalse() {\r\n this.ClientSelectedTool = '';\r\n this.isClickedOnWireless = false;\r\n this.isClickedOniPR = false;\r\n this.isClickedOnVoIp = false;\r\n this.isClickedOnIPCS=false;\r\n this.isClickedOnActionItem = false;\r\n this.isClickedOni360 = false;\r\n this.isClickedOnRMD = false;\r\n }\r\n\r\n resetTools() {\r\n this.varibleSetFalse();\r\n this.ClientSelectedTool = '';\r\n this.productId = 0;\r\n this.isClickedOni360 = true;\r\n }\r\n\r\n redirectToi360() {\r\n if (window.location.href.indexOf('stagingiris') == -1)\r\n window.location.href = 'https://inteserra360.com';\r\n else\r\n window.location.href = 'https://staging.inteserra360.com';\r\n }\r\n}","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL1NoYXJlZC9hY3Rpb24taXRlbS1kZXRhaWxzLXBvcHVwL2FjdGlvbi1pdGVtLWRldGFpbHMtcG9wdXAuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ActionItemSearchModel } from 'src/Models/ActionItemSearchModel';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { NgbActiveModal,NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { EditActionPopupComponent } from '../edit-action-popup/edit-action-popup.component';\r\n\r\n@Component({\r\n selector: 'app-action-item-details-popup',\r\n templateUrl: './action-item-details-popup.component.html',\r\n styleUrls: ['./action-item-details-popup.component.css']\r\n})\r\nexport class ActionItemDetailsPopupComponent implements OnInit {\r\n\r\n stateArray: any = [];\r\n carrierCategoryArray: any = [];\r\n actionItemSearchModel = new ActionItemSearchModel()\r\n\r\n tokenKey: string = '';\r\n companyId: number = 0;\r\n userId: number = 0;\r\n actionId: number = 0;\r\n updateId: number = 0;\r\n productId: number = 0;\r\n briefingId: number = 0;\r\n\r\n isAccordianShow: boolean = false;\r\n isHoverButtonClick: boolean = false;\r\n closeText = 'no';\r\n \r\n constructor(private actionItemServices: ActionItemService, private checkAuth: CheckAuth, public activeModal: NgbActiveModal) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.companyId = +sessionStorage.getItem(\"CompanyId\");\r\n this.userId = +sessionStorage.getItem('UserId');\r\n this.productId = +sessionStorage.getItem('productId');\r\n this.updateId = +sessionStorage.getItem('updateId');\r\n this.actionId = +sessionStorage.getItem('actionId');\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n ngOnInit() {\r\n sessionStorage.removeItem('productId');\r\n sessionStorage.removeItem('updateId');\r\n sessionStorage.removeItem('actionId');\r\n\r\n this.ActionItemSearchByIds(this.userId, this.updateId, this.actionId, this.briefingId);\r\n }\r\n\r\n\r\n ActionItemSearchByIds(userId: any, updateId: any, actionId: any, briefingId) {\r\n this.actionItemServices.ActionItemSearchByIds(this.tokenKey, userId, updateId, actionId, briefingId).subscribe(\r\n data => {\r\n\r\n if (data['status'] == 'Success') {\r\n this.actionItemSearchModel = data['actionItemSearchModel'];\r\n\r\n if (this.actionItemSearchModel.stateName != 'null' && typeof (this.actionItemSearchModel.stateName) != 'undefined') {\r\n this.stateArray = this.actionItemSearchModel.stateName.split(',');\r\n }\r\n if (this.actionItemSearchModel.carrierNames != 'null' && typeof (this.actionItemSearchModel.carrierNames) != 'undefined') {\r\n this.carrierCategoryArray = this.actionItemSearchModel.carrierNames.split(',');\r\n }\r\n }\r\n });\r\n }\r\n \r\n editComplete(event) {\r\n debugger;\r\n this.ActionItemSearchByIds(this.userId, this.updateId, this.actionId, this.briefingId);\r\n this.closeText = 'Reload';\r\n }\r\n deleteComplete() {\r\n this.activeModal.close('Reload')\r\n }\r\n\r\n}\r\n","export default \"::ng-deep #deleteActionItemModal {\\r\\n z-index: 99999999999 !important;\\r\\n }\\r\\n\\r\\n /* ::ng-deep #divcc .ui-accordion-header-text{\\r\\n color: gray; \\r\\n } */\\r\\n\\r\\n ::ng-deep #divcc p{\\r\\n color: rgb(255,0,0);\\r\\n margin-left: 10px;\\r\\n margin-right: 10px;\\r\\n padding-top: 1px\\r\\n }\\r\\n\\r\\n ::ng-deep .ql-editor\\r\\n {\\r\\n padding-top: 0px;\\r\\n padding-bottom: 0px;\\r\\n }\\r\\n\\r\\n ::ng-deep #divcc .ng-star-inserted\\r\\n {\\r\\n background-color: rgb(229,226,226);\\r\\n }\\r\\n\\r\\n ::ng-deep #divcc .ui-accordion-content\\r\\n {\\r\\n background-color: rgb(229,226,226);\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvU2hhcmVkL2FjdGlvbi1pdGVtLWRldGFpbHMvYWN0aW9uLWl0ZW0tZGV0YWlscy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksK0JBQStCO0VBQ2pDOztFQUVBOztLQUVHOztFQUNIO0lBQ0UsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEI7RUFDRjs7RUFHQTs7SUFFRSxnQkFBZ0I7SUFDaEIsbUJBQW1CO0VBQ3JCOztFQUVBOztJQUVFLGtDQUFrQztFQUNwQzs7RUFFQTs7SUFFRSxrQ0FBa0M7RUFDcEMiLCJmaWxlIjoic3JjL2FwcC9TaGFyZWQvYWN0aW9uLWl0ZW0tZGV0YWlscy9hY3Rpb24taXRlbS1kZXRhaWxzLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6Om5nLWRlZXAgI2RlbGV0ZUFjdGlvbkl0ZW1Nb2RhbCB7XHJcbiAgICB6LWluZGV4OiA5OTk5OTk5OTk5OSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLyogOjpuZy1kZWVwICNkaXZjYyAudWktYWNjb3JkaW9uLWhlYWRlci10ZXh0e1xyXG4gICAgY29sb3I6IGdyYXk7IFxyXG4gIH0gKi9cclxuICA6Om5nLWRlZXAgI2RpdmNjIHB7XHJcbiAgICBjb2xvcjogcmdiKDI1NSwwLDApO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMXB4XHJcbiAgfVxyXG4gIFxyXG5cclxuICA6Om5nLWRlZXAgLnFsLWVkaXRvclxyXG4gIHtcclxuICAgIHBhZGRpbmctdG9wOiAwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xyXG4gIH1cclxuXHJcbiAgOjpuZy1kZWVwICNkaXZjYyAubmctc3Rhci1pbnNlcnRlZFxyXG4gIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyMjksMjI2LDIyNik7XHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcCAjZGl2Y2MgLnVpLWFjY29yZGlvbi1jb250ZW50XHJcbiAge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyOSwyMjYsMjI2KTtcclxuICB9Il19 */\"","import { Component, OnInit, Input, EventEmitter, Output} from '@angular/core';\r\nimport { ActionItemSearchModel } from 'src/Models/ActionItemSearchModel';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport * as FileSaver from 'file-saver';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { EditActionPopupComponent } from '../edit-action-popup/edit-action-popup.component';\r\nimport { ActionItemDetailsPopupComponent } from '../action-item-details-popup/action-item-details-popup.component';\r\n\r\n@Component({\r\n selector: 'app-action-item-details',\r\n templateUrl: './action-item-details.component.html',\r\n styleUrls: ['./action-item-details.component.css']\r\n})\r\nexport class ActionItemDetailsComponent implements OnInit {\r\n @Input() actionItem = new ActionItemSearchModel();\r\n @Input() stateArray: any = [];\r\n @Input() carrierCategoryArray: any = [];\r\n @Input() isAccordianShow: any = [];\r\n @Output('editItemReload') editItemReload = new EventEmitter();\r\n @Output('deleteItemReload') deleteItemReload = new EventEmitter();\r\n displayState: string;\r\n tokenKey = '';\r\n isShowprogressSpinner: boolean;\r\n blockedDocument: boolean;\r\n isHoverButtonClick: boolean = false;\r\n productId: number = 0;\r\n actionId: number = 0;\r\n userId = 0;\r\n isAccess=false;\r\n\r\n constructor(private actionService: ActionItemService, private toastr: ToastrService, private modalService: NgbModal,\r\n private actionItemDetailsPopupComponent: ActionItemDetailsPopupComponent) {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.productId = +sessionStorage.getItem('productId');\r\n this.userId = +sessionStorage.getItem('UserId');\r\n }\r\n\r\n ngOnInit() {\r\nif(sessionStorage.getItem('CompanyName').includes('FAStek') ||sessionStorage.getItem('CompanyName').includes('Inteserra'))\r\n{\r\n this.isAccess=true;//sessionStorage.setItem('CompanyName', this.userModel.companyName);\r\n }\r\n else\r\n {\r\n this.isAccess=false;\r\n }\r\n}\r\n\r\n downloadocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n this.actionService.DownloadDocument(this.tokenKey, { DocType: 'BriefingDoc', DocPath: this.actionItem.briefingDocPath }).subscribe(\r\n fileData => {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n if (fileData != null) {\r\n FileSaver.saveAs(fileData, this.actionItem.displayBriefingDocName);\r\n this.toastr.success('File Downloaded.');\r\n }\r\n }, error => {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n console.log(error);\r\n });\r\n }\r\n\r\n showListPopupHover() {\r\n this.isHoverButtonClick = false;\r\n if (+this.actionItem.actionItemTypeId == 5) {\r\n this.actionId = +this.actionItem.actionId;\r\n this.editAction(this.actionId)\r\n this.isHoverButtonClick = true;\r\n // this.listoverlayPanel.show(event, event.target);\r\n }\r\n }\r\n editAction(actionId) {\r\n sessionStorage.setItem('EditActionId', actionId);\r\n sessionStorage.setItem('productId', this.productId.toString());\r\n const modalRef = this.modalService.open(EditActionPopupComponent, { windowClass: \"EditActionPopup\"}).result.then(\r\n result => {\r\n if (result == 'Yes') {\r\n this.isHoverButtonClick = false;\r\n this.editItemReload.emit();\r\n }\r\n },\r\n reason => {\r\n this.isHoverButtonClick = false;\r\n });\r\n }\r\n DeleteRecord(type) {\r\n const actionid = type == 1 ? this.actionItem.actionId : 0;\r\n const recurranceId = type == 2 ? this.actionItem.recurranceId : 0;\r\n this.actionService.DeleteAction(this.tokenKey, actionid, recurranceId, this.userId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.toastr.success('Record deleted successfully.', 'Success');\r\n this.deleteItemReload.emit();\r\n }\r\n this.isHoverButtonClick = false;\r\n },\r\n error => {\r\n this.isHoverButtonClick = false;\r\n this.toastr.error(error, 'Error');\r\n }\r\n );\r\n }\r\n\r\n}\r\n","export default \".smalltext {\\r\\n font-size: 12px;\\r\\n font-weight: 100;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvU2hhcmVkL2FjdGlvbi1zdGF0dXMtcG9wdXAvYWN0aW9uLXN0YXR1cy1wb3B1cC5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksZUFBZTtJQUNmLGdCQUFnQjtFQUNsQiIsImZpbGUiOiJzcmMvYXBwL1NoYXJlZC9hY3Rpb24tc3RhdHVzLXBvcHVwL2FjdGlvbi1zdGF0dXMtcG9wdXAuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5zbWFsbHRleHQge1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcclxuICB9Il19 */\"","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { UsersService } from 'src/Services/users.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { userModel } from 'src/Models/usersModel';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { ActionItemSearchModel } from 'src/Models/ActionItemSearchModel';\r\nimport { ActionItemUpdateStatusModel } from 'src/Models/ActionItemUpdateStatusModel';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ActionItemSearchStatusHistoryModel } from 'src/Models/ActionItemSearchStatusHistoryModel';\r\nimport { Router } from '@angular/router';\r\nimport { ActionStatusList } from '../../../Models/Common';\r\n\r\n@Component({\r\n selector: 'app-action-status-popup',\r\n templateUrl: './action-status-popup.component.html',\r\n styleUrls: ['./action-status-popup.component.css']\r\n})\r\nexport class ActionStatusPopupComponent implements OnInit {\r\n tokenKey: string = '';\r\n userModel: userModel[];\r\n actionItemUpdateStatusModel = new ActionItemUpdateStatusModel();\r\n\r\n dropdownUserSettings = {};\r\n selectedItemsUser = [];\r\n dropdownListUser = [];\r\n\r\n dropdownStatusSettings = {};\r\n selectedItemsStatus = [];\r\n dropdownListStatus = [];\r\n newStatus: number = -1;\r\n\r\n companyId: number = 0;\r\n userId: number = 0;\r\n actionId: number = 0;\r\n updateId: number = 0;\r\n productId: number = 0;\r\n notes: string = '';\r\n\r\n isHideAssignToUser: boolean = false;\r\n isHideRadioOption: boolean = false;\r\n isShowHideExrtaChargeAndNote: boolean = false;\r\n\r\n isOneClickOnButton: boolean = false;\r\n\r\n dropdownListReminder = [];\r\n selectedItemsReminder = [];\r\n dropdownSingleSettings = {};\r\n isReminderUser = false;\r\n selectedItemsReminderUsers = [];\r\n dropdownUsersSettings = {};\r\n\r\n\r\n updateActionStatus = new FormGroup({\r\n assignToUser: new FormControl(''),\r\n status: new FormControl(''),\r\n handleType: new FormControl(''),\r\n notes: new FormControl(''),\r\n actionID: new FormControl(''),\r\n updateID: new FormControl(''),\r\n isInformationOnly: new FormControl(false),\r\n briefingId: new FormControl(''),\r\n reminder: new FormControl(''),\r\n reminderUsers: new FormControl(''),\r\n });\r\n\r\n actionItemSearchModel = new ActionItemSearchModel()\r\n actionItemSearchStatusHistoryModel: ActionItemSearchStatusHistoryModel[];\r\n isActionItemSearchStatusHistoryData: boolean = false;\r\n\r\n stateArray: any = [];\r\n carrierCategoryArray: any = [];\r\n isAccordianShow: boolean = true;\r\n\r\n previousAssingId: number;\r\n emaliAutoLoginUserId: number = 0;\r\n assignToId: number = 0;\r\n isNoteVisible: boolean = false;\r\n\r\n previousStatus: number = -1;\r\n briefingId: number = 0;\r\n closeText = '';\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n constructor(private router: Router, private toastr: ToastrService, private actionItemServices: ActionItemService, private checkAuth: CheckAuth, private usersService: UsersService, public activeModal: NgbActiveModal) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n }\r\n\r\n ngOnInit() {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.companyId = +sessionStorage.getItem(\"CompanyId\");\r\n this.userId = +sessionStorage.getItem('UserId');\r\n this.productId = +sessionStorage.getItem('productId');\r\n this.updateId = +sessionStorage.getItem('updateId');\r\n this.actionId = +sessionStorage.getItem('actionId');\r\n this.briefingId = +sessionStorage.getItem('briefingId');\r\n this.emaliAutoLoginUserId = +sessionStorage.getItem('emailUserId');\r\n this.GetAllReminders();\r\n\r\n this.dropdownSingleSettings = {\r\n singleSelection: true,\r\n text: \"Select\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No record available',\r\n showCheckbox: false,\r\n };\r\n\r\n sessionStorage.removeItem('productId');\r\n sessionStorage.removeItem('updateId');\r\n sessionStorage.removeItem('actionId');\r\n sessionStorage.removeItem('emailUserId');\r\n sessionStorage.removeItem('briefingId');\r\n\r\n this.ActionItemSearchByIds(this.userId, this.updateId, this.actionId, this.briefingId);\r\n this.GetActionItemSearchStatusHistory(this.userId, this.updateId, this.actionId, this.briefingId);\r\n this.selectedItemsReminder = this.dropdownListReminder.filter(x => x.id == 'None');\r\n }\r\n\r\n GetActionItemSearchStatusHistory(userId: any, updateId: any, actionId: any, briefingId: any) {\r\n this.actionItemServices.GetActionItemSearchStatusHistory(this.tokenKey, userId, updateId, actionId, briefingId).subscribe(\r\n data => {\r\n\r\n if (data['status'] == 'Success') {\r\n this.actionItemSearchStatusHistoryModel = data['actionItemSearchHistoryModel'];\r\n if (this.actionItemSearchStatusHistoryModel != null) {\r\n if (this.actionItemSearchStatusHistoryModel.length == 0) {\r\n this.isActionItemSearchStatusHistoryData = true;\r\n }\r\n else\r\n this.isActionItemSearchStatusHistoryData = false;\r\n\r\n }\r\n }\r\n });\r\n }\r\n\r\n ActionItemSearchByIds(userId: any, updateId: any, actionId: any, briefingId: any) {\r\n this.actionItemServices.ActionItemSearchByIds(this.tokenKey, userId, updateId, actionId, briefingId).subscribe(\r\n data => {\r\n\r\n if (data['status'] == 'Success') {\r\n this.actionItemSearchModel = data['actionItemSearchModel'];\r\n\r\n if (this.actionItemSearchModel != null) {\r\n if (this.actionItemSearchModel.handleType == '2')\r\n this.isNoteVisible = true;\r\n else\r\n this.isNoteVisible = false;\r\n }\r\n else\r\n this.isNoteVisible = false;\r\n\r\n //this.briefingId=+this.actionItemSearchModel.briefingId;\r\n\r\n if (this.actionItemSearchModel != null) {\r\n this.isHideAssignToUser = this.actionItemSearchModel.isHideAssignToUser.toString() == 'true' ? true : false;\r\n this.isHideRadioOption = this.actionItemSearchModel.isHideRadioOption.toString() == 'true' ? true : false;\r\n // if (this.actionItemSearchModel.actionCharges > 0)\r\n // this.isShowHideExrtaChargeAndNote = true;\r\n // else\r\n // this.isShowHideExrtaChargeAndNote = false;\r\n }\r\n\r\n this.GetUsersFindByCompanyId(this.companyId);\r\n // this.GetUsersFindByCompanyIdRemoveLoginUser(this.companyId);\r\n this.GetActionStatus();\r\n if (this.actionItemSearchModel.stateName != 'null' && typeof (this.actionItemSearchModel.stateName) != 'undefined') {\r\n this.stateArray = this.actionItemSearchModel.stateName.split(',');\r\n }\r\n if (this.actionItemSearchModel.carrierNames != 'null' && typeof (this.actionItemSearchModel.carrierNames) != 'undefined') {\r\n this.carrierCategoryArray = this.actionItemSearchModel.carrierNames.split(',');\r\n }\r\n }\r\n });\r\n }\r\n\r\n GetUsersFindByCompanyId(companyId: any) {\r\n this.usersService.GetUsersFindByCompanyId(this.tokenKey, companyId, this.productId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.userModel = data['companyUsers'];\r\n if (this.userModel != null) {\r\n if (this.userModel.length > 0) {\r\n for (let iCounter = 0; iCounter < this.userModel.length; iCounter++) {\r\n this.dropdownListUser.push({ \"id\": parseInt(this.userModel[iCounter].userId), \"itemName\": this.userModel[iCounter].userName });\r\n }\r\n }\r\n }\r\n }\r\n\r\n\r\n if (this.emaliAutoLoginUserId > 0) {\r\n for (let iCounter = 0; iCounter < this.userModel.length; iCounter++) {\r\n if (this.emaliAutoLoginUserId == parseInt(this.userModel[iCounter].userId)) {\r\n this.selectedItemsUser.push({ \"id\": parseInt(this.userModel[iCounter].userId), \"itemName\": this.userModel[iCounter].userName });\r\n this.previousAssingId = parseInt(this.userModel[iCounter].userId);\r\n }\r\n }\r\n }\r\n else {\r\n if (this.actionItemSearchModel.assignToId != null && this.actionItemSearchModel.assignToId != '') {\r\n for (let iCounter = 0; iCounter < this.userModel.length; iCounter++) {\r\n if (this.userModel[iCounter].userId == this.actionItemSearchModel.assignToId) {\r\n this.selectedItemsUser.push({ \"id\": parseInt(this.userModel[iCounter].userId), \"itemName\": this.userModel[iCounter].userName });\r\n this.previousAssingId = parseInt(this.userModel[iCounter].userId);\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.dropdownUserSettings = {\r\n singleSelection: true,\r\n text: \"Select User\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No user available',\r\n showCheckbox: false\r\n };\r\n });\r\n }\r\n\r\n\r\n\r\n onSelectedUser($event) {\r\n this.assignToId = $event.id;\r\n }\r\n\r\n onDeSelectedUser($event) {\r\n this.assignToId = 0;\r\n }\r\n\r\n onDeSelectedAllUser($event) {\r\n this.assignToId = 0;\r\n }\r\n\r\n GetActionStatus() {\r\n this.actionItemServices.GetActionStatus(this.tokenKey).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n let actionStatus = data['companyModel'];\r\n if (actionStatus != null) {\r\n if (actionStatus.length > 0) {\r\n this.dropdownListStatus=[];\r\n this.selectedItemsStatus=[];\r\n for (let iCounter = 0; iCounter < actionStatus.length; iCounter++) {\r\n if (parseInt(actionStatus[iCounter].statusId) != ActionStatusList.informativeonly)\r\n this.dropdownListStatus.push({ \"id\": parseInt(actionStatus[iCounter].statusId), \"itemName\": actionStatus[iCounter].statusName });\r\n }\r\n\r\n if (this.actionItemSearchModel != null) {\r\n this.selectedItemsReminder = this.dropdownListReminder.filter(x => x.id == this.actionItemSearchModel.reminder);\r\n if (this.actionItemSearchModel.reminder != null)\r\n this.selectedItemsReminderUsers = this.actionItemSearchModel.reminderUsers;\r\n this.actionItemSearchModel.reminder = this.actionItemSearchModel.reminder;\r\n if (this.actionItemSearchModel.reminder != 'None' && this.actionItemSearchModel.reminder != null)\r\n this.isReminderUser = true;\r\n }\r\n }\r\n }\r\n\r\n if (this.actionItemSearchModel.statusName != null && this.actionItemSearchModel.statusName != '') {\r\n for (let iCounter = 0; iCounter < actionStatus.length; iCounter++) {\r\n if (actionStatus[iCounter].statusName == this.actionItemSearchModel.statusName) {\r\n this.selectedItemsStatus.push({ \"id\": parseInt(actionStatus[iCounter].statusId), \"itemName\": actionStatus[iCounter].statusName });\r\n this.previousStatus = parseInt(actionStatus[iCounter].statusId);\r\n this.newStatus = parseInt(actionStatus[iCounter].statusId);\r\n }\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n this.dropdownStatusSettings = {\r\n singleSelection: true,\r\n text: \"Select Status\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No status available',\r\n showCheckbox: false\r\n };\r\n });\r\n }\r\n onSelectedStatus($event) {\r\n this.newStatus = $event.id\r\n }\r\n\r\n onDeSelectedStatus($event) {\r\n this.newStatus = -1\r\n }\r\n\r\n onDeSelectAllStatus($event) {\r\n this.newStatus = -1\r\n }\r\n\r\n UpdateActionItem(updateActionStatus: any, isButtonDisable: boolean) {\r\n event.preventDefault();\r\n\r\n if (updateActionStatus.value['updateID'] != undefined)\r\n this.actionItemUpdateStatusModel.updateId = updateActionStatus.value['updateID'];\r\n else\r\n this.actionItemUpdateStatusModel.updateId = 0;\r\n\r\n if (updateActionStatus.value['actionID'] != undefined)\r\n this.actionItemUpdateStatusModel.actionId = updateActionStatus.value['actionID'];\r\n else\r\n this.actionItemUpdateStatusModel.actionId = 0;\r\n\r\n if (updateActionStatus.value['briefingId'] != undefined)\r\n this.actionItemUpdateStatusModel.briefingId = updateActionStatus.value['briefingId'];\r\n else\r\n this.actionItemUpdateStatusModel.briefingId = 0;\r\n\r\n if (updateActionStatus.value['handleType'] != undefined && !this.isHideRadioOption)\r\n this.actionItemUpdateStatusModel.handleType = updateActionStatus.value['handleType'];\r\n else\r\n this.actionItemUpdateStatusModel.handleType = 0;\r\n\r\n //this.actionItemUpdateStatusModel = updateActionStatus.value;\r\n\r\n this.actionItemUpdateStatusModel.assignToId = this.assignToId;\r\n // for (let iCounter = 0; iCounter < updateActionStatus.controls[\"assignToUser\"].value.length; iCounter++) {\r\n // this.actionItemUpdateStatusModel.assignToId = this.assignToId;\r\n // }\r\n\r\n if (this.selectedItemsReminder.length > 0)\r\n this.actionItemUpdateStatusModel.reminder = this.selectedItemsReminder[0].id;\r\n if (this.actionItemUpdateStatusModel.reminder != 'None' && this.actionItemUpdateStatusModel.reminder != undefined && this.selectedItemsReminderUsers.length == 0) {\r\n this.showMessage('Please select reminder users', 'Error', 'error');\r\n return;\r\n }\r\n if (this.actionItemUpdateStatusModel.reminder != 'None' && this.selectedItemsReminderUsers.length > 0 && !this.selectedItemsReminderUsers.find(x => x.id == this.userId)) {\r\n this.showMessage('You can not remove current user from reminder user', 'Error', 'error');\r\n return;\r\n }\r\n\r\n this.actionItemUpdateStatusModel.reminderUsers = this.selectedItemsReminderUsers;\r\n\r\n if (this.newStatus == -1)\r\n this.newStatus = ActionStatusList.pending;\r\n\r\n this.actionItemUpdateStatusModel.statusId = this.newStatus;\r\n\r\n // Set when status is pending then set to ackowledged \r\n\r\n if (this.newStatus == ActionStatusList.pending && this.previousStatus != ActionStatusList.acknowledged &&\r\n !this.isHideRadioOption && updateActionStatus.value['handleType'] != undefined && updateActionStatus.value['handleType'] != '0') {\r\n this.actionItemUpdateStatusModel.statusId = ActionStatusList.acknowledged;\r\n }\r\n\r\n // for (let iCounter = 0; iCounter < updateActionStatus.controls[\"status\"].value.length; iCounter++) {\r\n // this.actionItemUpdateStatusModel.statusId = updateActionStatus.controls[\"status\"].value[iCounter].id;\r\n // }\r\n\r\n this.actionItemUpdateStatusModel.userID = this.userId;\r\n\r\n if (updateActionStatus.value['notes'] != undefined)\r\n this.actionItemUpdateStatusModel.note = updateActionStatus.value['notes'];\r\n else\r\n this.actionItemUpdateStatusModel.note = '';\r\n\r\n // if (updateActionStatus.value['alertText'] != undefined)\r\n // this.actionItemUpdateStatusModel.alertText = updateActionStatus.value['alertText'];\r\n // else\r\n // this.actionItemUpdateStatusModel.alertText = '';\r\n\r\n this.actionItemUpdateStatusModel.productId = this.productId;\r\n this.actionItemUpdateStatusModel.previousAssingId = this.previousAssingId;\r\n this.actionItemUpdateStatusModel.previousStatus = this.previousStatus;\r\n this.actionItemUpdateStatusModel.briefingId = this.briefingId;\r\n\r\n if (isButtonDisable) {\r\n console.log('client clicked on dubble click');\r\n return;\r\n }\r\n\r\n this.isOneClickOnButton = true;\r\n\r\n this.actionItemServices.ActionItemUpdateStatus(this.tokenKey, this.actionItemUpdateStatusModel).subscribe(\r\n data => {\r\n this.isOneClickOnButton = false;\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Trac-It status updated successfully', 'Success', 'success');\r\n this.activeModal.close('Yes');\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error');\r\n this.isOneClickOnButton = false;\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.isOneClickOnButton = false;\r\n }\r\n );\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n NoteVisible(isChecked: boolean) {\r\n this.isNoteVisible = isChecked;\r\n }\r\n // ShowHideExrtaChargeAndNote(selectedValue: any) {\r\n\r\n // }\r\n\r\n editComplete(event) {\r\n debugger;\r\n this.ActionItemSearchByIds(this.userId, this.updateId, this.actionId, this.briefingId);\r\n this.closeText = 'Reload';\r\n }\r\n deleteComplete() {\r\n this.activeModal.close('Reload')\r\n }\r\n\r\n GetAllReminders() {\r\n this.dropdownListReminder.push({ \"id\": 'None', \"itemName\": \"None\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 2 months', \"itemName\": \"Before 2 months\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 1 month', \"itemName\": \"Before 1 month\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 2 weeks', \"itemName\": \"Before 2 weeks\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 1 day', \"itemName\": \"Before 1 day\" });\r\n }\r\n\r\n onChangeReminder(event) {\r\n this.isReminderUser = false;\r\n this.selectedItemsReminderUsers = [];\r\n if (event) {\r\n if (Array.isArray(event) && event.length == 0) {\r\n this.isReminderUser = false;\r\n }\r\n else if (event.id != 'None') {\r\n this.isReminderUser = true;\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.userId);\r\n }\r\n }\r\n }\r\n\r\n GetUsersFindByCompanyIdRemoveLoginUser(companyId: any) {\r\n this.usersService.GetUsersFindByCompanyIdRemoveLoginUser(this.tokenKey, companyId, this.productId, this.userId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.userModel = data['companyUsers'];\r\n if (this.userModel != null) {\r\n if (this.userModel.length > 0) {\r\n for (let iCounter = 0; iCounter < this.userModel.length; iCounter++) {\r\n this.dropdownListUser.push({ \"id\": parseInt(this.userModel[iCounter].userId), \"itemName\": this.userModel[iCounter].userName });\r\n }\r\n\r\n // if (this.addNewActionModel != null) {\r\n // if (+this.addNewActionModel.assignToUser > 0) {\r\n // this.selectedItemsUser = this.dropdownListUser.filter(x => x.id == +this.addNewActionModel.assignToUser);\r\n // this.addNewActionModel.previousAssingId = this.addNewActionModel.assignToUser;\r\n // }\r\n // }\r\n }\r\n }\r\n }\r\n\r\n\r\n this.dropdownUsersSettings = {\r\n singleSelection: false,\r\n text: \"Select User\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No user available',\r\n showCheckbox: true,\r\n };\r\n });\r\n }\r\n\r\n onSelectedReminderUser($event) {\r\n if (this.selectedItemsReminderUsers != null) {\r\n if (this.selectedItemsReminderUsers.length > 0) {\r\n if(this.actionItemSearchModel.visibleTrackIt == 0)\r\n {\r\n this.selectedItemsReminderUsers = this.removeElemetsFromArray(this.selectedItemsReminderUsers, $event.id)\r\n document.getElementById(\"openModalButton\").click();\r\n }\r\n else{\r\n this.selectedItemsReminderUsers = this.removeElemetsFromArray(this.selectedItemsReminderUsers, $event.id)\r\n this.selectedItemsReminderUsers.push($event);\r\n }\r\n }\r\n else {\r\n this.selectedItemsReminderUsers.push($event);\r\n }\r\n }\r\n }\r\n\r\n removeElemetsFromArray(array, element) {\r\n return array.filter(e => e.id !== element);\r\n }\r\n}\r\n","export default \"/* ::ng-deep .modal-content\\r\\n{\\r\\n margin-top: -25px;\\r\\n margin-left: -75px;\\r\\n} */\\r\\n\\r\\n::ng-deep .AddNewActionPopup .modal-content\\r\\n{\\r\\n /* width: 820px; */\\r\\n margin-top: -25px;\\r\\n margin-left: -175px!important;\\r\\n margin-right: -175px !important;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvU2hhcmVkL2FkZC1uZXctYWN0aW9uLXBvcHVwL2FkZC1uZXctYWN0aW9uLXBvcHVwLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRzs7QUFFSDs7SUFFSSxrQkFBa0I7SUFDbEIsaUJBQWlCO0lBQ2pCLDZCQUE2QjtJQUM3QiwrQkFBK0I7QUFDbkMiLCJmaWxlIjoic3JjL2FwcC9TaGFyZWQvYWRkLW5ldy1hY3Rpb24tcG9wdXAvYWRkLW5ldy1hY3Rpb24tcG9wdXAuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIDo6bmctZGVlcCAubW9kYWwtY29udGVudFxyXG57XHJcbiAgICBtYXJnaW4tdG9wOiAtMjVweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAtNzVweDtcclxufSAqL1xyXG5cclxuOjpuZy1kZWVwIC5BZGROZXdBY3Rpb25Qb3B1cCAubW9kYWwtY29udGVudFxyXG57XHJcbiAgICAvKiB3aWR0aDogODIwcHg7ICovXHJcbiAgICBtYXJnaW4tdG9wOiAtMjVweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMTc1cHghaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtMTc1cHggIWltcG9ydGFudDtcclxufSJdfQ== */\"","import { Component, OnInit, Input, EventEmitter, Output } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AddNewActionModel } from 'src/Models/AddNewActionModel';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { UsersService } from '../../../Services/users.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { userModel } from 'src/Models/usersModel';\r\nimport { ActionItemService } from '../../../Services/actionitem.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { CountryMasterService } from 'src/Services/country-master.service';\r\nimport { ActionCompanySpecificCategoryService } from 'src/Services/action-company-specific-category.service';\r\nimport { THIS_EXPR } from '@angular/compiler/src/output/output_ast';\r\nimport { ActionCompanySpecificCategoryModel } from 'src/Models/ActionCompanySpecificCategoryModel';\r\nimport { ActionActivity, ToolEnum } from 'src/Models/Common';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\n\r\n@Component({\r\n selector: 'app-add-new-action-popup',\r\n templateUrl: './add-new-action-popup.component.html',\r\n styleUrls: ['./add-new-action-popup.component.css']\r\n})\r\n\r\nexport class AddNewActionPopupComponent implements OnInit {\r\n @Input() IsActionFlag: any;\r\n @Input() title: string;\r\n // @Input() body: string;\r\n // @Output() delete = new EventEmitter();\r\n addNewActionModel = new AddNewActionModel();\r\n userModel: userModel[];\r\n\r\n loginUser: number = 0;\r\n message: string;\r\n isCheckVisibleToAllCompanyUsers = false;\r\n tokenKey: string = '';\r\n companyId: number = 0;\r\n\r\n dropdownUserSettings = {};\r\n selectedItemsUser = [];\r\n dropdownListUser = [];\r\n\r\n dropdownCarrierCategoriesSettings = {};\r\n selectedItemsCarrierCategories = [];\r\n dropdownListCarrierCategories = [];\r\n\r\n dropdownStateSettings = {};\r\n selectedItemsState = [];\r\n dropdownListState = [];\r\n productId: number;\r\n\r\n listOfAssignToUser = [];\r\n\r\n addUpdateActionItem = new FormGroup({\r\n assignToUser: new FormControl(''),\r\n actionItemId: new FormControl(''),\r\n deadLineDate: new FormControl(''),\r\n subject: new FormControl(''),\r\n description: new FormControl(''),\r\n visibleTrackIt: new FormControl(0),\r\n state: new FormControl(''),\r\n carrierCategories: new FormControl(''),\r\n visibleUserIds: new FormControl(''),\r\n category: new FormControl(''),\r\n categoryText: new FormControl(''),\r\n country: new FormControl(''),\r\n recurrance: new FormControl(''),\r\n reminder: new FormControl(''),\r\n reminderUsers: new FormControl(''),\r\n notes: new FormControl(''),\r\n alertText:new FormControl(''),\r\n });\r\n\r\n\r\n // todayDateString: string = '';\r\n // bsInlineValue = new Date();\r\n\r\n EditActionId: number = 0;\r\n isOneClickOnButton: boolean = false;\r\n\r\n addNewCategoryText = '';\r\n isCountryUserSelected = false;\r\n isSpecificUserVisible = false;\r\n isAddNewCategory = false;\r\n isReminderUser = false;\r\n dropdownCountrySettings = {};\r\n selectedItemsCountry = [];\r\n dropdownListCountry = [];\r\n dropdownSingleSettings = {};\r\n selectedItemsVisible = [];\r\n dropdownListVisible = [];\r\n dropdownUsersSettings = {};\r\n selectedItemsReminderUsers = [];\r\n selectedItemsVisibleUsers = [];\r\n selectedItemsRecurrance = [];\r\n dropdownListRecurrance = [];\r\n selectedItemsReminder = [];\r\n dropdownListReminder = [];\r\n selectedItemsCompanySpecificCategory = [];\r\n dropdownListCompanySpecificCategory = [];\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n constructor(private matrix: MatrixService, private toastr: ToastrService, private actionItemServices: ActionItemService,\r\n private router: Router, public activeModal: NgbActiveModal, private usersService: UsersService, private checkAuth: CheckAuth,\r\n private countryMasterService: CountryMasterService, private companySpecificCategoryService: ActionCompanySpecificCategoryService,\r\n private activedRoute: ActivatedRoute,private appActivity: ApplicationActivityService\r\n ) {\r\n this.title = 'Add New Trac-It';\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n // this.setCurrentDateToCalender();\r\n\r\n }\r\n\r\n // setCurrentDateToCalender() {\r\n // let todayDate = new Date();\r\n // let dd1 = todayDate.getDate().toString();\r\n // if (parseInt(dd1.toString()) < 10)\r\n // dd1 = '0' + dd1.toString();\r\n\r\n // let mm1 = (todayDate.getMonth() + 1).toString();\r\n // if (parseInt(mm1.toString()) < 10)\r\n // mm1 = '0' + mm1.toString();\r\n\r\n // this.todayDateString = mm1 + '/' + dd1 + '/' + todayDate.getFullYear();\r\n\r\n // }\r\n\r\n ngOnInit() {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.companyId = +sessionStorage.getItem(\"CompanyId\");\r\n this.loginUser = +sessionStorage.getItem('UserId');\r\n this.productId = +sessionStorage.getItem('productId');\r\n this.GetUsersFindByCompanyId(this.companyId);\r\n this.GetCarrierCategories();\r\n this.GetStates(this.loginUser, this.productId);\r\n this.GetAllCountry();\r\n this.GetAllVisible();\r\n this.GetAllRecurrance();\r\n this.GetAllReminders();\r\n this.GetAllCompanyServiceCategory();\r\n this.selectedItemsRecurrance = this.dropdownListRecurrance.filter(x => x.id == 'None');\r\n this.selectedItemsReminder = this.dropdownListReminder.filter(x => x.id == 'None');\r\n this.selectedItemsVisible = this.dropdownListVisible.filter(x => x.id == 0);\r\n this.dropdownSingleSettings = {\r\n singleSelection: true,\r\n text: \"Select\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No record available',\r\n showCheckbox: false,\r\n };\r\n // this.selectedItemsReminderUsers.push({ id: this.loginUser, itemName: this.userName });\r\n }\r\n\r\n confirmYes(webinar: any) {\r\n\r\n // this.webinarService.deleteWebinar(webinar.webinarId).subscribe(event => {\r\n // if (event instanceof HttpResponse) {\r\n // this.message = 'Webinar deleted successfully.';\r\n // }\r\n // });\r\n // this.router.navigate(['/mywebinars']);\r\n }\r\n\r\n saveAddUpdateActionItem(addUpdateActionItem: any, isButtonDisable: boolean) {\r\n\r\n if (!this.selectedItemsVisible || this.selectedItemsVisible.length == 0) {\r\n this.showMessage('Please select visible type', 'Error', 'error');\r\n return;\r\n }\r\n this.addNewActionModel.visibleTrackIt = this.selectedItemsVisible[0].id;\r\n if (this.addNewActionModel.visibleTrackIt == 2 && this.selectedItemsVisibleUsers.length == 0) {\r\n this.showMessage('Please select visible users', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (addUpdateActionItem.value['deadLineDate'] == undefined || addUpdateActionItem.value['deadLineDate'] == '') {\r\n this.showMessage('Please select deadline date', 'Error', 'error');\r\n return;\r\n }\r\n // let currentDate = new Date();\r\n // if (new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate()) > addUpdateActionItem.value[\"deadLineDate\"]) {\r\n // this.showMessage('Previous deadline date not allow', 'Error', 'error');\r\n // return;\r\n // }\r\n if (addUpdateActionItem.value['subject'] == undefined || addUpdateActionItem.value['subject'] == '') {\r\n this.showMessage('Please enter subject', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (addUpdateActionItem.value['description'] == undefined || addUpdateActionItem.value['description'] == '') {\r\n this.showMessage('Please enter description', 'Error', 'error');\r\n return;\r\n }\r\n // if ((this.selectedItemsCountry.length == 0 || this.selectedItemsCountry.findIndex(x => x.id == 236) > -1) && this.selectedItemsState.length == 0) {\r\n // this.showMessage('Please select Jurisdiction', 'Error', 'error');\r\n // return;\r\n // }\r\n // if (addUpdateActionItem.value['carrierCategories'].length == 0) {\r\n // this.showMessage('Please select carrier type summary', 'Error', 'error');\r\n // return;\r\n // }\r\n\r\n \r\n if(this.selectedItemsVisible[0].id==0 && this.selectedItemsReminderUsers.length>1)\r\n {\r\n this.showMessage('You can not select more then one user because trac-it visibility is “Visible to me only”.', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (this.selectedItemsCountry.length > 0)\r\n this.addNewActionModel.country = this.selectedItemsCountry[0].id;\r\n if (this.selectedItemsRecurrance.length > 0)\r\n this.addNewActionModel.recurrance = this.selectedItemsRecurrance[0].id;\r\n if (this.selectedItemsReminder.length > 0)\r\n this.addNewActionModel.reminder = this.selectedItemsReminder[0].id;\r\n if (this.selectedItemsCompanySpecificCategory.length > 0)\r\n this.addNewActionModel.category = this.selectedItemsCompanySpecificCategory[0].id;\r\n if (this.addNewActionModel.reminder != 'None' && this.selectedItemsReminderUsers.length == 0) {\r\n this.showMessage('Please select reminder users', 'Error', 'error');\r\n return;\r\n }\r\n if (this.addNewActionModel.reminder != 'None' && this.selectedItemsReminderUsers.length > 0 && !this.selectedItemsReminderUsers.find(x => x.id == this.loginUser)) {\r\n this.showMessage('You can not remove current user from reminder user', 'Error', 'error');\r\n return;\r\n }\r\n this.addNewActionModel.reminderUsers = this.selectedItemsReminderUsers;\r\n this.addNewActionModel.visibleUserIds = this.selectedItemsVisibleUsers;\r\n\r\n this.addNewActionModel.state = '';\r\n let state = addUpdateActionItem.value['state']\r\n \r\n let saprator = '';\r\n if (state != null) {\r\n for (let iCounter = 0; iCounter < state.length; iCounter++) {\r\n this.addNewActionModel.state += saprator + state[iCounter].id;\r\n saprator = ',';\r\n }\r\n }\r\n\r\n this.addNewActionModel.carrierCategories = '';\r\n let carrierCategories = addUpdateActionItem.value['carrierCategories']\r\n saprator = '';\r\n if (state != null) {\r\n for (let iCounter = 0; iCounter < carrierCategories.length; iCounter++) {\r\n this.addNewActionModel.carrierCategories += saprator + carrierCategories[iCounter].id;\r\n saprator = ',';\r\n }\r\n }\r\n\r\n if (addUpdateActionItem.value['actionItemId'] != 'undefined' && addUpdateActionItem.value['actionItemId'] != undefined)\r\n this.addNewActionModel.actionItemId = addUpdateActionItem.value['actionItemId'];\r\n else\r\n this.addNewActionModel.actionItemId = 0;\r\n\r\n // if (addUpdateActionItem.value['assignToUser'].length > 0)\r\n // this.addNewActionModel.assignToUser = addUpdateActionItem.value['assignToUser'][0].id;\r\n // else\r\n // this.addNewActionModel.assignToUser = '0';\r\n\r\n if (this.addNewActionModel.assignToUser == null)\r\n this.addNewActionModel.assignToUser = '0';\r\n\r\n if (addUpdateActionItem.value['visibleToAllCompanyUsers'] != 'undefined' && addUpdateActionItem.value['visibleToAllCompanyUsers'] != undefined)\r\n this.addNewActionModel.visibleToAllCompanyUsers = addUpdateActionItem.value['visibleToAllCompanyUsers'];\r\n else\r\n this.addNewActionModel.visibleToAllCompanyUsers = false;\r\n\r\n if (typeof (addUpdateActionItem.value['description']) != undefined)\r\n this.addNewActionModel.description = addUpdateActionItem.value['description'];\r\n else\r\n this.addNewActionModel.description = null;\r\n\r\n this.addNewActionModel.subject = addUpdateActionItem.value['subject'];\r\n // this.addNewActionModel.alertText = addUpdateActionItem.value['alertText'];\r\n this.addNewActionModel.createdBy = +sessionStorage.getItem('UserId');\r\n this.addNewActionModel.companyId = this.companyId;\r\n this.addNewActionModel.actionItemId = 0;\r\n this.addNewActionModel.notes=addUpdateActionItem.value['notes'];\r\n \r\nconsole.log(this.addNewActionModel);\r\n event.preventDefault();\r\n\r\n\r\n if (isButtonDisable) {\r\n console.log('client clicked on dubble click');\r\n return;\r\n }\r\n\r\n this.isOneClickOnButton = true;\r\n\r\n this.actionItemServices.AddUpdateNewActionItem(this.tokenKey, this.addNewActionModel).subscribe(\r\n data => {\r\n this.isOneClickOnButton = false;\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Entry saved successfully', 'Success', 'success');\r\n this.activeModal.close('Yes');\r\n //Add New Trac-It\r\n ApplicationActivityStore('Add', 'Add New Trac-It', this.appActivity, ToolEnum.actionitem, ActionActivity['Trac It'], '/trac-it/add');\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error'); \r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.isOneClickOnButton = false;\r\n }\r\n );\r\n }\r\n\r\n viewAllCompanyUser($event) {\r\n this.isCheckVisibleToAllCompanyUsers = $event.target.checked;\r\n this.selectedItemsUser = [];\r\n // this.UserDropDownSettings();\r\n this.AssignUserDropDownSettings();\r\n }\r\n\r\n GetUsersFindByCompanyId(companyId: any) {\r\n this.usersService.GetUsersFindByCompanyIdRemoveLoginUser(this.tokenKey, companyId, this.productId, this.loginUser).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.userModel = data['companyUsers'];\r\n if (this.userModel != null) {\r\n if (this.userModel.length > 0) {\r\n for (let iCounter = 0; iCounter < this.userModel.length; iCounter++) {\r\n this.dropdownListUser.push({ \"id\": parseInt(this.userModel[iCounter].userId), \"itemName\": this.userModel[iCounter].userName });\r\n }\r\n\r\n if (this.addNewActionModel != null) {\r\n if (+this.addNewActionModel.assignToUser > 0) {\r\n this.selectedItemsUser = this.dropdownListUser.filter(x => x.id == +this.addNewActionModel.assignToUser);\r\n this.addNewActionModel.previousAssingId = this.addNewActionModel.assignToUser;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n // this.UserDropDownSettings();\r\n this.AssignUserDropDownSettings();\r\n this.dropdownUsersSettings = {\r\n singleSelection: false,\r\n text: \"Select User\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No user available',\r\n showCheckbox: true,\r\n };\r\n });\r\n }\r\n\r\n AssignUserDropDownSettings() {\r\n this.dropdownUserSettings = {\r\n singleSelection: true,\r\n text: \"Select User\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No user available',\r\n showCheckbox: false,\r\n disabled: !this.isCheckVisibleToAllCompanyUsers\r\n };\r\n }\r\n onSelectedUser($event) {\r\n this.addNewActionModel.assignToUser = $event['id'];\r\n }\r\n\r\n onDeSelectedUser($event) {\r\n this.addNewActionModel.assignToUser = null;\r\n }\r\n\r\n onDeSelectAllUser($event) {\r\n this.addNewActionModel.assignToUser = null;\r\n }\r\n\r\n GetCarrierCategories() {\r\n this.actionItemServices.GetCarrierCategories(this.tokenKey).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n let carrierCategories = data['companyModel'];\r\n if (carrierCategories != null) {\r\n if (carrierCategories.length > 0) {\r\n for (let iCounter = 0; iCounter < carrierCategories.length; iCounter++) {\r\n this.dropdownListCarrierCategories.push({ \"id\": parseInt(carrierCategories[iCounter].carrierCatId), \"itemName\": carrierCategories[iCounter].carrierCatName });\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.dropdownCarrierCategoriesSettings = {\r\n singleSelection: false,\r\n text: \"Select Carrier Type Summary\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No carrier type summary available',\r\n showCheckbox: true\r\n };\r\n });\r\n }\r\n\r\n onSelectedCarrierCategories($event) {\r\n }\r\n\r\n onDeSelectedCarrierCategories($event) {\r\n\r\n }\r\n\r\n GetStates(userId: any, productId: any) {\r\n this.matrix.getState(this.tokenKey, userId, productId).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n this.selectedItemsState = [];\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n\r\n // if (data[\"state\"][iCounter].favourite == \"1\")\r\n // this.selectedItemsState.push({ \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name });\r\n }\r\n }\r\n\r\n this.setStateSettings();\r\n\r\n // this.dropdownStateSettings = {\r\n // singleSelection: false,\r\n // text: \"Select Jurisdiction(s)\",\r\n // enableSearchFilter: true,\r\n // classes: \"borderLessTextBoxGreen\",\r\n // badgeShowLimit: 1,\r\n // noDataLabel: 'No Jurisdiction available',\r\n // showCheckbox: true,\r\n // enableFilterSelectAll: false,\r\n // enableCheckAll: true\r\n // };\r\n }, error => {\r\n\r\n })\r\n }\r\n\r\n // onSelectedState($event) {\r\n\r\n // }\r\n\r\n // onDeSelectedState($event) {\r\n\r\n // }\r\n\r\n isDeadlineDate(dateArray: any) {\r\n if (dateArray != null) {\r\n let dd1 = dateArray.getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (dateArray.getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n this.addNewActionModel.deadLineDate = mm1 + '-' + dd1 + '-' + dateArray.getFullYear();\r\n }\r\n else\r\n this.addNewActionModel.deadLineDate = null;\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n onChangeVisible(event) {\r\n this.isSpecificUserVisible = false;\r\n this.isCheckVisibleToAllCompanyUsers = false;\r\n this.selectedItemsUser = [];\r\n this.selectedItemsVisibleUsers = [];\r\n \r\n if (this.selectedItemsReminderUsers != null) {\r\n if (this.selectedItemsReminderUsers.length > 1 && event.id == 0) {\r\n document.getElementById(\"openModalButton\").click();\r\n }\r\n\r\n if(this.isReminderUser==true && this.selectedItemsReminderUsers.length==0)\r\n {\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n }\r\n else if(this.selectedItemsReminderUsers.length==1)\r\n {\r\n if(this.selectedItemsReminderUsers[0].id!=this.loginUser)\r\n {\r\n this.selectedItemsReminderUsers=[];\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n }\r\n }\r\n\r\n }\r\n\r\n\r\n if (event) {\r\n if (Array.isArray(event) && event.length == 0) {\r\n this.selectedItemsVisible = [];\r\n }\r\n else {\r\n if (event.id == 1) {\r\n this.isCheckVisibleToAllCompanyUsers = true;\r\n }\r\n else if (event.id == 2) {\r\n this.isCheckVisibleToAllCompanyUsers = true;\r\n this.isSpecificUserVisible = true;\r\n }\r\n }\r\n }\r\n this.AssignUserDropDownSettings();\r\n }\r\n onChangeCountry(event) {\r\n this.isCountryUserSelected = false;\r\n if (event && event.itemName != 'United States (USA)') {\r\n this.isCountryUserSelected = true;\r\n }\r\n this.setStateSettings();\r\n }\r\n onChangeReminder(event) {\r\n this.isReminderUser = false;\r\n this.selectedItemsReminderUsers = [];\r\n if (event) {\r\n if (Array.isArray(event) && event.length == 0) {\r\n this.isReminderUser = false;\r\n }\r\n else if (event.id != 'None') {\r\n this.isReminderUser = true;\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n }\r\n }\r\n }\r\n onChangeCategory(event) {\r\n this.isAddNewCategory = false;\r\n if (event) {\r\n if (event.id < 0) {\r\n this.isAddNewCategory = true;\r\n }\r\n }\r\n }\r\n setStateSettings() {\r\n this.dropdownStateSettings = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: true,\r\n disabled: this.isCountryUserSelected\r\n };\r\n }\r\n onSelectedState($event) {\r\n }\r\n onDeSelectedState($event) {\r\n }\r\n saveCompanySpecificCategory() {\r\n if (!this.addNewCategoryText) {\r\n this.showMessage('Please enter category name', 'Error', 'error');\r\n return;\r\n }\r\n const category = new ActionCompanySpecificCategoryModel();\r\n category.companyId = this.companyId;\r\n category.name = this.addNewCategoryText;\r\n category.createdBy = this.loginUser;\r\n this.companySpecificCategoryService.ActionCompanySpecificCategoryAddUpdate(this.tokenKey, category).subscribe(\r\n data => {\r\n this.isOneClickOnButton = false;\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Entry saved successfully', 'Success', 'success');\r\n this.selectedItemsCompanySpecificCategory = [];\r\n const item = { id: data.result, itemName: this.addNewCategoryText };\r\n this.selectedItemsCompanySpecificCategory.push(item);\r\n this.GetAllCompanyServiceCategory();\r\n this.addNewCategoryText = '';\r\n this.isAddNewCategory = false;\r\n }\r\n else if (data.result == -1) {\r\n this.showMessage('Category name is already exists.', 'Error', 'error');\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error');\r\n }\r\n }),\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.isOneClickOnButton = false;\r\n }\r\n }\r\n GetAllCountry() {\r\n this.countryMasterService.getCountry(this.tokenKey).subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n for (let iCounter = 0; iCounter < data.countryList.length; iCounter++) {\r\n this.dropdownListCountry.push({ \"id\": parseInt(data.countryList[iCounter].countryId), \"itemName\": (data.countryList[iCounter].name + ' (' + data.countryList[iCounter].shortName + ')') });\r\n \r\n }\r\n this.selectedItemsCountry = this.dropdownListCountry.filter(x => x.itemName == 'United States (USA)');\r\n }\r\n this.dropdownCountrySettings = {\r\n singleSelection: true,\r\n text: \"Select Country\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No country available',\r\n showCheckbox: false\r\n };\r\n })\r\n }\r\n GetAllVisible() {\r\n this.dropdownListVisible.push({ \"id\": 0, \"itemName\": \"Visible to me only\" });\r\n this.dropdownListVisible.push({ \"id\": 1, \"itemName\": \"Visible to all company users\" });\r\n this.dropdownListVisible.push({ \"id\": 2, \"itemName\": \"Visible to specific users \" });\r\n }\r\n GetAllRecurrance() {\r\n this.dropdownListRecurrance.push({ \"id\": 'None', \"itemName\": \"None\" });\r\n this.dropdownListRecurrance.push({ \"id\": 'Annual', \"itemName\": \"Annual\" });\r\n this.dropdownListRecurrance.push({ \"id\": 'Quarterly', \"itemName\": \"Quarterly\" });\r\n this.dropdownListRecurrance.push({ \"id\": 'Every 2 months', \"itemName\": \"Every 2 months\" });\r\n this.dropdownListRecurrance.push({ \"id\": 'Every 1 month', \"itemName\": \"Every 1 month\" });\r\n this.dropdownListRecurrance.push({ \"id\": 'Every 2 weeks', \"itemName\": \"Every 2 weeks\" });\r\n // this.dropdownListRecurrance.push({ \"id\": 'Every 1 day', \"itemName\": \"Every 1 day\" });\r\n }\r\n GetAllReminders() {\r\n this.dropdownListReminder.push({ \"id\": 'None', \"itemName\": \"None\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 2 months', \"itemName\": \"Before 2 months\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 1 month', \"itemName\": \"Before 1 month\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 2 weeks', \"itemName\": \"Before 2 weeks\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 1 day', \"itemName\": \"Before 1 day\" });\r\n }\r\n GetAllCompanyServiceCategory() {\r\n this.dropdownListCompanySpecificCategory = [];\r\n this.companySpecificCategoryService.GetAllActionCompanySpecificCategory(this.tokenKey, this.companyId).subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n if (data.result != null) {\r\n if (data.result.length > 0) {\r\n for (let iCounter = 0; iCounter < data.result.length; iCounter++) {\r\n this.dropdownListCompanySpecificCategory.push({ \"id\": parseInt(data.result[iCounter].actionCompanySpecificCategoryId), \"itemName\": data.result[iCounter].name });\r\n }\r\n }\r\n this.dropdownListCompanySpecificCategory.push({ id: -1, itemName: \"New >\" });\r\n }\r\n }\r\n })\r\n }\r\n\r\n onSelectedReminderUser($event) {\r\n if (this.selectedItemsReminderUsers != null) {\r\n if (this.selectedItemsReminderUsers.length > 1) {\r\n if(this.selectedItemsVisible[0].id == 0)\r\n {\r\n this.selectedItemsReminderUsers = this.removeElemetsFromArray(this.selectedItemsReminderUsers, $event.id)\r\n document.getElementById(\"openModalButton\").click();\r\n }\r\n else{\r\n this.selectedItemsReminderUsers = this.removeElemetsFromArray(this.selectedItemsReminderUsers, $event.id)\r\n this.selectedItemsReminderUsers.push($event);\r\n }\r\n }\r\n else {\r\n if(this.selectedItemsVisible[0].id == 0 && $event.id!=this.loginUser)\r\n {\r\n this.selectedItemsReminderUsers=[];\r\n this.showMessage('You can not select other user because trac-it visibility is only me', 'Error', 'error');\r\n }\r\n }\r\n }\r\n }\r\n\r\n removeElemetsFromArray(array, element) {\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n return array.filter(e => e.id !== element);\r\n }\r\n\r\n clearSelectedVisibleItem()\r\n {\r\n this.selectedItemsVisible=[];\r\n }\r\n\r\n onSelectedAllReminderUser($event)\r\n {\r\n if (this.selectedItemsReminderUsers != null) {\r\n if (this.selectedItemsReminderUsers.length > 0 && this.selectedItemsVisible.length>0) {\r\n if(this.selectedItemsVisible[0].id == 0)\r\n {\r\n this.selectedItemsReminderUsers =[];\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n document.getElementById(\"openModalButton\").click();\r\n }\r\n }\r\n }\r\n }\r\n onDeselectedAllReminderUser($event)\r\n {\r\n this.selectedItemsReminderUsers =[];\r\n if(this.selectedItemsVisible.length>0)\r\n {\r\n if(this.selectedItemsVisible[0].id == 0 && this.selectedItemsReminderUsers.length==0)\r\n {\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n }\r\n }\r\n }\r\n\r\n onDeselectedReminderUser($event)\r\n {\r\n if(this.selectedItemsVisible.length>0)\r\n {\r\n if(this.selectedItemsVisible[0].id == 0 && this.selectedItemsReminderUsers.length==0 && $event.id==this.loginUser)\r\n {\r\n this.showMessage('You can not remove current user from reminder user', 'Error', 'error');\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n }\r\n }\r\n }\r\n}\r\n","export default \".smalltext {\\r\\n font-size: 12px;\\r\\n font-weight: 100;\\r\\n }\\r\\n\\r\\n ::ng-deep .EditActionPopup .modal-content\\r\\n {\\r\\n /* width: 820px; */\\r\\n margin-top: -25px;\\r\\n margin-left: -175px!important;\\r\\n margin-right: -175px !important;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvU2hhcmVkL2VkaXQtYWN0aW9uLXBvcHVwL2VkaXQtYWN0aW9uLXBvcHVwLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxlQUFlO0lBQ2YsZ0JBQWdCO0VBQ2xCOztFQUVBOztNQUVJLGtCQUFrQjtNQUNsQixpQkFBaUI7TUFDakIsNkJBQTZCO01BQzdCLCtCQUErQjtFQUNuQyIsImZpbGUiOiJzcmMvYXBwL1NoYXJlZC9lZGl0LWFjdGlvbi1wb3B1cC9lZGl0LWFjdGlvbi1wb3B1cC5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnNtYWxsdGV4dCB7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBmb250LXdlaWdodDogMTAwO1xyXG4gIH1cclxuXHJcbiAgOjpuZy1kZWVwIC5FZGl0QWN0aW9uUG9wdXAgLm1vZGFsLWNvbnRlbnRcclxuICB7XHJcbiAgICAgIC8qIHdpZHRoOiA4MjBweDsgKi9cclxuICAgICAgbWFyZ2luLXRvcDogLTI1cHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTc1cHghaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xNzVweCAhaW1wb3J0YW50O1xyXG4gIH0iXX0= */\"","import { Component, OnInit, Input, EventEmitter, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AddNewActionModel } from 'src/Models/AddNewActionModel';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { UsersService } from '../../../Services/users.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { userModel } from 'src/Models/usersModel';\r\nimport { ActionItemService } from '../../../Services/actionitem.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { ActionGetByIdModel } from 'src/Models/ActionGetByIdModel';\r\nimport { ActionCompanySpecificCategoryService } from 'src/Services/action-company-specific-category.service';\r\nimport { CountryMasterService } from 'src/Services/country-master.service';\r\nimport { ActionCompanySpecificCategoryModel } from 'src/Models/ActionCompanySpecificCategoryModel';\r\n\r\n@Component({\r\n selector: 'app-edit-action-popup',\r\n templateUrl: './edit-action-popup.component.html',\r\n styleUrls: ['./edit-action-popup.component.css']\r\n})\r\nexport class EditActionPopupComponent implements OnInit {\r\n @Input() IsActionFlag: any;\r\n @Input() title: string;\r\n // @Input() body: string;\r\n // @Output() delete = new EventEmitter();\r\n addNewActionModel = new AddNewActionModel();\r\n userModel: userModel[];\r\n\r\n loginUser: number = 0;\r\n message: string;\r\n isCheckVisibleToAllCompanyUsers: boolean;\r\n tokenKey: string = '';\r\n companyId: number = 0;\r\n\r\n dropdownUserSettings = {};\r\n selectedItemsUser = [];\r\n dropdownListUser = [];\r\n\r\n dropdownCarrierCategoriesSettings = {};\r\n selectedItemsCarrierCategories = [];\r\n dropdownListCarrierCategories = [];\r\n listofcarriercategories: number[] = [];\r\n\r\n dropdownStateSettings = {};\r\n selectedItemsState = [];\r\n dropdownListState = [];\r\n listofState: number[] = [];\r\n productId: number;\r\n\r\n listOfAssignToUser = [];\r\n dropdownCountrySettings = {};\r\n selectedItemsCountry = [];\r\n dropdownListCountry = [];\r\n dropdownSingleSettings = {};\r\n selectedItemsVisible = [];\r\n dropdownListVisible = [];\r\n dropdownUsersSettings = {};\r\n selectedItemsReminderUsers = [];\r\n selectedItemsVisibleUsers = [];\r\n selectedItemsRecurrance = [];\r\n dropdownListRecurrance = [];\r\n selectedItemsReminder = [];\r\n dropdownListReminder = [];\r\n selectedItemsCompanySpecificCategory = [];\r\n dropdownListCompanySpecificCategory = [];\r\n isCountryUserSelected = false;\r\n isSpecificUserVisible = false;\r\n isAddNewCategory = false;\r\n isReminderUser = false;\r\n addNewCategoryText = '';\r\n dropdownRecurranceSettings = {}\r\n isRecurrenceRecord = false;\r\n\r\n addUpdateActionItem = new FormGroup({\r\n assignToUser: new FormControl(''),\r\n actionItemId: new FormControl(''),\r\n recurranceId: new FormControl(''),\r\n deadLineDate: new FormControl(''),\r\n subject: new FormControl(''),\r\n description: new FormControl(''),\r\n // visibleToAllCompanyUsers: new FormControl(''),\r\n visibleTrackIt: new FormControl(0),\r\n state: new FormControl(''),\r\n carrierCategories: new FormControl(''),\r\n visibleUserIds: new FormControl(''),\r\n category: new FormControl(''),\r\n categoryText: new FormControl(''),\r\n country: new FormControl(''),\r\n recurrance: new FormControl(''),\r\n reminder: new FormControl(''),\r\n reminderUsers: new FormControl(''),\r\n alertText: new FormControl(''),\r\n });\r\n\r\n EditActionId: number = 0;\r\n editModel = new ActionGetByIdModel();\r\n isOneClickOnButton: boolean = false;\r\n selectedItems: any;\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n constructor(private matrix: MatrixService, private toastr: ToastrService, private actionItemServices: ActionItemService,\r\n private router: Router, public activeModal: NgbActiveModal, private usersService: UsersService, private checkAuth: CheckAuth,\r\n private countryMasterService: CountryMasterService, private companySpecificCategoryService: ActionCompanySpecificCategoryService) {\r\n this.title = 'Edit Trac-It';\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n // this.setCurrentDateToCalender();\r\n this.selectedItems = '1';\r\n }\r\n\r\n ngOnInit() {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.companyId = +sessionStorage.getItem(\"CompanyId\");\r\n this.loginUser = +sessionStorage.getItem('UserId');\r\n this.productId = +sessionStorage.getItem('productId');\r\n this.EditActionId = +sessionStorage.getItem('EditActionId');\r\n this.ActionGetById();\r\n this.selectedItems = '1';\r\n this.dropdownSingleSettings = {\r\n singleSelection: true,\r\n text: \"Select\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No record available',\r\n showCheckbox: false,\r\n };\r\n this.dropdownRecurranceSettings = {\r\n singleSelection: true,\r\n text: \"Select\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No record available',\r\n showCheckbox: false,\r\n disabled: true\r\n };\r\n }\r\n\r\n viewAllCompanyUser($event) {\r\n this.isCheckVisibleToAllCompanyUsers = $event.target.checked;\r\n this.selectedItemsUser = [];\r\n this.UserDropDownSettings();\r\n }\r\n\r\n pad(s) {\r\n return (s < 10) ? '0' + s : s;\r\n }\r\n\r\n ActionGetById() {\r\n this.actionItemServices.ActionGetById(this.tokenKey, this.EditActionId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.editModel = data['model'];\r\n if (this.editModel != null) {\r\n const dd = new Date(this.editModel.deadlineDate);\r\n var dDate = [this.pad(dd.getMonth() + 1), this.pad(dd.getDate()), dd.getFullYear()].join('/');\r\n\r\n this.addUpdateActionItem.setValue({\r\n assignToUser: [],\r\n actionItemId: this.editModel.actionId,\r\n recurranceId: this.editModel.recurranceId,\r\n deadLineDate: dDate,\r\n subject: this.editModel.subject,\r\n description: this.editModel.description,\r\n // visibleToAllCompanyUsers: this.editModel.isForAllUsers,\r\n visibleTrackIt: [],\r\n state: [],\r\n carrierCategories: [],\r\n visibleUserIds: [],\r\n category: [],\r\n categoryText: [],\r\n country: [],\r\n recurrance: [],\r\n reminder: [],\r\n reminderUsers: [],\r\n alertText: this.editModel.alertText,\r\n });\r\n if (this.editModel.recurranceId == 0)\r\n this.isRecurrenceRecord = false\r\n else\r\n this.isRecurrenceRecord = true\r\n // this.isCheckVisibleToAllCompanyUsers = this.editModel.isForAllUsers;\r\n this.addNewActionModel.actionItemId = this.editModel.actionId;\r\n this.addNewActionModel.recurranceId = this.editModel.recurranceId;\r\n this.isCheckVisibleToAllCompanyUsers = this.editModel.visibleTrackIt > 0;\r\n this.addNewActionModel.assignToUser = this.editModel.assignToId.toString();\r\n //this.UserDropDownSettings();\r\n // this.addNewActionModel.actionCharges = '0';\r\n // this.addNewActionModel.actionItemId = this.editModel.actionId;\r\n // this.addNewActionModel.actionNotes = '';\r\n // this.addNewActionModel.actionType = '';\r\n // this.addNewActionModel.assignToUser = this.editModel.assignToId.toString();\r\n // this.addNewActionModel.carrierCategories = '';\r\n // this.addNewActionModel.companyId = 0;\r\n // this.addNewActionModel.createdBy = this.loginUser; \r\n // this.addNewActionModel.deadLineDate = dDate;\r\n // this.addNewActionModel.description = this.editModel.description;\r\n // this.addNewActionModel.visibleToAllCompanyUsers = this.editModel.isForAllUsers;\r\n\r\n this.GetUsersFindByCompanyId(this.companyId);\r\n this.GetCarrierCategories();\r\n this.GetStates(this.loginUser, this.productId);\r\n this.GetAllCountry();\r\n this.GetAllVisible();\r\n this.GetAllRecurrance();\r\n this.GetAllReminders();\r\n this.GetAllCompanyServiceCategory();\r\n this.AssignUserDropDownSettings();\r\n }\r\n\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error');\r\n }\r\n }\r\n );\r\n }\r\n\r\n saveAddUpdateActionItem(addUpdateActionItem: any, isButtonDisable: boolean, isclickfrompopup: boolean) {\r\n\r\n if (isclickfrompopup && this.isRecurrenceRecord) {\r\n document.getElementById(\"btnopenEditpopup\").click();\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n\r\n if (!this.selectedItemsVisible || this.selectedItemsVisible.length == 0) {\r\n this.showMessage('Please select visible type', 'Error', 'error');\r\n return;\r\n }\r\n this.addNewActionModel.visibleTrackIt = this.selectedItemsVisible[0].id;\r\n if (this.addNewActionModel.visibleTrackIt == 2 && this.selectedItemsVisibleUsers.length == 0) {\r\n this.showMessage('Please select visible users', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (addUpdateActionItem.value['deadLineDate'] == undefined || addUpdateActionItem.value['deadLineDate'] == '') {\r\n this.showMessage('Please select deadline date', 'Error', 'error');\r\n return;\r\n }\r\n let currentDate = new Date();\r\n if (new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate()) > addUpdateActionItem.value[\"deadLineDate\"]) {\r\n this.showMessage('Previous deadline date not allow', 'Error', 'error');\r\n return;\r\n }\r\n if (addUpdateActionItem.value['subject'] == undefined || addUpdateActionItem.value['subject'] == '') {\r\n this.showMessage('Please enter subject', 'Error', 'error');\r\n return;\r\n }\r\n if (addUpdateActionItem.value['description'] == undefined || addUpdateActionItem.value['description'] == '') {\r\n this.showMessage('Please enter description', 'Error', 'error');\r\n return;\r\n }\r\n // if ((this.selectedItemsCountry.length == 0 || this.selectedItemsCountry.findIndex(x => x.id == 236) > -1) && this.selectedItemsState.length == 0) {\r\n // this.showMessage('Please select state', 'Error', 'error');\r\n // return;\r\n // }\r\n // if (this.listofcarriercategories.length == 0) {\r\n // this.showMessage('Please select carrier type summary', 'Error', 'error');\r\n // return;\r\n // }\r\n\r\n // this.addNewActionModel.state = this.listofState.join(',');\r\n\r\n if (this.selectedItemsVisible[0].id == 0 && this.selectedItemsReminderUsers.length > 1) {\r\n this.showMessage('You can not select more then one user because trac-it visibility is “Visible to me only”.', 'Error', 'error');\r\n return;\r\n }\r\n\r\n if (this.selectedItemsCountry.length > 0)\r\n this.addNewActionModel.country = this.selectedItemsCountry[0].id;\r\n if (this.selectedItemsRecurrance.length > 0)\r\n this.addNewActionModel.recurrance = this.selectedItemsRecurrance[0].id;\r\n if (this.selectedItemsReminder.length > 0)\r\n this.addNewActionModel.reminder = this.selectedItemsReminder[0].id;\r\n if (this.selectedItemsCompanySpecificCategory.length > 0)\r\n this.addNewActionModel.category = this.selectedItemsCompanySpecificCategory[0].id;\r\n if (this.addNewActionModel.reminder != 'None' && this.selectedItemsReminderUsers.length == 0) {\r\n this.showMessage('Please select reminder users', 'Error', 'error');\r\n return;\r\n }\r\n if (this.addNewActionModel.reminder != 'None' && this.selectedItemsReminderUsers.length > 0 && !this.selectedItemsReminderUsers.find(x => x.id == this.loginUser)) {\r\n this.showMessage('You can not remove current user from reminder user', 'Error', 'error');\r\n return;\r\n }\r\n this.addNewActionModel.reminderUsers = this.selectedItemsReminderUsers;\r\n this.addNewActionModel.visibleUserIds = this.selectedItemsVisibleUsers;\r\n this.addNewActionModel.state = this.selectedItemsState.map(x => x.id).join(',');\r\n this.addNewActionModel.carrierCategories = this.listofcarriercategories.join(',');\r\n\r\n if (addUpdateActionItem.value['actionItemId'] != 'undefined' && addUpdateActionItem.value['actionItemId'] != undefined)\r\n this.addNewActionModel.actionItemId = addUpdateActionItem.value['actionItemId'];\r\n else\r\n this.addNewActionModel.actionItemId = 0;\r\n\r\n if (this.addNewActionModel.assignToUser == null)\r\n this.addNewActionModel.assignToUser = '0';\r\n\r\n if (addUpdateActionItem.value['visibleToAllCompanyUsers'] != 'undefined' && addUpdateActionItem.value['visibleToAllCompanyUsers'] != undefined)\r\n this.addNewActionModel.visibleToAllCompanyUsers = addUpdateActionItem.value['visibleToAllCompanyUsers'];\r\n else\r\n this.addNewActionModel.visibleToAllCompanyUsers = false;\r\n\r\n if (typeof (addUpdateActionItem.value['description']) != undefined)\r\n this.addNewActionModel.description = addUpdateActionItem.value['description'];\r\n else\r\n this.addNewActionModel.description = null;\r\n\r\n if (typeof (addUpdateActionItem.value['alertText']) != undefined)\r\n this.addNewActionModel.alertText = addUpdateActionItem.value['alertText'];\r\n else\r\n this.addNewActionModel.alertText = null;\r\n\r\n this.addNewActionModel.subject = addUpdateActionItem.value['subject'];\r\n this.addNewActionModel.createdBy = +sessionStorage.getItem('UserId');\r\n this.addNewActionModel.companyId = this.companyId;\r\n this.addNewActionModel.actionItemId = this.EditActionId;\r\n this.addNewActionModel.productId = this.productId.toString();\r\n\r\n if (isButtonDisable) {\r\n console.log('client clicked on dubble click');\r\n return;\r\n }\r\n\r\n this.isOneClickOnButton = true;\r\n\r\n this.addNewActionModel.selectedItems = this.selectedItems;\r\n\r\n this.actionItemServices.EditActionItem(this.tokenKey, this.addNewActionModel).subscribe(\r\n data => {\r\n this.isOneClickOnButton = false;\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Entry updates successfully', 'Success', 'success');\r\n this.activeModal.close('Yes');\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.isOneClickOnButton = false;\r\n }\r\n );\r\n }\r\n\r\n GetUsersFindByCompanyId(companyId: any) {\r\n this.usersService.GetUsersFindByCompanyIdRemoveLoginUser(this.tokenKey, companyId, this.productId, this.loginUser).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.userModel = data['companyUsers'];\r\n if (this.userModel != null) {\r\n if (this.userModel.length > 0) {\r\n for (let iCounter = 0; iCounter < this.userModel.length; iCounter++) {\r\n this.dropdownListUser.push({ \"id\": parseInt(this.userModel[iCounter].userId), \"itemName\": this.userModel[iCounter].userName });\r\n }\r\n\r\n if (this.editModel != null) {\r\n if (this.editModel.assignToId > 0) {\r\n let model = this.userModel.filter(m => +m.userId == this.editModel.assignToId);\r\n this.selectedItemsUser.push({ \"id\": parseInt(model[0].userId), \"itemName\": model[0].userName });\r\n this.addNewActionModel.previousAssingId = model[0].userId;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n this.UserDropDownSettings();\r\n\r\n });\r\n }\r\n\r\n UserDropDownSettings() {\r\n this.dropdownUserSettings = {\r\n singleSelection: true,\r\n text: \"Select User\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No user available',\r\n showCheckbox: false,\r\n disabled: !this.isCheckVisibleToAllCompanyUsers\r\n };\r\n }\r\n onSelectedUser($event) {\r\n this.addNewActionModel.assignToUser = $event['id'];\r\n }\r\n\r\n onDeSelectedUser($event) {\r\n this.addNewActionModel.assignToUser = null;\r\n }\r\n\r\n onDeSelectAllUser($event) {\r\n this.addNewActionModel.assignToUser = null;\r\n }\r\n\r\n GetCarrierCategories() {\r\n this.actionItemServices.GetCarrierCategories(this.tokenKey).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.listofcarriercategories = [];\r\n let carrierCategories = data['companyModel'];\r\n if (carrierCategories != null) {\r\n if (carrierCategories.length > 0) {\r\n for (let iCounter = 0; iCounter < carrierCategories.length; iCounter++) {\r\n this.dropdownListCarrierCategories.push({ \"id\": parseInt(carrierCategories[iCounter].carrierCatId), \"itemName\": carrierCategories[iCounter].carrierCatName });\r\n }\r\n\r\n if (this.editModel != null) {\r\n if (this.editModel.listOfCarrierCategory != null) {\r\n if (this.editModel.listOfCarrierCategory.length > 0) {\r\n for (let iCounter = 0; iCounter < this.editModel.listOfCarrierCategory.length; iCounter++) {\r\n if (this.editModel.listOfCarrierCategory[iCounter].carrierName != null) {\r\n this.selectedItemsCarrierCategories.push({ \"id\": this.editModel.listOfCarrierCategory[iCounter].carrierCatId, \"itemName\": this.editModel.listOfCarrierCategory[iCounter].carrierName });\r\n this.listofcarriercategories.push(this.editModel.listOfCarrierCategory[iCounter].carrierCatId);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.dropdownCarrierCategoriesSettings = {\r\n singleSelection: false,\r\n text: \"Select Carrier Type Summary\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No carrier type summary available',\r\n showCheckbox: true\r\n };\r\n });\r\n }\r\n\r\n onSelectedCarrierCategories($event) {\r\n if (this.listofcarriercategories != null) {\r\n if (this.listofcarriercategories.length > 0) {\r\n this.listofcarriercategories = this.removeElemetninArray(this.listofcarriercategories, $event.id)\r\n this.listofcarriercategories.push($event.id);\r\n }\r\n else {\r\n this.listofcarriercategories.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeSelectedCarrierCategories($event) {\r\n if (this.listofcarriercategories != null) {\r\n if (this.listofcarriercategories.length > 0) {\r\n this.listofcarriercategories = this.removeElemetninArray(this.listofcarriercategories, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onSelectAllCarrierCategories($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listofcarriercategories != null) {\r\n if (this.listofcarriercategories.length > 0) {\r\n this.listofcarriercategories = this.removeElemetninArray(this.listofcarriercategories, $event[iCounter].id)\r\n this.listofcarriercategories.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listofcarriercategories.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllCarrierCategories($event) {\r\n this.listofcarriercategories = [];\r\n }\r\n\r\n GetStates(userId: any, productId: any) {\r\n this.matrix.getState(this.tokenKey, userId, productId).subscribe(\r\n data => {\r\n if (data[\"state\"] != null) {\r\n this.selectedItemsState = [];\r\n for (let iCounter = 0; iCounter < data[\"state\"].length; iCounter++) {\r\n this.dropdownListState.push(\r\n { \"id\": data[\"state\"][iCounter].stateId, \"itemName\": data[\"state\"][iCounter].name }\r\n );\r\n }\r\n\r\n if (this.editModel != null) {\r\n if (this.editModel.listOfState != null) {\r\n if (this.editModel.listOfState.length > 0) {\r\n for (let iCounter = 0; iCounter < this.editModel.listOfState.length; iCounter++) {\r\n if (this.editModel.listOfState[iCounter].stateName != null) {\r\n this.selectedItemsState.push({ \"id\": this.editModel.listOfState[iCounter].stateId, \"itemName\": this.editModel.listOfState[iCounter].stateName });\r\n this.listofState.push(this.editModel.listOfState[iCounter].stateId);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.setStateSettings();\r\n }, error => {\r\n\r\n })\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n onSelectedState($event) {\r\n if (this.listofState != null) {\r\n if (this.listofState.length > 0) {\r\n this.listofState = this.removeElemetninArray(this.listofState, $event.id)\r\n this.listofState.push($event.id);\r\n }\r\n else {\r\n this.listofState.push($event.id);\r\n }\r\n }\r\n }\r\n\r\n onDeSelectedState($event) {\r\n if (this.listofState != null) {\r\n if (this.listofState.length > 0) {\r\n this.listofState = this.removeElemetninArray(this.listofState, $event.id)\r\n }\r\n }\r\n }\r\n\r\n onSelectAllState($event) {\r\n for (let iCounter = 0; iCounter < $event.length; iCounter++) {\r\n if (this.listofState != null) {\r\n if (this.listofState.length > 0) {\r\n this.listofState = this.removeElemetninArray(this.listofState, $event[iCounter].id)\r\n this.listofState.push($event[iCounter].id);\r\n }\r\n else {\r\n this.listofState.push($event[iCounter].id);\r\n }\r\n }\r\n }\r\n }\r\n\r\n onDeSelectAllState($event) {\r\n this.listofState = [];\r\n }\r\n\r\n isDeadlineDate(dateArray: any) {\r\n if (dateArray != null) {\r\n let dd1 = dateArray.getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (dateArray.getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n this.addNewActionModel.deadLineDate = mm1 + '-' + dd1 + '-' + dateArray.getFullYear();\r\n }\r\n else\r\n this.addNewActionModel.deadLineDate = null;\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n onChangeVisible(event) {\r\n this.isSpecificUserVisible = false;\r\n this.isCheckVisibleToAllCompanyUsers = false;\r\n this.selectedItemsUser = [];\r\n this.selectedItemsVisibleUsers = [];\r\n\r\n if (this.selectedItemsReminderUsers != null) {\r\n if (this.selectedItemsReminderUsers.length > 1 && event.id == 0) {\r\n document.getElementById(\"btnvisibletoonlyme\").click();\r\n }\r\n\r\n if (this.isReminderUser == true && this.selectedItemsReminderUsers.length == 0) {\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n }\r\n else if (this.selectedItemsReminderUsers.length == 1) {\r\n if (this.selectedItemsReminderUsers[0].id != this.loginUser) {\r\n this.selectedItemsReminderUsers = [];\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n }\r\n }\r\n }\r\n\r\n if (event) {\r\n if (Array.isArray(event) && event.length == 0) {\r\n this.selectedItemsVisible = [];\r\n }\r\n else {\r\n if (event.id == 1) {\r\n this.isCheckVisibleToAllCompanyUsers = true;\r\n }\r\n else if (event.id == 2) {\r\n this.isCheckVisibleToAllCompanyUsers = true;\r\n this.isSpecificUserVisible = true;\r\n }\r\n }\r\n }\r\n this.AssignUserDropDownSettings();\r\n }\r\n onChangeCountry(event) {\r\n this.isCountryUserSelected = false;\r\n this.selectedItemsState = [];\r\n this.listofState = [];\r\n if (event && event.itemName != 'United States (USA)') {\r\n this.isCountryUserSelected = true;\r\n }\r\n this.setStateSettings();\r\n }\r\n onChangeReminder(event) {\r\n this.isReminderUser = false;\r\n this.selectedItemsReminderUsers = [];\r\n if (event) {\r\n if (Array.isArray(event) && event.length == 0) {\r\n this.isReminderUser = false;\r\n }\r\n else if (event.id != 'None') {\r\n this.isReminderUser = true;\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n }\r\n }\r\n }\r\n onChangeCategory(event) {\r\n this.isAddNewCategory = false;\r\n if (event) {\r\n if (event.id < 0) {\r\n this.isAddNewCategory = true;\r\n }\r\n }\r\n }\r\n setStateSettings() {\r\n this.dropdownStateSettings = {\r\n singleSelection: false,\r\n text: \"Select State(s)\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 1,\r\n noDataLabel: 'No state available',\r\n showCheckbox: true,\r\n enableFilterSelectAll: false,\r\n enableCheckAll: true,\r\n disabled: this.isCountryUserSelected\r\n };\r\n }\r\n AssignUserDropDownSettings() {\r\n this.dropdownUserSettings = {\r\n singleSelection: true,\r\n text: \"Select User\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No user available',\r\n showCheckbox: false,\r\n disabled: !this.isCheckVisibleToAllCompanyUsers\r\n };\r\n }\r\n GetAllCountry() {\r\n this.countryMasterService.getCountry(this.tokenKey).subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n for (let iCounter = 0; iCounter < data.countryList.length; iCounter++) {\r\n this.dropdownListCountry.push({ \"id\": parseInt(data.countryList[iCounter].countryId), \"itemName\": (data.countryList[iCounter].name + ' (' + data.countryList[iCounter].shortName + ')') });\r\n }\r\n if (this.editModel != null)\r\n this.selectedItemsCountry = this.dropdownListCountry.filter(x => x.id == this.editModel.country);\r\n this.addNewActionModel.country = this.editModel.country;\r\n if (this.editModel.country > 0 && this.editModel.country != 236)\r\n this.isCountryUserSelected = true;\r\n }\r\n this.dropdownCountrySettings = {\r\n singleSelection: true,\r\n text: \"Select Country\",\r\n enableSearchFilter: true,\r\n classes: \"borderLessTextBoxGreen\",\r\n badgeShowLimit: 3,\r\n noDataLabel: 'No country available',\r\n showCheckbox: false\r\n };\r\n this.setStateSettings();\r\n })\r\n }\r\n GetAllVisible() {\r\n this.dropdownListVisible.push({ \"id\": 0, \"itemName\": \"Visible to me only\" });\r\n this.dropdownListVisible.push({ \"id\": 1, \"itemName\": \"Visible to all company users\" });\r\n this.dropdownListVisible.push({ \"id\": 2, \"itemName\": \"Visible to specific users \" });\r\n if (this.editModel != null) {\r\n this.selectedItemsVisible = this.dropdownListVisible.filter(x => x.id == this.editModel.visibleTrackIt);\r\n this.selectedItemsVisibleUsers = this.editModel.visibleUserIds;\r\n this.addNewActionModel.visibleTrackIt = this.editModel.visibleTrackIt;\r\n if (this.editModel.visibleTrackIt == 2)\r\n this.isSpecificUserVisible = true;\r\n }\r\n }\r\n GetAllRecurrance() {\r\n this.dropdownListRecurrance.push({ \"id\": 'None', \"itemName\": \"None\" });\r\n this.dropdownListRecurrance.push({ \"id\": 'Annual', \"itemName\": \"Annual\" });\r\n this.dropdownListRecurrance.push({ \"id\": 'Quarterly', \"itemName\": \"Quarterly\" });\r\n this.dropdownListRecurrance.push({ \"id\": 'Every 2 months', \"itemName\": \"Every 2 months\" });\r\n this.dropdownListRecurrance.push({ \"id\": 'Every 1 month', \"itemName\": \"Every 1 month\" });\r\n this.dropdownListRecurrance.push({ \"id\": 'Every 2 weeks', \"itemName\": \"Every 2 weeks\" });\r\n // this.dropdownListRecurrance.push({ \"id\": 'Every 1 day', \"itemName\": \"Every 1 day\" });\r\n if (this.editModel != null) {\r\n this.selectedItemsRecurrance = this.dropdownListRecurrance.filter(x => x.id == this.editModel.recurrance);\r\n this.addNewActionModel.recurrance = this.editModel.recurrance;\r\n }\r\n }\r\n GetAllReminders() {\r\n this.dropdownListReminder.push({ \"id\": 'None', \"itemName\": \"None\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 2 months', \"itemName\": \"Before 2 months\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 1 month', \"itemName\": \"Before 1 month\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 2 weeks', \"itemName\": \"Before 2 weeks\" });\r\n this.dropdownListReminder.push({ \"id\": 'Before 1 day', \"itemName\": \"Before 1 day\" });\r\n if (this.editModel != null) {\r\n this.selectedItemsReminder = this.dropdownListReminder.filter(x => x.id == this.editModel.reminder);\r\n this.selectedItemsReminderUsers = this.editModel.reminderUsers;\r\n this.addNewActionModel.reminder = this.editModel.reminder;\r\n if (this.editModel.reminder != 'None')\r\n this.isReminderUser = true;\r\n }\r\n }\r\n GetAllCompanyServiceCategory(isSelectItem = true) {\r\n this.dropdownListCompanySpecificCategory = [];\r\n this.companySpecificCategoryService.GetAllActionCompanySpecificCategory(this.tokenKey, this.companyId).subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n if (data.result != null) {\r\n if (data.result.length > 0) {\r\n for (let iCounter = 0; iCounter < data.result.length; iCounter++) {\r\n this.dropdownListCompanySpecificCategory.push({ \"id\": parseInt(data.result[iCounter].actionCompanySpecificCategoryId), \"itemName\": data.result[iCounter].name });\r\n }\r\n }\r\n this.dropdownListCompanySpecificCategory.push({ id: -1, itemName: \"New >\" });\r\n if (this.editModel != null && isSelectItem)\r\n this.selectedItemsCompanySpecificCategory = this.dropdownListCompanySpecificCategory.filter(x => x.id == this.editModel.category);\r\n }\r\n }\r\n })\r\n }\r\n saveCompanySpecificCategory() {\r\n if (!this.addNewCategoryText) {\r\n this.showMessage('Please enter category name', 'Error', 'error');\r\n return;\r\n }\r\n const category = new ActionCompanySpecificCategoryModel();\r\n category.companyId = this.companyId;\r\n category.name = this.addNewCategoryText;\r\n category.createdBy = this.loginUser;\r\n this.companySpecificCategoryService.ActionCompanySpecificCategoryAddUpdate(this.tokenKey, category).subscribe(\r\n data => {\r\n this.isOneClickOnButton = false;\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Entry saved successfully', 'Success', 'success');\r\n this.selectedItemsCompanySpecificCategory = [];\r\n const item = { id: data.result, itemName: this.addNewCategoryText };\r\n this.selectedItemsCompanySpecificCategory.push(item);\r\n this.GetAllCompanyServiceCategory(false);\r\n this.addNewCategoryText = '';\r\n this.isAddNewCategory = false;\r\n }\r\n else if (data.result == -1) {\r\n this.showMessage('Category name is already exists.', 'Error', 'error');\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error');\r\n }\r\n }),\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.isOneClickOnButton = false;\r\n }\r\n }\r\n\r\n onSelectedReminderUser($event) {\r\n if (this.selectedItemsReminderUsers != null) {\r\n if (this.selectedItemsReminderUsers.length > 1) {\r\n if (this.selectedItemsVisible[0].id == 0) {\r\n this.selectedItemsReminderUsers = this.removeElemetsFromArray(this.selectedItemsReminderUsers, $event.id)\r\n document.getElementById(\"btnvisibletoonlyme\").click();\r\n }\r\n else {\r\n this.selectedItemsReminderUsers = this.removeElemetsFromArray(this.selectedItemsReminderUsers, $event.id)\r\n this.selectedItemsReminderUsers.push($event);\r\n }\r\n }\r\n else {\r\n if (this.selectedItemsVisible[0].id == 0 && $event.id != this.loginUser) {\r\n this.selectedItemsReminderUsers = [];\r\n this.showMessage('You can not select other user because trac-it visibility is only me', 'Error', 'error');\r\n }\r\n }\r\n }\r\n }\r\n\r\n onSelectedAllReminderUser($event) {\r\n if (this.selectedItemsReminderUsers != null) {\r\n if (this.selectedItemsReminderUsers.length > 0 && this.selectedItemsVisible.length > 0) {\r\n if (this.selectedItemsVisible[0].id == 0) {\r\n this.selectedItemsReminderUsers = [];\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n document.getElementById(\"btnvisibletoonlyme\").click();\r\n }\r\n }\r\n }\r\n }\r\n\r\n removeElemetsFromArray(array, element) {\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n return array.filter(e => e.id !== element);\r\n }\r\n\r\n clearSelectedVisibleItem() {\r\n this.selectedItemsVisible = [];\r\n }\r\n\r\n onDeselectedAllReminderUser($event) {\r\n this.selectedItemsReminderUsers = [];\r\n if (this.selectedItemsVisible.length > 0) {\r\n if (this.selectedItemsVisible[0].id == 0 && this.selectedItemsReminderUsers.length == 0) {\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n }\r\n }\r\n }\r\n\r\n onDeselectedReminderUser($event) {\r\n if (this.selectedItemsVisible.length > 0) {\r\n if (this.selectedItemsVisible[0].id == 0 && this.selectedItemsReminderUsers.length == 0 && $event.id == this.loginUser) {\r\n this.showMessage('You can not remove current user from reminder user', 'Error', 'error');\r\n this.selectedItemsReminderUsers = this.dropdownListUser.filter(x => x.id == this.loginUser);\r\n }\r\n }\r\n }\r\n}\r\n","export default \".page-break {\\r\\n\\tpage-break-after: always;\\r\\n\\tpage-break-inside: avoid;\\r\\n\\tclear: both;\\r\\n}\\r\\n\\r\\n.page-break-before {\\r\\n\\tpage-break-before: always;\\r\\n\\tpage-break-inside: avoid;\\r\\n\\tclear: both;\\r\\n}\\r\\n\\r\\n.bgApply .regcontent {\\r\\n\\tpadding-left: 10px;\\r\\n}\\r\\n\\r\\n.link-div {\\r\\n\\tmargin-bottom: 14px;\\r\\n\\tpadding-left: 10px;\\r\\n}\\r\\n\\r\\n.link {\\r\\n\\tdisplay: block;\\r\\n\\ttext-decoration: underline;\\r\\n\\tcolor: #0039BF;\\r\\n}\\r\\n\\r\\n.link-a:active {\\r\\n\\tcolor: #0039BF;\\r\\n}\\r\\n\\r\\n/* ::ng-deep h4, ::ng-deep [data-label=\\\"Citation\\\"] {\\r\\n\\tcolor: #a4123f;\\r\\n\\tfont-weight: 600;\\r\\n\\tfont-style: italic;\\r\\n\\tfont-size: 13px;\\r\\n\\tmargin-top: 0;\\r\\n} */\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvU2hhcmVkL2Z1bmQtZGV0YWlscy9mdW5kLWRldGFpbHMuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtDQUNDLHdCQUF3QjtDQUN4Qix3QkFBd0I7Q0FDeEIsV0FBVztBQUNaOztBQUVBO0NBQ0MseUJBQXlCO0NBQ3pCLHdCQUF3QjtDQUN4QixXQUFXO0FBQ1o7O0FBRUE7Q0FDQyxrQkFBa0I7QUFDbkI7O0FBRUE7Q0FDQyxtQkFBbUI7Q0FDbkIsa0JBQWtCO0FBQ25COztBQUVBO0NBQ0MsY0FBYztDQUNkLDBCQUEwQjtDQUMxQixjQUFjO0FBQ2Y7O0FBRUE7Q0FDQyxjQUFjO0FBQ2Y7O0FBRUE7Ozs7OztHQU1HIiwiZmlsZSI6InNyYy9hcHAvU2hhcmVkL2Z1bmQtZGV0YWlscy9mdW5kLWRldGFpbHMuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5wYWdlLWJyZWFrIHtcclxuXHRwYWdlLWJyZWFrLWFmdGVyOiBhbHdheXM7XHJcblx0cGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG5cdGNsZWFyOiBib3RoO1xyXG59XHJcblxyXG4ucGFnZS1icmVhay1iZWZvcmUge1xyXG5cdHBhZ2UtYnJlYWstYmVmb3JlOiBhbHdheXM7XHJcblx0cGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG5cdGNsZWFyOiBib3RoO1xyXG59XHJcblxyXG4uYmdBcHBseSAucmVnY29udGVudCB7XHJcblx0cGFkZGluZy1sZWZ0OiAxMHB4O1xyXG59XHJcblxyXG4ubGluay1kaXYge1xyXG5cdG1hcmdpbi1ib3R0b206IDE0cHg7XHJcblx0cGFkZGluZy1sZWZ0OiAxMHB4O1xyXG59XHJcblxyXG4ubGluayB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0Y29sb3I6ICMwMDM5QkY7XHJcbn1cclxuXHJcbi5saW5rLWE6YWN0aXZlIHtcclxuXHRjb2xvcjogIzAwMzlCRjtcclxufVxyXG5cclxuLyogOjpuZy1kZWVwIGg0LCA6Om5nLWRlZXAgW2RhdGEtbGFiZWw9XCJDaXRhdGlvblwiXSB7XHJcblx0Y29sb3I6ICNhNDEyM2Y7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0Zm9udC1zaXplOiAxM3B4O1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcbn0gKi8iXX0= */\"","import { Component, OnInit, ViewChild, Inject, ElementRef } from '@angular/core';\r\nimport { MatrixFundDetailsService } from '../../../Services/matrix-fund-details.service';\r\nimport { Router, ActivatedRoute, Params, NavigationEnd } from '@angular/router';\r\nimport { CheckAuth } from '../../../Services/utility.service';\r\nimport { matrixModel } from 'src/Models/matrixModel';\r\n// import * as jspdf from 'jspdf';\r\n// import * as html2canvas from 'html2canvas';\r\nimport { stateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { updatesPageModel } from 'src/Models/updatesPageModel';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { updatesService } from '../../../Services/updatesService';\r\nimport { updatesModel } from '../../../Models/updatesModel';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { htmlToPdf } from 'src/Services/htmlToPdf';\r\nimport * as FileSaver from 'file-saver';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ActionActivity, ToolEnum } from '../../../Models/Common';\r\nimport { ApplicationActivityService } from 'src/Services/application-activity.service';\r\nimport { ApplicationActivityStore } from 'src/common/commonFunction';\r\n\r\n@Component({\r\n selector: 'app-fund-details',\r\n templateUrl: './fund-details.component.html',\r\n styleUrls: ['./fund-details.component.css']\r\n})\r\nexport class FundDetailsComponent implements OnInit {\r\n tokenKey: string = '';\r\n statusCode: any;\r\n loginUser: any;\r\n listOfState: string = '1';\r\n listofMatrixFund: matrixModel[];\r\n isNoRecord: boolean = false;\r\n isNoFundFound: boolean = false;\r\n totalRecordCount: number = -1;\r\n isloading: boolean = false;\r\n\r\n fundReference: string = '';\r\n\r\n isSidePanelActive: boolean = true;\r\n sidepanellistOfState: stateMasterModel[];\r\n chkselectAll: boolean = false;\r\n isStateRecord: boolean = false;\r\n selectedStateCounter: number = 0;\r\n listOfStateId: string = '';\r\n selectAllID: string[];\r\n listOfID: string[];\r\n\r\n showState: boolean = false;\r\n\r\n statenamepopup: string;\r\n isupdatesloading: boolean = false;\r\n parameterModel = new updatesPageModel();\r\n appModel: any;\r\n updatesModel: updatesModel[] = [];\r\n totalupdatesRecordsCount: number = -1;\r\n totalunread: number = 0;\r\n unreaddata: string = 'unread';\r\n\r\n isShowprogressSpinner: boolean = true;\r\n blockedDocument: boolean = true;\r\n drpOtherReuirement: string = '';\r\n rowStart: string = '
';\r\n rowEnd: string = '
';\r\n //@ViewChild('id')\r\n baseUrl: string;\r\n adminUserType: boolean = true;\r\n oneStatePdfDonwload: boolean = true;\r\n multiStatePdfDonwload: boolean = false;\r\n isPageBreak: boolean = false;\r\n\r\n isOuterNoRecord :boolean = false;\r\n stateName :string;\r\n\r\n @ViewChild('deletecloseBtn', {static: false}) deletecloseBtn: ElementRef;\r\n isShowPdfAndPrintButton: boolean = true;\r\n productId: number = 1;\r\n ClientSelectedTool: string;\r\n constructor(private appActivity: ApplicationActivityService,\r\n private titleService: Title, @Inject('BASE_URL') baseUrl: string, private htmlToPdf: htmlToPdf, private toastr: ToastrService, private updatesService: updatesService, private matrix: MatrixService, private activedRoute: ActivatedRoute, private checkAuth: CheckAuth, private router: Router, private MaxtixFund: MatrixFundDetailsService) {\r\n this.oneStatePdfDonwload = true;\r\n this.multiStatePdfDonwload = false;\r\n\r\n if (sessionStorage.getItem('AdminUserType') == \"1\")\r\n this.adminUserType = false;\r\n\r\n this.baseUrl = baseUrl;\r\n\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n if (sessionStorage.getItem('isAdminOpen') == 'true') {\r\n this.loginUser = sessionStorage.getItem('AdminUserId');\r\n this.listOfState = sessionStorage.getItem('StateSetupManageRedirection');\r\n //sessionStorage.removeItem('isAdminOpen');\r\n this.productId = ToolEnum[sessionStorage.getItem('UserLoginTool')];\r\n }\r\n else {\r\n this.loginUser = sessionStorage.getItem('UserId');\r\n this.listOfState = sessionStorage.getItem('singleStatePreview');\r\n this.productId = ToolEnum[sessionStorage.getItem('ClientLoginTool')];\r\n }\r\n\r\n this.listofMatrixFund = [];\r\n this.totalRecordCount = -1;\r\n this.isloading = false;\r\n this.listOfID = [];\r\n\r\n this.activedRoute.params.subscribe((params: Params) => {\r\n if (params['id']) {\r\n if (params['id'] != null) {\r\n this.fundReference = params['id'];\r\n //this.stateName = params['id'];\r\n }\r\n }\r\n });\r\n\r\n if(sessionStorage.getItem('updatefunddata'))\r\n this.fundReference = sessionStorage.getItem('updatefunddata');\r\n\r\n sessionStorage.removeItem('updatefunddata');\r\n\r\n if (this.fundReference != null && this.fundReference != '')\r\n this.showState = true;\r\n\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.titleService.setTitle('Details');\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n if (this.fundReference != '' && this.fundReference != undefined)\r\n this.moveOnHmtlID(this.fundReference);\r\n }, 1000);\r\n }\r\n\r\n ngOnInit() {\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.GetRightPanelStateList();\r\n this.GetMaxtixFund();\r\n\r\n // this.router.events.subscribe((evt) => {\r\n // if (!(evt instanceof NavigationEnd)) {\r\n // return;\r\n // }\r\n // window.scrollTo(0, 0)\r\n // });\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n GetMaxtixFund() {\r\n this.isloading = true;\r\n this.blockDocument();\r\n this.MaxtixFund.GetMatrixFindByStateID(this.tokenKey, this.loginUser, this.listOfState, this.productId).subscribe(\r\n data => {\r\n debugger\r\n this.isOuterNoRecord = false;\r\n this.isNoRecord = false;\r\n this.listofMatrixFund = data['matrixFund'];\r\n this.stateName = data['matrixFund'][0].stateName;\r\n this.isloading = false;\r\n if (data['matrixFund'] != null) {\r\n if (data['matrixFund'].length > 0) {\r\n this.totalRecordCount = data['matrixFund'].length;\r\n //document.getElementById('#' + this.fundReference).focus();\r\n }\r\n else{\r\n this.isOuterNoRecord = true;\r\n }\r\n\r\n this.isNoFundFound = false;\r\n this.isNoRecord = false;\r\n }\r\n else {\r\n this.selectedStateCounter = 0;\r\n }\r\n\r\n if (data['matrixFund'] != null) {\r\n if (data['matrixFund'].length == 0) {\r\n this.isNoRecord = true;\r\n }\r\n else {\r\n if (data['matrixFund'][0].listOfMatrix.length == 0) {\r\n this.isNoFundFound = true;\r\n }\r\n }\r\n }\r\n else\r\n this.isNoRecord = true;\r\n\r\n this.unblockDocument();\r\n },\r\n error => {\r\n this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n }\r\n\r\n //Removed Functionalities of printDocument.\r\n // printDocument() {\r\n // this.isPageBreak = true;\r\n // window.print();\r\n // }\r\n\r\n createMyPdf() {\r\n this.isPageBreak = true;\r\n this.blockDocument();\r\n let mainURL = this.baseUrl;\r\n // let url = '
';\r\n // url += '
';\r\n // url += '
';\r\n\r\ndebugger\r\n let url = ' '\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n url += ' ';\r\n var html = url + document.getElementById('divPrint').innerHTML;\r\n this.htmlToPdf.CreatePDF(this.tokenKey, html, '0',this.productId,this.stateName).\r\n subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n //this.downloadFile(data['fileName'], data['url']);\r\n this.downloadFile('StateDetails.pdf', data['url'], data['fileName']);\r\n this.deletecloseBtn.nativeElement.click();\r\n }\r\n },\r\n error => {\r\n this.statusCode = error,\r\n this.unblockDocument();\r\n }\r\n );\r\n\r\n }\r\n\r\n public downloadFile(filename: any, url: any, orignalFileName: any) {\r\n this.htmlToPdf.downloadPdf(url).subscribe(\r\n (res) => {\r\n FileSaver.saveAs(res, filename);\r\n if (this.ClientSelectedTool == 'wireless') {\r\n ApplicationActivityStore('Download', 'Wireless PRO States File download ' + filename, this.appActivity, ToolEnum.wireless, ActionActivity.Wireless, '/wireless/Matrix/Fund/Details',this.stateName);\r\n }\r\n else if (this.ClientSelectedTool == 'ipcs') {\r\n ApplicationActivityStore('Download', 'IPCS PRO States File download ' + filename, this.appActivity, ToolEnum.ipcs, ActionActivity.IPCS, '/ipcs/Matrix/Fund/Details',this.stateName);\r\n }\r\n else {\r\n ApplicationActivityStore('Download', 'VoIP PRO States File download ' + filename, this.appActivity, ToolEnum.voip, ActionActivity.VoIP, '/voip/Matrix/Fund/Details',this.stateName);\r\n }\r\n sessionStorage.setItem('fileloading', 'false');\r\n this.htmlToPdf.DeletePDF(this.tokenKey, orignalFileName).subscribe(\r\n data => {\r\n this.unblockDocument();\r\n },\r\n );\r\n }\r\n );\r\n }\r\n\r\n // pdfDocument() {\r\n // this.blockDocument();\r\n // var data = document.getElementById('divPrint');\r\n\r\n // html2canvas(data).then(canvas => {\r\n // var imgWidth = 210;\r\n // var pageHeight = 295;\r\n // var imgHeight = canvas.height * imgWidth / canvas.width;\r\n // //var imgHeight = 250;\r\n // var heightLeft = imgHeight;\r\n\r\n // var imgData = canvas.toDataURL('image/png')\r\n\r\n // var doc = new jspdf('p', 'mm', 'a4');\r\n // var position = 5;\r\n\r\n // doc.addImage(imgData, 'PNG', 10, position, imgWidth - 20, imgHeight - 20);\r\n // heightLeft -= pageHeight;\r\n // var margins = { top: 90, bottom: 60, left: 90, width: 900 };\r\n\r\n // while (heightLeft >= 0) {\r\n // position = heightLeft - imgHeight;\r\n // doc.addPage();\r\n // doc.addImage(imgData, 'PNG', 10, position, imgWidth - 20, imgHeight - 20);\r\n // //imgWidth = imgWidth - 20;\r\n // //imgHeight = imgHeight - 20;\r\n // heightLeft -= pageHeight;\r\n // }\r\n // doc.save('FundDetails.pdf');\r\n // this.unblockDocument();\r\n // });\r\n // }\r\n\r\n ShowHideSidePanel() {\r\n this.isSidePanelActive = !this.isSidePanelActive;\r\n }\r\n\r\n GetRightPanelStateList() {\r\n //this.blockDocument();\r\n this.isStateRecord = false;\r\n this.selectAllID = [];\r\n this.listOfID = [];\r\n\r\n this.MaxtixFund.GetMatrixFundState(this.tokenKey, this.loginUser,this.productId).subscribe(\r\n data => {\r\n this.isStateRecord = true;\r\n this.selectedStateCounter = 0;\r\n this.sidepanellistOfState = data['state'];\r\n\r\n if (this.sidepanellistOfState != null) {\r\n if (this.sidepanellistOfState.length > 0) {\r\n this.isShowPdfAndPrintButton = true;\r\n for (let iCounter = 0; iCounter < this.sidepanellistOfState.length; iCounter++) {\r\n if (this.sidepanellistOfState[iCounter].stateId == this.listOfState) {\r\n this.listOfID.push(this.listOfState);\r\n this.sidepanellistOfState[iCounter].isChecked = true;\r\n }\r\n else {\r\n this.sidepanellistOfState[iCounter].isChecked = false;\r\n }\r\n this.selectAllID.push(this.sidepanellistOfState[iCounter].stateId);\r\n }\r\n }\r\n }\r\n else {\r\n this.isShowPdfAndPrintButton = false;\r\n }\r\n this.selectedStateCounter = 1;\r\n //this.unblockDocument();\r\n },\r\n error => {\r\n this.statusCode = error;\r\n }\r\n );\r\n }\r\n\r\n checkIfSelected(stateId: any, event: any) {\r\n this.fundReference = '';\r\n if (!event.currentTarget.checked) {\r\n this.listOfID = this.listOfID.filter(m => m != stateId);\r\n }\r\n else {\r\n this.listOfID.push(stateId);\r\n }\r\n this.populateSelectedIdData(this.listOfID);\r\n }\r\n\r\n populateSelectedIdData(listOfID: any) {\r\n if (this.listOfID != null) {\r\n let seprator = '';\r\n if (this.listOfID.length > 0) {\r\n this.listOfStateId = '';\r\n this.isShowPdfAndPrintButton = true;\r\n for (let iCounter = 0; iCounter < this.listOfID.length; iCounter++) {\r\n this.listOfStateId += seprator + this.listOfID[iCounter];\r\n seprator = ',';\r\n }\r\n this.selectedStateCounter = this.listOfID.length;\r\n if (this.listOfID.length == 1) {\r\n this.oneStatePdfDonwload = true;\r\n this.multiStatePdfDonwload = false;\r\n }\r\n else {\r\n this.oneStatePdfDonwload = false;\r\n this.multiStatePdfDonwload = true;\r\n }\r\n\r\n }\r\n else {\r\n this.listOfStateId = 'null';\r\n this.selectedStateCounter = 0;\r\n this.isShowPdfAndPrintButton = false;\r\n }\r\n }\r\n this.listOfState = this.listOfStateId;\r\n this.GetMaxtixFund();\r\n }\r\n\r\n selectAllCheckBox(event: any) {\r\n this.listOfStateId = '';\r\n //this.listOfState = []\r\n this.listOfID = [];\r\n if (!event.currentTarget.checked) {\r\n //this.selectAllID = [];\r\n this.isShowPdfAndPrintButton = false;\r\n for (let iCounter = 0; iCounter < this.sidepanellistOfState.length; iCounter++) {\r\n this.sidepanellistOfState[iCounter].isChecked = false;\r\n }\r\n }\r\n else {\r\n this.isShowPdfAndPrintButton = true;\r\n this.listOfID = this.selectAllID;\r\n for (let iCounter = 0; iCounter < this.sidepanellistOfState.length; iCounter++) {\r\n this.sidepanellistOfState[iCounter].isChecked = true;\r\n }\r\n }\r\n\r\n this.populateSelectedIdData(this.listOfID);\r\n }\r\n\r\n openpopup(stateid, statename) {\r\n this.statenamepopup = statename;\r\n this.GetUpdates(stateid);\r\n }\r\n\r\n GetUpdates(stateid): void {\r\n this.isupdatesloading = true;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n\r\n this.parameterModel.pageSize = this.appModel.PageSize;\r\n this.parameterModel.pageIndex = '1';\r\n this.parameterModel.keywordFilter = 'null';\r\n this.parameterModel.whereCondition = ' StateId=' + stateid;\r\n this.parameterModel.orderBy = 'UpdateDate desc';\r\n this.parameterModel.fromupdatesDateFilter = \"null\";\r\n this.parameterModel.toupdatesDateFilter = \"null\";\r\n this.parameterModel.userID = this.loginUser.toString();\r\n this.parameterModel.updatetype = \"null\";\r\n this.parameterModel.unreadonly = \"1\";\r\n this.updatesService.getupdatesfindByUserID(this.tokenKey, this.parameterModel).subscribe(\r\n data => {\r\n this.isupdatesloading = false;\r\n //this.firstNameElement.nativeElement.click();\r\n if (data[\"status\"] == \"Success\") {\r\n this.updatesModel = data[\"updates\"];\r\n if (this.updatesModel.length > 0) {\r\n this.totalupdatesRecordsCount = this.updatesModel.length;\r\n this.saveNotification(this.updatesModel);\r\n }\r\n else {\r\n this.totalupdatesRecordsCount = 0;\r\n }\r\n }\r\n else {\r\n this.showMessage('There is an issue while fetching data. Please try again.', 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.statusCode = error\r\n },\r\n );\r\n }\r\n\r\n saveNotification(updates) {\r\n let _updates = updates;\r\n for (let iCounter = 0; iCounter < _updates.length; iCounter++) {\r\n _updates[iCounter].createdBy = this.loginUser.toString();\r\n }\r\n let count = updates.length;\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n this.updatesService.addNotification(_updates, this.tokenKey).subscribe(data => {\r\n if (data.status == 'Success') {\r\n sessionStorage.setItem(this.unreaddata, ((+this.totalunread) - (+count)).toString());\r\n this.totalunread = +sessionStorage.getItem(this.unreaddata);\r\n // Set Update Counter Logic\r\n if (window.document.body.getElementsByClassName('unread')) {\r\n if (this.totalunread == 0) {\r\n window.document.body.getElementsByClassName('unread')[0].setAttribute(\"style\", \"display:none\");\r\n }\r\n else\r\n window.document.body.getElementsByClassName('unread')[0].innerHTML = this.totalunread.toString();\r\n }\r\n this.GetMaxtixFund();\r\n }\r\n else {\r\n this.showMessage(data.status, 'Error', 'error');\r\n }\r\n }, error => {\r\n this.showMessage(error, 'Error', 'error');\r\n });\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n blockDocument() {\r\n this.isShowprogressSpinner = true;\r\n this.blockedDocument = true;\r\n }\r\n\r\n unblockDocument() {\r\n this.isShowprogressSpinner = false;\r\n this.blockedDocument = false;\r\n }\r\n\r\n onChange($event: any) {\r\n if ($event == 'Choose a Topic') {\r\n this.drpOtherReuirement = '';\r\n }\r\n else\r\n this.drpOtherReuirement = $event;\r\n }\r\n\r\n moveOnHmtlID(fundReference: any) {\r\n if (this.showState) {\r\n let top = document.getElementById(fundReference);\r\n if (top !== null) {\r\n top.scrollIntoView({ behavior: \"smooth\", block: \"start\", inline: 'nearest' });\r\n top = null;\r\n }\r\n }\r\n }\r\n\r\n ReplaceString(value) {\r\n return value.replace(/\\//g,'-');\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL1NoYXJlZC9ub3Rlcy1wb3B1cC9ub3Rlcy1wb3B1cC5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ActionItemService } from 'src/Services/actionitem.service';\r\nimport { CheckAuth } from 'src/Services/utility.service';\r\nimport { ActionItemSearchModel } from 'src/Models/ActionItemSearchModel';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { ActionItemSaveNoteModel } from 'src/Models/ActionItemSaveNoteModel';\r\nimport { ActionItemSearchNotesModel } from 'src/Models/ActionItemSearchNotesModel';\r\n\r\n@Component({\r\n selector: 'app-notes-popup',\r\n templateUrl: './notes-popup.component.html',\r\n styleUrls: ['./notes-popup.component.css']\r\n})\r\nexport class NotesPopupComponent implements OnInit {\r\n tokenKey: string = '';\r\n actionItemSearchModel = new ActionItemSearchModel()\r\n stateArray: any = [];\r\n carrierCategoryArray: any = [];\r\n\r\n companyId: number = 0;\r\n userId: number = 0;\r\n actionId: number = 0;\r\n updateId: number = 0;\r\n productId: number = 0;\r\n actionNoteId: number = 0;\r\n notes: string = '';\r\n\r\n isNotesData: boolean = false;\r\n isCompanyUser:boolean=false;\r\n deletedId: number = 0;\r\n addUpdateNotesStatus = new FormGroup({\r\n notes: new FormControl(''),\r\n actionID: new FormControl(''),\r\n updateID: new FormControl(''),\r\n actionNoteID: new FormControl(''),\r\n briefingId: new FormControl(''),\r\n });\r\n\r\n notesModel = new ActionItemSaveNoteModel();\r\n listOfNotes: ActionItemSearchNotesModel[];\r\n\r\n isAscending: boolean = true;\r\n orderBy: string = 'Desc';\r\n upDowNoteCSS: string = '';\r\n upDowDateCSS: string = 'active-up';\r\n sortColumnName: string = 'createdDate';\r\n\r\n isAccordianShow: boolean = true;\r\n\r\n isOneClickOnButton: boolean = false;\r\n briefingId: number = 0;\r\n constructor(private toastr: ToastrService, private actionItemServices: ActionItemService, private checkAuth: CheckAuth, public activeModal: NgbActiveModal) {\r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.companyId = +sessionStorage.getItem(\"CompanyId\");\r\n this.userId = +sessionStorage.getItem('UserId');\r\n this.productId = +sessionStorage.getItem('productId');\r\n this.updateId = +sessionStorage.getItem('updateId');\r\n this.actionId = +sessionStorage.getItem('actionId');\r\n this.briefingId = +sessionStorage.getItem('briefingId');\r\n\r\n sessionStorage.removeItem('productId');\r\n sessionStorage.removeItem('updateId');\r\n sessionStorage.removeItem('actionId');\r\n sessionStorage.removeItem('briefingId');\r\n\r\n this.ActionItemSearchByIds(this.userId, this.updateId, this.actionId, this.briefingId);\r\n this.GetActionItemSearchNotes(this.userId, this.updateId, this.actionId, this.sortColumnName + this.orderBy, this.briefingId);\r\n }\r\n\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n ActionItemSearchByIds(userId: any, updateId: any, actionId: any, briefingId: any) {\r\n this.actionItemServices.ActionItemSearchByIds(this.tokenKey, userId, updateId, actionId, briefingId).subscribe(\r\n data => {\r\n\r\n if (data['status'] == 'Success') {\r\n this.actionItemSearchModel = data['actionItemSearchModel'];\r\n this.isCompanyUser=this.actionItemSearchModel.CompanyUser;\r\n if (this.actionItemSearchModel.stateName != 'null' && typeof (this.actionItemSearchModel.stateName) != 'undefined') {\r\n this.stateArray = this.actionItemSearchModel.stateName.split(',');\r\n }\r\n if (this.actionItemSearchModel.carrierNames != 'null' && typeof (this.actionItemSearchModel.carrierNames) != 'undefined') {\r\n this.carrierCategoryArray = this.actionItemSearchModel.carrierNames.split(',');\r\n }\r\n }\r\n });\r\n }\r\n\r\n addUpdateNotes(addUpdateNotesStatus: any, isButtonDisable: boolean) {\r\n this.notesModel = addUpdateNotesStatus.value;\r\n this.notesModel.userID = this.userId;\r\n event.preventDefault();\r\n\r\n\r\n\r\n if (isButtonDisable) {\r\n console.log('client clicked on dubble click');\r\n return;\r\n }\r\n\r\n this.isOneClickOnButton = true;\r\n\r\n this.actionItemServices.ActionItemSaveNote(this.tokenKey, this.notesModel).subscribe(\r\n data => {\r\n this.isOneClickOnButton = false;\r\n if (data['status'] == 'Success') {\r\n if (this.notesModel.actionNoteId == 0) {\r\n this.showMessage('Note saved successfully', 'Success', 'success');\r\n }\r\n else {\r\n this.showMessage('Note upteded successfully', 'Success', 'success');\r\n }\r\n this.activeModal.close('Yes');\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error');\r\n }\r\n },\r\n error => {\r\n this.showMessage(error, 'Error', 'error');\r\n this.isOneClickOnButton = false;\r\n }\r\n );\r\n }\r\n\r\n GetActionItemSearchNotes(userId: any, updateId: any, actionId: any, sortColumnName: any, briefingId: any) {\r\n this.actionItemServices.GetActionItemSearchNotes(this.tokenKey, userId, updateId, actionId, sortColumnName, briefingId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.listOfNotes = data['actionItemSaveNoteList'];\r\n if (this.listOfNotes != null) {\r\n if (this.listOfNotes.length == 0) {\r\n this.isNotesData = true;\r\n }\r\n else {\r\n this.isNotesData = false;\r\n }\r\n }\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error');\r\n }\r\n }\r\n );\r\n }\r\n\r\n showMessage(msg: string, msgTitle: string, msgType: string) {\r\n if (msgType == 'success') {\r\n setTimeout(() => this.toastr.success(msg, msgTitle));\r\n }\r\n else if (msgType == 'error') {\r\n setTimeout(() => this.toastr.error(msg, msgTitle));\r\n }\r\n }\r\n\r\n EditNotes(notes: string, actionNoteId: number) {\r\n\r\n this.notesModel.actionNoteId = actionNoteId;\r\n this.notes = notes;\r\n this.addUpdateNotesStatus.setValue\r\n ({\r\n notes: notes,\r\n actionID: this.actionId,\r\n updateID: this.updateId,\r\n actionNoteID: actionNoteId,\r\n briefingId: this.briefingId\r\n });\r\n }\r\n\r\n setDeletedNotedId(actionNoteId: number) {\r\n this.deletedId = actionNoteId;\r\n }\r\n\r\n DeleteNotes(actionNoteId: number) {\r\n\r\n this.actionItemServices.ActionNotesDeleteByIds(this.tokenKey, actionNoteId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.showMessage('Note deleted successfully', 'Success', 'success');\r\n this.GetActionItemSearchNotes(this.userId, this.updateId, this.actionId, this.sortColumnName, this.briefingId);\r\n }\r\n else {\r\n this.showMessage(data['status'], 'Error', 'error');\r\n }\r\n }\r\n );\r\n }\r\n\r\n sort(colName: any) {\r\n\r\n if (this.sortColumnName != colName) {\r\n this.isAscending = false;\r\n }\r\n\r\n if (this.sortColumnName === colName) {\r\n this.isAscending = !this.isAscending;\r\n }\r\n\r\n if (this.isAscending) {\r\n //this.isAscending = true;\r\n this.orderBy = ' DESC';\r\n if (colName === \"createdDate\") {\r\n this.upDowDateCSS = 'active-up';\r\n this.upDowNoteCSS = '';\r\n }\r\n else if (colName === \"note\") {\r\n this.upDowDateCSS = '';\r\n this.upDowNoteCSS = 'active-up';\r\n }\r\n }\r\n else {\r\n //this.isAscending = false;\r\n this.orderBy = '';\r\n if (colName === \"createdDate\") {\r\n this.upDowDateCSS = 'active';\r\n this.upDowNoteCSS = '';\r\n }\r\n else if (colName === \"note\") {\r\n this.upDowDateCSS = '';\r\n this.upDowNoteCSS = 'active';\r\n }\r\n }\r\n this.sortColumnName = colName;\r\n this.GetActionItemSearchNotes(this.userId, this.updateId, this.actionId, this.sortColumnName + this.orderBy, this.briefingId);\r\n }\r\n\r\n}\r\n","export default \"/* Customize the label (the container) */\\r\\n.container {\\r\\n display: block;\\r\\n position: relative;\\r\\n padding-left: 35px;\\r\\n margin-bottom: 12px;\\r\\n cursor: pointer;\\r\\n font-size: 12px;\\r\\n -webkit-user-select: none;\\r\\n -moz-user-select: none;\\r\\n -ms-user-select: none;\\r\\n user-select: none;\\r\\n}\\r\\n/* Hide the browser's default checkbox */\\r\\n.container input {\\r\\n position: absolute;\\r\\n opacity: 0;\\r\\n cursor: pointer;\\r\\n height: 0;\\r\\n width: 0;\\r\\n}\\r\\n/* Create a custom checkbox */\\r\\n.checkmark {\\r\\n position: absolute;\\r\\n top: 3px;\\r\\n left: 0;\\r\\n height: 17px;\\r\\n width: 17px;\\r\\n background-color: #eee;\\r\\n border-radius: 5px;\\r\\n}\\r\\n/* On mouse-over, add a grey background color\\r\\n.container:hover input ~ .checkmark {\\r\\n background-color: #eeeeee !important;\\r\\n} */\\r\\n/* When the checkbox is checked, add a blue background */\\r\\n.container input:checked~.checkmark {\\r\\n background-color: #2d0080;\\r\\n}\\r\\n/* Create the checkmark/indicator (hidden when not checked) */\\r\\n.checkmark:after {\\r\\n content: \\\"\\\";\\r\\n position: absolute;\\r\\n display: none;\\r\\n}\\r\\n/* Show the checkmark when checked */\\r\\ninput:checked~.checkmark:after {\\r\\n display: block;\\r\\n}\\r\\n/* Style the checkmark/indicator */\\r\\n.container .checkmark:after {\\r\\n left: 6px;\\r\\n top: 3px;\\r\\n width:6px;\\r\\n height: 9px;\\r\\n border: solid white;\\r\\n border-width: 0 2px 2px 0;\\r\\n -webkit-transform: rotate(45deg);\\r\\n transform: rotate(45deg);\\r\\n}\\r\\n.container input:checked~.checkmark1 {\\r\\n background-color: #2d0080;\\r\\n}\\r\\n/* Create the checkmark/indicator (hidden when not checked) */\\r\\n.checkmark1:after {\\r\\n content: \\\"\\\";\\r\\n position: absolute;\\r\\n display: none;\\r\\n}\\r\\n/* Show the checkmark when checked */\\r\\ninput:checked~.checkmark1:after {\\r\\n display: block;\\r\\n}\\r\\n.container .checkmark1:after {\\r\\n left: 6px;\\r\\n top: 3px;\\r\\n width:6px;\\r\\n height: 9px;\\r\\n border: solid black;\\r\\n border-width: 0 2px 2px 0;\\r\\n -webkit-transform: rotate(45deg);\\r\\n transform: rotate(45deg);\\r\\n}\\r\\n.checkmark1 {\\r\\n position: absolute;\\r\\n top: 3px;\\r\\n left: 0;\\r\\n height: 17px;\\r\\n width: 17px;\\r\\n background-color: #eee;\\r\\n border-radius: 5px;\\r\\n}\\r\\n.mleft {\\r\\n margin-left: 5px;\\r\\n cursor: pointer;\\r\\n margin-top: 2px;\\r\\n color: #b1b8bb;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvU2hhcmVkL3NlYXJjaC1wYW5lbC9zZWFyY2gtcGFuZWwuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx3Q0FBd0M7QUFDeEM7RUFDRSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLGVBQWU7RUFDZix5QkFBeUI7RUFDekIsc0JBQXNCO0VBQ3RCLHFCQUFxQjtFQUNyQixpQkFBaUI7QUFDbkI7QUFDQSx3Q0FBd0M7QUFDeEM7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGVBQWU7RUFDZixTQUFTO0VBQ1QsUUFBUTtBQUNWO0FBR0EsNkJBQTZCO0FBQzdCO0VBQ0Usa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixPQUFPO0VBQ1AsWUFBWTtFQUNaLFdBQVc7RUFDWCxzQkFBc0I7RUFDdEIsa0JBQWtCO0FBQ3BCO0FBR0E7OztHQUdHO0FBRUgsd0RBQXdEO0FBQ3hEO0VBQ0UseUJBQXlCO0FBQzNCO0FBRUEsNkRBQTZEO0FBQzdEO0VBQ0UsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixhQUFhO0FBQ2Y7QUFFQSxvQ0FBb0M7QUFDcEM7RUFDRSxjQUFjO0FBQ2hCO0FBRUEsa0NBQWtDO0FBQ2xDO0VBQ0UsU0FBUztJQUNQLFFBQVE7SUFDUixTQUFTO0lBQ1QsV0FBVztFQUNiLG1CQUFtQjtFQUNuQix5QkFBeUI7RUFDekIsZ0NBQWdDO0VBRWhDLHdCQUF3QjtBQUMxQjtBQUVBO0VBQ0UseUJBQXlCO0FBQzNCO0FBRUEsNkRBQTZEO0FBQzdEO0VBQ0UsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixhQUFhO0FBQ2Y7QUFFQSxvQ0FBb0M7QUFDcEM7RUFDRSxjQUFjO0FBQ2hCO0FBRUE7RUFDRSxTQUFTO0lBQ1AsUUFBUTtJQUNSLFNBQVM7SUFDVCxXQUFXO0VBQ2IsbUJBQW1CO0VBQ25CLHlCQUF5QjtFQUN6QixnQ0FBZ0M7RUFFaEMsd0JBQXdCO0FBQzFCO0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLE9BQU87RUFDUCxZQUFZO0VBQ1osV0FBVztFQUNYLHNCQUFzQjtFQUN0QixrQkFBa0I7QUFDcEI7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsZUFBZTtFQUNmLGNBQWM7QUFDaEIiLCJmaWxlIjoic3JjL2FwcC9TaGFyZWQvc2VhcmNoLXBhbmVsL3NlYXJjaC1wYW5lbC5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogQ3VzdG9taXplIHRoZSBsYWJlbCAodGhlIGNvbnRhaW5lcikgKi9cclxuLmNvbnRhaW5lciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmctbGVmdDogMzVweDtcclxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG4vKiBIaWRlIHRoZSBicm93c2VyJ3MgZGVmYXVsdCBjaGVja2JveCAqL1xyXG4uY29udGFpbmVyIGlucHV0IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgb3BhY2l0eTogMDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIHdpZHRoOiAwO1xyXG59XHJcblxyXG5cclxuLyogQ3JlYXRlIGEgY3VzdG9tIGNoZWNrYm94ICovXHJcbi5jaGVja21hcmsge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDNweDtcclxuICBsZWZ0OiAwO1xyXG4gIGhlaWdodDogMTdweDtcclxuICB3aWR0aDogMTdweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xyXG4gIGJvcmRlci1yYWRpdXM6IDVweDtcclxufVxyXG5cclxuXHJcbi8qIE9uIG1vdXNlLW92ZXIsIGFkZCBhIGdyZXkgYmFja2dyb3VuZCBjb2xvclxyXG4uY29udGFpbmVyOmhvdmVyIGlucHV0IH4gLmNoZWNrbWFyayB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZSAhaW1wb3J0YW50O1xyXG59ICovXHJcblxyXG4vKiBXaGVuIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLCBhZGQgYSBibHVlIGJhY2tncm91bmQgKi9cclxuLmNvbnRhaW5lciBpbnB1dDpjaGVja2Vkfi5jaGVja21hcmsge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyZDAwODA7XHJcbn1cclxuXHJcbi8qIENyZWF0ZSB0aGUgY2hlY2ttYXJrL2luZGljYXRvciAoaGlkZGVuIHdoZW4gbm90IGNoZWNrZWQpICovXHJcbi5jaGVja21hcms6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFNob3cgdGhlIGNoZWNrbWFyayB3aGVuIGNoZWNrZWQgKi9cclxuaW5wdXQ6Y2hlY2tlZH4uY2hlY2ttYXJrOmFmdGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLyogU3R5bGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKi9cclxuLmNvbnRhaW5lciAuY2hlY2ttYXJrOmFmdGVyIHtcclxuICBsZWZ0OiA2cHg7XHJcbiAgICB0b3A6IDNweDtcclxuICAgIHdpZHRoOjZweDtcclxuICAgIGhlaWdodDogOXB4O1xyXG4gIGJvcmRlcjogc29saWQgd2hpdGU7XHJcbiAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxufVxyXG5cclxuLmNvbnRhaW5lciBpbnB1dDpjaGVja2Vkfi5jaGVja21hcmsxIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQwMDgwO1xyXG59XHJcblxyXG4vKiBDcmVhdGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKGhpZGRlbiB3aGVuIG5vdCBjaGVja2VkKSAqL1xyXG4uY2hlY2ttYXJrMTphZnRlciB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogU2hvdyB0aGUgY2hlY2ttYXJrIHdoZW4gY2hlY2tlZCAqL1xyXG5pbnB1dDpjaGVja2Vkfi5jaGVja21hcmsxOmFmdGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmNvbnRhaW5lciAuY2hlY2ttYXJrMTphZnRlciB7XHJcbiAgbGVmdDogNnB4O1xyXG4gICAgdG9wOiAzcHg7XHJcbiAgICB3aWR0aDo2cHg7XHJcbiAgICBoZWlnaHQ6IDlweDtcclxuICBib3JkZXI6IHNvbGlkIGJsYWNrO1xyXG4gIGJvcmRlci13aWR0aDogMCAycHggMnB4IDA7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbn1cclxuXHJcbi5jaGVja21hcmsxIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAzcHg7XHJcbiAgbGVmdDogMDtcclxuICBoZWlnaHQ6IDE3cHg7XHJcbiAgd2lkdGg6IDE3cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbn1cclxuXHJcbi5tbGVmdCB7XHJcbiAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgbWFyZ2luLXRvcDogMnB4O1xyXG4gIGNvbG9yOiAjYjFiOGJiO1xyXG59XHJcbiJdfQ== */\"","import { Component, OnInit, EventEmitter, Output, Inject, Input } from '@angular/core';\r\nimport { ActionItemTypeModel } from '../../../Models/ActionItemTypeModel';\r\nimport { CarrierCategoryModel } from '../../../Models/carrierCategoryModel';\r\nimport { ActionItemService } from '../../../Services/actionitem.service';\r\nimport { ActionCalendarSearch } from 'src/Models/actionCalendarSearchModel';\r\nimport { getDate, getMonth } from 'ngx-bootstrap/chronos/utils/date-getters';\r\nimport { MatrixService } from 'src/Services/matrix.service';\r\nimport { ToolEnum } from '../../../Models/Common';\r\nimport { stateMasterModel } from 'src/Models/stateMasterModel';\r\nimport { setMonth } from 'ngx-bootstrap/chronos/utils/date-setters';\r\nimport { actionStatus } from '../../../Models/actionStatusModel';\r\nimport { setISODayOfWeek } from 'ngx-bootstrap/chronos/units/day-of-week';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AppConfig } from '../../../Services/app.config';\r\nimport { FavoriteModel } from '../../../Models/FavoriteModel';\r\nimport { ActionCompanySpecificCategoryService } from 'src/Services/action-company-specific-category.service';\r\nimport { ActionCompanySpecificCategoryModel } from 'src/Models/ActionCompanySpecificCategoryModel';\r\n\r\n@Component({\r\n selector: 'app-search-panel',\r\n templateUrl: './search-panel.component.html',\r\n styleUrls: ['./search-panel.component.css']\r\n})\r\nexport class SearchPanelComponent implements OnInit {\r\n @Output('parentFun') parentFun: EventEmitter = new EventEmitter();\r\n @Output('showdescription') showdescription: EventEmitter = new EventEmitter();\r\n @Output('downloadFile') downloadFile: EventEmitter = new EventEmitter();\r\n\r\n listOfStateId: string = '';\r\n listOfState: stateMasterModel[];\r\n actionItemsList: ActionItemTypeModel[];\r\n searchModal = new ActionCalendarSearch();\r\n selectedActionTypeIds: any[];\r\n selectedCareerIds: any[];\r\n selectedStatus: any[];\r\n loginUser: any;\r\n chkselectAll: boolean = false;\r\n productId: number = 1;\r\n carrierCategoryModel: CarrierCategoryModel[];\r\n tokenKey: string = null;\r\n isSidePanelActive: boolean = true;\r\n selectedStateCounter: number;\r\n isStateRecord: boolean = false;\r\n selectAllID: string[];\r\n listOfID: any[];\r\n ClientSelectedTool: string;\r\n CurrentTime = new Date();\r\n EndTime = new Date();\r\n bsRangeValue: Date[];\r\n isListShow = false;\r\n actionStatus: any[] = [];\r\n month: number;\r\n n: number = 3;\r\n baseUrl: string\r\n appModel: any;\r\n isICalSubscription: boolean = false;\r\n isSidePanelActive1: boolean = true;\r\n //#region Dashboard \r\n @Input('dashboardSummaryType') dashboardSummaryType = 0;\r\n @Input('dashboardCarrierCategories') dashboardCarrierCategories = 0;\r\n @Input('dashboardActionStatus') dashboardActionStatus = 0;\r\n //#endregion\r\n\r\n FilterFavourite: boolean = false;\r\n favouriteModel = new FavoriteModel();\r\n httpAppUrl: string = \"\";\r\n webCalAppUrl: string = \"\";\r\n emailDeadlineDate: string = '';\r\n\r\n dateTrack: number = 0;\r\n emailDateTrack: number = 0;\r\n\r\n isActionTypeSelectAllChecked: boolean = true;\r\n isCarrierCategorySelectAllChecked: boolean = true;\r\n isActionStatusSelectAllChecked: boolean = true;\r\n\r\n MyTracIt: boolean = false;\r\n companyId: number;\r\n companySpecificCategory = [];\r\n selectedCategory = [];\r\n allCategorySelected = true;\r\n editCategoryText = '';\r\n companySpecificCategoryId: number;\r\n\r\n constructor(private toastr: ToastrService,\r\n private actionServices: ActionItemService, private matrix: MatrixService, private companySpecificCategoryService: ActionCompanySpecificCategoryService) {\r\n this.appModel = AppConfig.settings.ConnectionStrings;\r\n this.tokenKey = sessionStorage.getItem('tokenValue');\r\n this.listOfStateId = 'null';\r\n this.selectedStateCounter = 0;\r\n this.listOfID = [];\r\n this.ClientSelectedTool = sessionStorage.getItem('ClientLoginTool');\r\n this.productId = ToolEnum[this.ClientSelectedTool];\r\n this.loginUser = sessionStorage.getItem('UserId');\r\n this.searchModal.userId = +(sessionStorage.getItem('UserId'));\r\n this.searchModal.isNeworChanged = false;\r\n this.searchModal.actionTypeIds = '';\r\n this.searchModal.carrierCatIds = '';\r\n this.searchModal.stateIds = '';\r\n this.searchModal.statusIds = '';\r\n this.companyId = +sessionStorage.getItem(\"CompanyId\");\r\n\r\n // if ((sessionStorage.getItem('dashboardFromDate') != '' && sessionStorage.getItem('dashboardFromDate') != null) && (sessionStorage.getItem('dashboardToDate') != '' && sessionStorage.getItem('dashboardToDate') != null)) {\r\n // this.searchModal.dateFrom = sessionStorage.getItem('dashboardFromDate');\r\n // this.searchModal.toDate = sessionStorage.getItem('dashboardToDate');\r\n // let CurrentTime = new Date(this.searchModal.dateFrom);\r\n // let EndTime = new Date(this.searchModal.toDate);\r\n // this.bsRangeValue = [CurrentTime, EndTime];\r\n // sessionStorage.removeItem('dashboardFromDate');\r\n // sessionStorage.removeItem('dashboardToDate');\r\n // }\r\n // else if (sessionStorage.getItem('dashboardFromDate') == null) {\r\n // //this.searchModal.dateFrom = this.CurrentTime.getFullYear() + '-' + (this.CurrentTime.getMonth() + 1) + '-' + this.CurrentTime.getDate();\r\n // //this.searchModal.toDate = this.CurrentTime.getFullYear() + '-' + (this.CurrentTime.getMonth() + 2) + '-' + this.CurrentTime.getDate();\r\n // this.EndTime.setDate(this.EndTime.getDate() + 30);\r\n // this.bsRangeValue = [this.CurrentTime, this.EndTime];\r\n // }\r\n\r\n this.setEmailAutoLoginParameter();\r\n this.isICalSubscription = sessionStorage.getItem('IsICalSubscription') == 'true' ? true : false;\r\n }\r\n\r\n\r\n ngOnInit() {\r\n\r\n //this.GetRightPanelStateList();\r\n this.setAPIUrl();\r\n this.getCompanySpecificCategory();\r\n //this.parentFun.emit(this.searchModal);\r\n\r\n }\r\n\r\n getCompanySpecificCategory() {\r\n this.companySpecificCategoryService.GetAllActionCompanySpecificCategory(this.tokenKey, this.companyId).subscribe(data => {\r\n if (data['status'] == 'Success') {\r\n if (data.result != null) {\r\n this.companySpecificCategory = data.result;\r\n this.companySpecificCategory.forEach(x => x.isDefaultChecked = true);\r\n }\r\n this.GetRightPanelStateList();\r\n }\r\n })\r\n }\r\n\r\n setEmailAutoLoginParameter() {\r\n\r\n if (sessionStorage.getItem('emailDeadlineDate') != '' && sessionStorage.getItem('emailDeadlineDate') != null) {\r\n //debugger\r\n let dddt = new Date(sessionStorage.getItem('emailDeadlineDate'));\r\n let dd1 = dddt.getDate().toString();\r\n if (parseInt(dd1.toString()) < 10)\r\n dd1 = '0' + dd1.toString();\r\n\r\n let mm1 = (dddt.getMonth() + 1).toString();\r\n if (parseInt(mm1.toString()) < 10)\r\n mm1 = '0' + mm1.toString();\r\n\r\n this.emailDeadlineDate = mm1 + '/' + dd1 + '/' + dddt.getFullYear();\r\n let CurrentTime = new Date(sessionStorage.getItem('emailDeadlineDate'));\r\n let EndTime = new Date(sessionStorage.getItem('emailDeadlineDate'));\r\n this.searchModal.dateFrom = this.emailDeadlineDate;\r\n this.searchModal.toDate = this.emailDeadlineDate;\r\n this.bsRangeValue = [CurrentTime, EndTime];\r\n }\r\n }\r\n\r\n setAPIUrl() {\r\n if (sessionStorage.getItem(\"BaseURL\") != null && sessionStorage.getItem(\"BaseURL\") != \"\") {\r\n this.httpAppUrl = sessionStorage.getItem(\"BaseURL\") || '';\r\n this.httpAppUrl += 'ActionItemSync/ImportCalendar/' + sessionStorage.getItem('EncyUserId');\r\n this.webCalAppUrl = this.httpAppUrl.replace(\"https://\", \"webcal://\");\r\n this.webCalAppUrl = this.httpAppUrl.replace(\"http://\", \"webcal://\");\r\n }\r\n }\r\n populateActionItems() {\r\n this.actionServices.populateActionItems(this.tokenKey).subscribe(data => {\r\n if (data['status'] !== 'Failure') {\r\n this.actionItemsList = data.result.objActionItemsTypeModel;\r\n this.carrierCategoryModel = data.result.objCarrierCategoryModel;\r\n this.actionStatus = data.result.objActionStatusModel;\r\n\r\n this.selectedActionTypeIds = [];\r\n this.selectedCareerIds = [];\r\n this.selectedStatus = [];\r\n\r\n let seprator = '';\r\n for (let index = 0; index < this.actionItemsList.length; index++) {\r\n const element = this.actionItemsList[index].actionItemTypeId;\r\n // Set Cheked/Unchecked Value When Click on Dashboard \r\n if (this.dashboardSummaryType > 0) {\r\n if (this.dashboardSummaryType == this.actionItemsList[index].actionItemTypeId) {\r\n this.actionItemsList[index].isDefaultChecked = true;\r\n this.searchModal.actionTypeIds = this.actionItemsList[index].actionItemTypeId.toString();\r\n }\r\n else {\r\n this.actionItemsList[index].isDefaultChecked = false;\r\n }\r\n }\r\n else {\r\n this.actionItemsList[index].isDefaultChecked = true;\r\n this.searchModal.actionTypeIds += seprator + this.actionItemsList[index].actionItemTypeId;\r\n seprator = ',';\r\n this.selectedActionTypeIds.push(element);\r\n }\r\n }\r\n\r\n seprator = '';\r\n for (let index = 0; index < this.carrierCategoryModel.length; index++) {\r\n const element = this.carrierCategoryModel[index].carrierCatId;\r\n // Set Cheked/Unchecked Value When Click on Dashboard \r\n if (this.dashboardCarrierCategories > 0) {\r\n if (this.dashboardCarrierCategories == this.carrierCategoryModel[index].carrierCatId) {\r\n this.carrierCategoryModel[index].isDefaultChecked = true;\r\n this.searchModal.carrierCatIds = this.carrierCategoryModel[index].carrierCatId.toString();\r\n }\r\n else {\r\n this.carrierCategoryModel[index].isDefaultChecked = false;\r\n }\r\n }\r\n else {\r\n this.carrierCategoryModel[index].isDefaultChecked = true;\r\n this.searchModal.carrierCatIds += seprator + this.carrierCategoryModel[index].carrierCatId;\r\n seprator = ',';\r\n this.selectedCareerIds.push(element);\r\n }\r\n }\r\n\r\n seprator = '';\r\n for (let index = 0; index < this.actionStatus.length; index++) {\r\n const element = this.actionStatus[index].statusId;\r\n // Set Cheked/Unchecked Value When Click on Dashboard \r\n if (this.dashboardActionStatus > 0) {\r\n if (this.dashboardActionStatus == this.actionStatus[index].statusId) {\r\n this.actionStatus[index].isDefaultChecked = true;\r\n this.searchModal.statusIds = this.actionStatus[index].statusId.toString();\r\n }\r\n else {\r\n this.actionStatus[index].isDefaultChecked = false;\r\n }\r\n }\r\n else {\r\n //this.actionStatus[index].isDefaultChecked = true;\r\n //debugger\r\n if (this.actionStatus[index].isDefaultChecked) {\r\n this.searchModal.statusIds += seprator + this.actionStatus[index].statusId;\r\n seprator = ',';\r\n this.selectedStatus.push(element);\r\n }\r\n }\r\n }\r\n\r\n\r\n // const actionIDString = this.selectedActionTypeIds.join(',');\r\n // const careerIDString = this.selectedCareerIds.join(',');\r\n // const actionStaIDString = this.selectedStatus.join(',');\r\n // this.searchModal.actionTypeIds = actionIDString;\r\n // this.searchModal.carrierCatIds = careerIDString;\r\n // this.searchModal.statusIds = actionStaIDString;\r\n\r\n // this.searchModal.dateFrom = this.CurrentTime.getFullYear() + '-' + (this.CurrentTime.getMonth() + 1) + '-' + this.CurrentTime.getDate();\r\n // this.searchModal.toDate = this.CurrentTime.getFullYear() + '-' + (this.CurrentTime.getMonth() + 2) + '-' + this.CurrentTime.getDate();\r\n \r\n this.FilterFavourite = sessionStorage.getItem('dashboardIsFavorite') == 'true' ? true : false;\r\n this.MyTracIt = sessionStorage.getItem('dashboardIsMyTracIt') == 'true' ? true : false;\r\n if (this.FilterFavourite)\r\n this.loadMyFavourite();\r\n\r\n // if (this.MyTracIt)\r\n // this.loadMyTracIt();\r\n\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n\r\n if (this.MyTracIt) {\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n }\r\n });\r\n }\r\n\r\n selectAllActionType($event: any) {\r\n this.selectedActionTypeIds = [];\r\n\r\n for (let iCounter = 0; iCounter < this.actionItemsList.length; iCounter++) {\r\n this.actionItemsList[iCounter].isDefaultChecked = $event.currentTarget.checked;\r\n this.selectedActionTypeIds.push(this.actionItemsList[iCounter].actionItemTypeId);\r\n }\r\n\r\n if (!$event.currentTarget.checked) {\r\n this.selectedActionTypeIds = [];\r\n }\r\n\r\n const str = this.selectedActionTypeIds.join(',');\r\n this.searchModal.actionTypeIds = str;\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n\r\n }\r\n\r\n onClick($event, a: any) {\r\n\r\n if (a == 5) {\r\n this.companySpecificCategory.forEach(x => x.isDefaultChecked = $event.currentTarget.checked);\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n }\r\n\r\n this.FilterFavourite = false;\r\n this.MyTracIt = false;\r\n if (this.searchModal.actionTypeIds != null && typeof (this.searchModal.actionTypeIds) != undefined && this.searchModal.actionTypeIds != '') {\r\n let array = this.searchModal.actionTypeIds.split(',');\r\n for (let iCounter = 0; iCounter < array.length; iCounter++) {\r\n if (this.selectedActionTypeIds.length > 0)\r\n this.selectedActionTypeIds = this.removeElemetninArray(this.selectedActionTypeIds, parseInt(array[iCounter]));\r\n this.selectedActionTypeIds.push(parseInt(array[iCounter]));\r\n }\r\n }\r\n\r\n const found = this.selectedActionTypeIds.find(element => element === a);\r\n if (found !== undefined) {\r\n const index: number = this.selectedActionTypeIds.indexOf(a);\r\n if (index !== -1) {\r\n this.selectedActionTypeIds.splice(index, 1);\r\n }\r\n } else {\r\n if ($event.currentTarget.checked)\r\n this.selectedActionTypeIds.push(a);\r\n }\r\n\r\n for (let iCounter = 0; iCounter < this.actionItemsList.length; iCounter++) {\r\n if (a == this.actionItemsList[iCounter].actionItemTypeId) {\r\n this.actionItemsList[iCounter].isDefaultChecked = $event.currentTarget.checked;\r\n }\r\n }\r\n\r\n if (this.selectedActionTypeIds.length == this.actionItemsList.length)\r\n this.isActionTypeSelectAllChecked = true;\r\n else\r\n this.isActionTypeSelectAllChecked = false;\r\n\r\n const str = this.selectedActionTypeIds.join(',');\r\n this.searchModal.actionTypeIds = str;\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n\r\n removeElemetninArray(array, element) {\r\n return array.filter(e => e !== element);\r\n }\r\n\r\n\r\n selectAllCarrierCategory($event) {\r\n this.selectedCareerIds = [];\r\n\r\n for (let iCounter = 0; iCounter < this.carrierCategoryModel.length; iCounter++) {\r\n this.carrierCategoryModel[iCounter].isDefaultChecked = $event.currentTarget.checked;\r\n this.selectedCareerIds.push(this.carrierCategoryModel[iCounter].carrierCatId);\r\n }\r\n\r\n if (!$event.currentTarget.checked) {\r\n this.selectedCareerIds = [];\r\n }\r\n\r\n //debugger\r\n const str = this.selectedCareerIds.join(',');\r\n this.searchModal.carrierCatIds = str;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n\r\n\r\n onCareerCatChange($event, a: any) {\r\n this.FilterFavourite = false;\r\n this.MyTracIt = false;\r\n if (this.searchModal.carrierCatIds != null && typeof (this.searchModal.carrierCatIds) != undefined && this.searchModal.carrierCatIds != '') {\r\n let array = this.searchModal.carrierCatIds.split(',');\r\n for (let iCounter = 0; iCounter < array.length; iCounter++) {\r\n if (this.selectedCareerIds.length > 0)\r\n this.selectedCareerIds = this.removeElemetninArray(this.selectedCareerIds, parseInt(array[iCounter]));\r\n this.selectedCareerIds.push(parseInt(array[iCounter]));\r\n }\r\n }\r\n\r\n const found = this.selectedCareerIds.find(element => element === a);\r\n if (found !== undefined) {\r\n const index: number = this.selectedCareerIds.indexOf(a);\r\n if (index !== -1) {\r\n this.selectedCareerIds.splice(index, 1);\r\n }\r\n } else {\r\n if ($event.currentTarget.checked)\r\n this.selectedCareerIds.push(a);\r\n }\r\n\r\n for (let iCounter = 0; iCounter < this.carrierCategoryModel.length; iCounter++) {\r\n if (a == this.carrierCategoryModel[iCounter].carrierCatId) {\r\n this.carrierCategoryModel[iCounter].isDefaultChecked = $event.currentTarget.checked;\r\n }\r\n }\r\n\r\n if (this.carrierCategoryModel.length == this.selectedCareerIds.length)\r\n this.isCarrierCategorySelectAllChecked = true;\r\n else\r\n this.isCarrierCategorySelectAllChecked = false;\r\n\r\n const str = this.selectedCareerIds.join(',');\r\n this.searchModal.carrierCatIds = str;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n\r\n onDescriptionChange($event) {\r\n\r\n this.showdescription.emit($event);\r\n }\r\n\r\n selectAllActionStatus($event) {\r\n this.selectedStatus = [];\r\n\r\n for (let iCounter = 0; iCounter < this.actionStatus.length; iCounter++) {\r\n this.actionStatus[iCounter].isDefaultChecked = $event.currentTarget.checked;\r\n this.selectedStatus.push(this.actionStatus[iCounter].statusId);\r\n }\r\n\r\n if (!$event.currentTarget.checked) {\r\n this.selectedStatus = [];\r\n }\r\n\r\n const str = this.selectedStatus.join(',');\r\n this.searchModal.statusIds = str;\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n\r\n onStatusChange($event, a: any) {\r\n //debugger\r\n if (this.searchModal.statusIds != null && typeof (this.searchModal.statusIds) != undefined && this.searchModal.statusIds != '') {\r\n let array = this.searchModal.statusIds.split(',');\r\n for (let iCounter = 0; iCounter < array.length; iCounter++) {\r\n if (this.selectedStatus.length > 0)\r\n this.selectedStatus = this.removeElemetninArray(this.selectedStatus, parseInt(array[iCounter]));\r\n this.selectedStatus.push(parseInt(array[iCounter]));\r\n }\r\n }\r\n const found = this.selectedStatus.find(element => element === a);\r\n if (found !== undefined) {\r\n const index: number = this.selectedStatus.indexOf(a);\r\n if (index !== -1) {\r\n this.selectedStatus.splice(index, 1);\r\n }\r\n\r\n } else {\r\n if ($event.currentTarget.checked)\r\n this.selectedStatus.push(a);\r\n }\r\n\r\n for (let iCounter = 0; iCounter < this.actionStatus.length; iCounter++) {\r\n if (a == this.actionStatus[iCounter].carrierCatId) {\r\n this.actionStatus[iCounter].isDefaultChecked = $event.currentTarget.checked;\r\n }\r\n }\r\n\r\n if (this.actionStatus.length == this.selectedStatus.length)\r\n this.isActionStatusSelectAllChecked = true;\r\n else\r\n this.isActionStatusSelectAllChecked = false;\r\n\r\n\r\n const str = this.selectedStatus.join(',');\r\n this.searchModal.statusIds = str;\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n\r\n // Side Panel Events\r\n ShowHideSidePanel() {\r\n this.isSidePanelActive = !this.isSidePanelActive;\r\n }\r\n\r\n ShowHideSidePanel1() {\r\n this.isSidePanelActive1 = !this.isSidePanelActive1;\r\n }\r\n\r\n GetRightPanelStateList() {\r\n this.isStateRecord = false;\r\n this.selectAllID = [];\r\n this.listOfID = [];\r\n\r\n this.matrix.getState(this.tokenKey, this.loginUser, this.productId).subscribe(\r\n data => {\r\n \r\n this.isStateRecord = true;\r\n this.selectedStateCounter = 0;\r\n this.listOfState = data['state'];\r\n if (this.listOfState != null) {\r\n let seprator = '';\r\n if (this.listOfState.length > 0) {\r\n\r\n // const IsAnychecked = this.listOfState.filter(m => m.isChecked.toString() === 'true');\r\n // if (Array.isArray(IsAnychecked)) {\r\n // if (IsAnychecked.length > 0) {\r\n // this.listOfStateId = '';\r\n // } else {\r\n // }\r\n // }\r\n\r\n this.listOfStateId = '';\r\n\r\n for (let iCounter = 0; iCounter < this.listOfState.length; iCounter++) {\r\n //if (this.listOfState[iCounter].isChecked) {\r\n this.selectedStateCounter = this.selectedStateCounter + 1;\r\n this.listOfID.push(this.listOfState[iCounter].stateId);\r\n this.listOfStateId += seprator + this.listOfState[iCounter].stateId;\r\n seprator = ',';\r\n\r\n //}\r\n this.selectAllID.push(this.listOfState[iCounter].stateId)\r\n if (this.listOfID.length === this.selectAllID.length) {\r\n this.chkselectAll = true;\r\n } else {\r\n this.chkselectAll = false;\r\n }\r\n }\r\n\r\n const str = this.listOfID.join(',');\r\n this.searchModal.stateIds = str;\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n\r\n this.populateActionItems();\r\n } else {\r\n this.listOfStateId = 'null';\r\n this.populateActionItems();\r\n }\r\n }\r\n // this.GetMatrix();\r\n // this.unblockDocument();\r\n //this.parentFun.emit(this.searchModal);\r\n },\r\n error => {\r\n // this.statusCode = error;\r\n this.populateActionItems();\r\n }\r\n );\r\n }\r\n\r\n selectAllCheckBox(event: any) {\r\n this.FilterFavourite = false;\r\n this.MyTracIt = false;\r\n this.listOfStateId = '';\r\n // this.listOfState = []\r\n this.listOfID = [];\r\n const allState = Object.assign([], this.listOfState);\r\n\r\n if (!event.currentTarget.checked) {\r\n // this.selectAllID = [];\r\n // Select checkbox\r\n if (allState.length > 0) {\r\n for (var jCounter = 0; jCounter < allState.length; jCounter++) {\r\n this.listOfState[jCounter].isChecked = false;\r\n }\r\n }\r\n } else {\r\n this.listOfID = this.selectAllID;\r\n // Select checkbox\r\n if (allState.length > 0) {\r\n for (var jCounter = 0; jCounter < allState.length; jCounter++) {\r\n this.listOfState[jCounter].isChecked = true;\r\n }\r\n }\r\n }\r\n this.selectedStateCounter = this.listOfID.length;\r\n const str = this.listOfID.join(',');\r\n this.searchModal.stateIds = str;\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n\r\n }\r\n\r\n checkIfSelected(stateId: any, event: any) {\r\n this.FilterFavourite = false;\r\n this.MyTracIt = false;\r\n if (!event.currentTarget.checked) {\r\n this.listOfID = this.listOfID.filter(m => m !== stateId);\r\n } else {\r\n this.listOfID.push(stateId);\r\n }\r\n this.selectedStateCounter = this.listOfID.length;\r\n const str = this.listOfID.join(',');\r\n this.searchModal.stateIds = str;\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n\r\n // onValueChange(value: Date): void {\r\n\r\n // function pad(s) { return (s < 10) ? '0' + s : s; }\r\n // const d = new Date(value[0]);\r\n // const a = [pad(d.getMonth() + 1), pad(d.getDate()), d.getFullYear()].join('/');\r\n\r\n // const e = new Date(value[1]);\r\n // const f = [pad(e.getMonth() + 1), pad(e.getDate()), e.getFullYear()].join('/');\r\n\r\n // this.searchModal.dateFrom = a;\r\n // this.searchModal.toDate = f;\r\n\r\n // const timeDifference = e.getTime() - d.getTime();\r\n // const daysDifference = timeDifference / (1000 * 3600 * 24);\r\n // if (daysDifference <= 90) { \r\n // if (this.searchModal.actionTypeIds != '' && this.searchModal.carrierCatIds != '' && this.searchModal.stateIds != '' && this.searchModal.statusIds != '') { \r\n // if (sessionStorage.getItem('emailDeadlineDate') != '' && sessionStorage.getItem('emailDeadlineDate') != null && this.emailDateTrack == 0) { \r\n // this.emailDateTrack++;\r\n // this.searchModal.emailDeadlineDate = '';\r\n // this.emailDeadlineDate = '';\r\n // this.setEmailAutoLoginParameter();\r\n // sessionStorage.removeItem('emailDeadlineDate');\r\n // }\r\n // else if (sessionStorage.getItem('dashboardFromDate') == null && this.dateTrack == 0 && this.emailDateTrack == 1) { \r\n // this.emailDeadlineDate = '';\r\n // this.dateTrack++;\r\n // let CurrentTime = new Date();\r\n\r\n // var firstDay = new Date(CurrentTime.getFullYear(), CurrentTime.getMonth(), 1);\r\n // var lastDay = new Date(CurrentTime.getFullYear(), CurrentTime.getMonth(), this.daysInMonth(CurrentTime.getMonth() + 1,\r\n // CurrentTime.getFullYear())); \r\n\r\n // function pad(s) { return (s < 10) ? '0' + s : s; }\r\n // const dd = new Date(firstDay);\r\n // const aa = [pad(dd.getMonth() + 1), pad(dd.getDate()), dd.getFullYear()].join('/');\r\n\r\n // const ee = new Date(lastDay);\r\n // const ff = [pad(ee.getMonth() + 1), pad(ee.getDate()), ee.getFullYear()].join('/');\r\n\r\n // this.searchModal.dateFrom = aa;\r\n // this.searchModal.toDate = ff;\r\n\r\n // this.bsRangeValue = [firstDay, lastDay];\r\n // }\r\n // }\r\n // this.parentFun.emit(this.searchModal);\r\n // }\r\n // else {\r\n // setTimeout(() => this.toastr.error('Please select dates in the range of three months only.', 'Error!'));\r\n // }\r\n // }\r\n\r\n daysInMonth(month, year) {\r\n return new Date(year, month, 0).getDate();\r\n }\r\n\r\n showHideCalendar(value: boolean) {\r\n this.isListShow = value;\r\n }\r\n\r\n pdfDocument() {\r\n this.downloadFile.emit();\r\n }\r\n\r\n loadMyFavourite() {\r\n let seprator = '';\r\n let strActionTypeIds = '';\r\n let strCarrierCatId = '';\r\n let strStateId = '';\r\n\r\n \r\n let isDashbaordFavoriteClick = sessionStorage.getItem('dashboardIsFavorite') == 'true' ? true : false;\r\n if (!isDashbaordFavoriteClick) {\r\n this.FilterFavourite = !this.FilterFavourite;\r\n this.selectedActionTypeIds = [];\r\n this.selectedCareerIds = [];\r\n this.listOfID = [];\r\n }\r\n\r\n\r\n sessionStorage.removeItem('dashboardIsFavorite');\r\n if (this.FilterFavourite) {\r\n this.actionServices.GetClientFavorite(this.tokenKey, this.loginUser, this.productId).subscribe(\r\n data => {\r\n \r\n if (data['status'] == 'Success') {\r\n this.favouriteModel = data['favoriteList'];\r\n\r\n if (this.favouriteModel != null) {\r\n //#region Set Favorute Action Item\r\n if (this.favouriteModel.actionItemTypesFavorite.length > 0) {\r\n // Set isDefaultChecked = false;\r\n for (let iCounter = 0; iCounter < this.actionItemsList.length; iCounter++) {\r\n this.actionItemsList[iCounter].isDefaultChecked = false;\r\n }\r\n\r\n for (let jCounter = 0; jCounter < this.favouriteModel.actionItemTypesFavorite.length; jCounter++) {\r\n strActionTypeIds += seprator + this.favouriteModel.actionItemTypesFavorite[jCounter].actionItemTypeId;\r\n seprator = ',';\r\n let favModel = this.actionItemsList.filter(m => m.actionItemTypeId == this.favouriteModel.actionItemTypesFavorite[jCounter].actionItemTypeId)\r\n if (favModel != null) {\r\n if (favModel.length > 0) {\r\n const index: number = this.actionItemsList.indexOf(favModel[0])\r\n if (index !== -1) {\r\n this.actionItemsList[index].isDefaultChecked = true;\r\n this.selectedActionTypeIds = this.removeElemetninArray(this.selectedActionTypeIds, favModel[0].actionItemTypeId);\r\n this.selectedActionTypeIds.push(favModel[0].actionItemTypeId);\r\n }\r\n else\r\n this.actionItemsList[index].isDefaultChecked = false;\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n // Set isDefaultChecked = false;\r\n for (let iCounter = 0; iCounter < this.actionItemsList.length; iCounter++) {\r\n this.actionItemsList[iCounter].isDefaultChecked = false;\r\n }\r\n }\r\n\r\n if (this.selectedActionTypeIds.length == this.actionItemsList.length)\r\n this.isActionTypeSelectAllChecked = true;\r\n else\r\n this.isActionTypeSelectAllChecked = false;\r\n\r\n //#endregion\r\n\r\n //#region Set Favorute Carrier Category\r\n seprator = '';\r\n if (this.favouriteModel.carrierCategoryFavorite.length > 0) {\r\n // Set isDefaultChecked = false;\r\n for (let iCounter = 0; iCounter < this.carrierCategoryModel.length; iCounter++) {\r\n this.carrierCategoryModel[iCounter].isDefaultChecked = false;\r\n }\r\n\r\n for (let jCounter = 0; jCounter < this.favouriteModel.carrierCategoryFavorite.length; jCounter++) {\r\n strCarrierCatId += seprator + this.favouriteModel.carrierCategoryFavorite[jCounter].carrierCatId;\r\n seprator = ',';\r\n let favModel = this.carrierCategoryModel.filter(m => m.carrierCatId == this.favouriteModel.carrierCategoryFavorite[jCounter].carrierCatId)\r\n if (favModel != null) {\r\n if (favModel.length > 0) {\r\n const index: number = this.carrierCategoryModel.indexOf(favModel[0])\r\n if (index !== -1) {\r\n this.carrierCategoryModel[index].isDefaultChecked = true;\r\n this.selectedCareerIds = this.removeElemetninArray(this.selectedCareerIds, favModel[0].carrierCatId);\r\n this.selectedCareerIds.push(favModel[0].carrierCatId);\r\n }\r\n else\r\n this.carrierCategoryModel[index].isDefaultChecked = false;\r\n }\r\n }\r\n }\r\n\r\n }\r\n else {\r\n // Set isDefaultChecked = false;\r\n for (let iCounter = 0; iCounter < this.carrierCategoryModel.length; iCounter++) {\r\n this.carrierCategoryModel[iCounter].isDefaultChecked = false;\r\n }\r\n }\r\n }\r\n\r\n if (this.carrierCategoryModel.length == this.selectedCareerIds.length)\r\n this.isCarrierCategorySelectAllChecked = true;\r\n else\r\n this.isCarrierCategorySelectAllChecked = false;\r\n //#endregion\r\n\r\n //#region Set Favorite State\r\n seprator = '';\r\n if (this.favouriteModel.stateFavorite.length > 0) {\r\n // Set isDefaultChecked = false;\r\n for (let iCounter = 0; iCounter < this.listOfState.length; iCounter++) {\r\n this.listOfState[iCounter].isChecked = false;\r\n }\r\n\r\n for (let jCounter = 0; jCounter < this.favouriteModel.stateFavorite.length; jCounter++) {\r\n strStateId += seprator + this.favouriteModel.stateFavorite[jCounter].stateId;\r\n seprator = ',';\r\n let favModel = this.listOfState.filter(m => m.stateId == this.favouriteModel.stateFavorite[jCounter].stateId)\r\n if (favModel != null) {\r\n if (favModel.length > 0) {\r\n const index: number = this.listOfState.indexOf(favModel[0])\r\n if (index !== -1) {\r\n this.listOfState[index].isChecked = true;\r\n this.listOfID = this.removeElemetninArray(this.listOfID, favModel[0].stateId);\r\n this.listOfID.push(favModel[0].stateId);\r\n }\r\n else\r\n this.listOfState[index].isChecked = false;\r\n }\r\n }\r\n }\r\n\r\n if (this.favouriteModel.stateFavorite.length == this.listOfState.length) {\r\n this.chkselectAll = true;\r\n }\r\n this.selectedStateCounter = this.favouriteModel.stateFavorite.length;\r\n }\r\n else {\r\n if (this.favouriteModel.stateFavorite.length == 0) {\r\n this.chkselectAll = false;\r\n this.selectedStateCounter = 0;\r\n }\r\n // Set isDefaultChecked = false;\r\n for (let iCounter = 0; iCounter < this.listOfState.length; iCounter++) {\r\n this.listOfState[iCounter].isChecked = false;\r\n }\r\n }\r\n //#endregion\r\n\r\n this.searchModal.actionTypeIds = strActionTypeIds;\r\n this.searchModal.carrierCatIds = strCarrierCatId;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.stateIds = strStateId;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n }\r\n );\r\n }\r\n else {\r\n\r\n // Reset ActionItemsList Set isDefaultChecked = true;\r\n for (let iCounter = 0; iCounter < this.actionItemsList.length; iCounter++) {\r\n strActionTypeIds += seprator + this.actionItemsList[iCounter].actionItemTypeId;\r\n seprator = ',';\r\n this.actionItemsList[iCounter].isDefaultChecked = true;\r\n this.selectedActionTypeIds = this.removeElemetninArray(this.selectedActionTypeIds, this.actionItemsList[iCounter].actionItemTypeId);\r\n this.selectedActionTypeIds.push(this.actionItemsList[iCounter].actionItemTypeId);\r\n }\r\n this.isActionTypeSelectAllChecked = true;\r\n this.isCarrierCategorySelectAllChecked = true;\r\n this.isActionStatusSelectAllChecked = true;\r\n // Reset CarrierCategory Set isDefaultChecked = true;\r\n seprator = '';\r\n for (let iCounter = 0; iCounter < this.carrierCategoryModel.length; iCounter++) {\r\n strCarrierCatId += seprator + this.carrierCategoryModel[iCounter].carrierCatId;\r\n seprator = ',';\r\n this.carrierCategoryModel[iCounter].isDefaultChecked = true;\r\n this.selectedCareerIds = this.removeElemetninArray(this.selectedCareerIds, this.carrierCategoryModel[iCounter].carrierCatId);\r\n this.selectedCareerIds.push(this.carrierCategoryModel[iCounter].carrierCatId);\r\n }\r\n\r\n // Reset State Set isChecked = true;\r\n seprator = '';\r\n for (let iCounter = 0; iCounter < this.listOfState.length; iCounter++) {\r\n strStateId += seprator + this.listOfState[iCounter].stateId;\r\n seprator = ',';\r\n this.listOfState[iCounter].isChecked = true;\r\n this.listOfID = this.removeElemetninArray(this.listOfID, this.listOfState[iCounter].stateId);\r\n this.listOfID.push(this.listOfState[iCounter].stateId);\r\n this.selectedStateCounter = this.listOfState.length;\r\n }\r\n\r\n this.chkselectAll = true;\r\n\r\n\r\n this.searchModal.actionTypeIds = strActionTypeIds;\r\n this.searchModal.carrierCatIds = strCarrierCatId;\r\n this.searchModal.stateIds = strStateId;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n }\r\n\r\n copyInputMessage(inputElement) {\r\n\r\n inputElement.select();\r\n document.execCommand('copy');\r\n inputElement.setSelectionRange(0, inputElement.setSelectionRange(0, inputElement.value.length));\r\n }\r\n\r\n HandledByCRSChange($event) {\r\n \r\n this.searchModal.isNeworChanged = $event.currentTarget.checked;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n\r\n opneICalFile(iCalUrl) {\r\n window.open(iCalUrl);\r\n }\r\n\r\n loadMyTracIt() {\r\n \r\n this.MyTracIt = !this.MyTracIt;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n sessionStorage.removeItem('dashboardIsMyTracIt');\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n editCompanySpecificCategory(id, text) {\r\n debugger;\r\n this.companySpecificCategoryId = id;\r\n this.editCategoryText = text;\r\n }\r\n saveCompanySpecificCategory() {\r\n const category = new ActionCompanySpecificCategoryModel();\r\n category.actionCompanySpecificCategoryId = this.companySpecificCategoryId;\r\n category.companyId = this.companyId;\r\n category.name = this.editCategoryText;\r\n category.createdBy = this.loginUser;\r\n this.companySpecificCategoryService.ActionCompanySpecificCategoryAddUpdate(this.tokenKey, category).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.toastr.success('Entry saved successfully', 'Success');\r\n this.getCompanySpecificCategory();\r\n this.editCategoryText = '';\r\n this.companySpecificCategoryId = 0;\r\n }\r\n else if (data.result == -1) {\r\n this.toastr.error('Category name is already exists.', 'Error');\r\n }\r\n else {\r\n this.toastr.error(data['status'], 'Error');\r\n }\r\n }),\r\n error => {\r\n this.toastr.error(error, 'Error');\r\n }\r\n }\r\n deleteCompanySpecificCategory() {\r\n this.companySpecificCategoryService.ActionCompanySpecificCategoryDelete(this.tokenKey, this.companySpecificCategoryId).subscribe(\r\n data => {\r\n if (data['status'] == 'Success') {\r\n this.toastr.success('Entry deleted successfully', 'Success');\r\n this.getCompanySpecificCategory();\r\n this.companySpecificCategoryId = 0;\r\n }\r\n else {\r\n this.toastr.error(data['status'], 'Error');\r\n }\r\n }),\r\n error => {\r\n this.toastr.error(error, 'Error');\r\n }\r\n }\r\n onCategoryChange() {\r\n this.allCategorySelected = this.companySpecificCategory.every(x => x.isDefaultChecked);\r\n const str = this.selectedActionTypeIds.join(',');\r\n this.searchModal.actionTypeIds = str;\r\n this.searchModal.emailDeadlineDate = this.emailDeadlineDate;\r\n this.searchModal.isFavorite = this.FilterFavourite;\r\n this.searchModal.isMyTracIt = this.MyTracIt;\r\n this.searchModal.dateFrom = null;\r\n this.searchModal.toDate = null;\r\n this.searchModal.companySpecificIds = this.companySpecificCategory.filter(x => x.isDefaultChecked == true).map(x => x.actionCompanySpecificCategoryId).join(',');\r\n this.parentFun.emit(this.searchModal);\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FwcC5jb21wb25lbnQuY3NzIn0= */\"","import { Component } from '@angular/core';\r\nimport { ActivatedRoute, Params, Router, NavigationEnd, NavigationStart } from '@angular/router';\r\nimport { CheckAuth } from '../Services/utility.service';\r\nimport { Gtag } from 'angular-gtag';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { environment } from 'src/environments/environment';\r\nimport { IpService } from 'src/Services/ip.service';\r\nimport { CheckIpAddresAllow } from 'src/common/commonFunction';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent {\r\n title = 'app';\r\n user_Id = -1;\r\n constructor(private checkAuth: CheckAuth, private activedRoute: ActivatedRoute,\r\n private router: Router, private gtag: Gtag, private titleService: Title, private ipService: IpService) { \r\n this.tokenExpireCalculation(sessionStorage.getItem('appStartTime'), sessionStorage.getItem('tokenExpiryValue'));\r\n sessionStorage.setItem('Username', document.querySelector('app-root').getAttribute('[Username]'));\r\n sessionStorage.setItem('Hash', document.querySelector('app-root').getAttribute('[Hash]'));\r\n let Productname = document.querySelector('app-root').getAttribute('[Productname]');\r\n // in database we have used actionitem but letter on productname tracit \r\n if (Productname == 'tracit')\r\n sessionStorage.setItem('Productname', 'actionitem');\r\n else\r\n sessionStorage.setItem('Productname', document.querySelector('app-root').getAttribute('[Productname]'));\r\n\r\n const username = document.querySelector('app-root').getAttribute('[Username]');\r\n this.user_Id = +document.querySelector('app-root').getAttribute('[User_Id]');\r\n const haskey = document.querySelector('app-root').getAttribute('[Hash]');\r\n if (username != '' && username != null && haskey != null && haskey != '') {\r\n this.router.navigate(['autologin']);\r\n }\r\n this.checkIpAddress();\r\n }\r\n\r\n ngOnInit() {\r\n if (this.user_Id != -1) {\r\n this.router.events.subscribe(event => {\r\n if (event instanceof NavigationEnd) {\r\n this.gtag.set({ 'user_id': this.user_Id });\r\n this.gtag.pageview({\r\n page_title: this.getTitle(),\r\n page_path: this.router.url,\r\n page_location: window.location.href\r\n });\r\n }\r\n });\r\n }\r\n }\r\n tokenExpireCalculation(startDate: string, tokenExpiry: string) {\r\n this.checkAuth.tokenExpireCalculation(startDate, tokenExpiry);\r\n }\r\n\r\n getTitle(): string {\r\n let title = this.titleService.getTitle();\r\n const clientLoginTool = sessionStorage.getItem('ClientLoginTool');\r\n switch (clientLoginTool) {\r\n case 'voip': title = 'VOIP - ' + title; break;\r\n case 'ipcs': title = 'IPCS - ' + title; break;\r\n case 'ipr': title = 'IPR - ' + title; break;\r\n case 'wireless': title = 'Wireless - ' + title; break;\r\n case 'actionitem': title = 'Action Item - ' + title; break;\r\n default:\r\n break;\r\n }\r\n return title;\r\n }\r\n checkIpAddress() {\r\n let url = 'i360-site maintenance.html';\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n if (res) {\r\n if (res._body != null) {\r\n let obj = JSON.parse(res._body)\r\n if (obj != null) {\r\n // if (!CheckIpAddresAllow(obj.ip)) {\r\n // window.location.href = window.location.origin + \"/assets/\" + url;\r\n // }\r\n sessionStorage.setItem('ipAddress', obj.ip);\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n //window.location.href = window.location.origin + \"/assets/\" + url;\r\n });\r\n }\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule, APP_INITIALIZER } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { HashLocationStrategy, LocationStrategy } from '@angular/common';\r\nimport { AppConfig } from '../Services/app.config';\r\nimport { HttpModule, RequestOptions } from '@angular/http';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AppComponent } from './app.component';\r\n\r\n// 3rd Party Component\r\nimport { EditorModule } from 'primeng/editor';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { ProgressBarModule } from 'primeng/progressbar';\r\nimport { PaginationModule } from 'ngx-bootstrap/pagination';\r\nimport { ProgressSpinnerModule } from 'primeng/progressspinner';\r\nimport { BlockUIModule } from 'primeng/blockui';\r\nimport { DatepickerModule, BsDatepickerModule } from 'ngx-bootstrap/datepicker';\r\nimport { AngularMultiSelectModule } from 'angular2-multiselect-dropdown';\r\nimport { OrderModule } from 'ngx-order-pipe';\r\nimport { TabViewModule } from 'primeng/tabview';\r\nimport { TabsModule } from 'ngx-bootstrap';\r\nimport { FullCalendarModule } from 'primeng/fullcalendar';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { CKEditorModule } from 'ckeditor4-angular';\r\nimport { ColorPickerModule } from 'primeng/colorpicker';\r\n\r\n//import { FullCalendarModule } from 'ng-fullcalendar';\r\n\r\n\r\n// Admin Component\r\nimport { AdminLoginComponent } from './Admin/admin-login/admin-login.component';\r\nimport { SiteLayoutComponent } from './Layout/site-layout/site-layout.component';\r\nimport { AdminLayoutComponent } from './Layout/admin-layout/admin-layout.component';\r\nimport { DashboardComponent } from './Admin/dashboard/dashboard.component';\r\nimport { UsersComponent } from './Admin/users/users.component';\r\nimport { ReportsComponent } from './Admin/reports/reports.component';\r\nimport { StatesComponent } from './Admin/states/states.component';\r\nimport { StateMatrixsetupComponent } from './Admin/state-matrixsetup/state-matrixsetup.component';\r\n\r\n\r\n// Services\r\nimport { UtilityService, CheckAuth } from '../Services/utility.service';\r\nimport { TokenService } from '../Services/token.service';\r\nimport { ClientLoginComponent } from './Front/client-login/client-login.component';\r\nimport { HomeComponent } from './Front/home/home.component';\r\nimport { MatrixComponent } from './Front/matrix/matrix.component';\r\nimport { UpdateComponent } from './Front/update/update.component';\r\nimport { FundDetailsComponent } from './Shared/fund-details/fund-details.component';\r\nimport { MatrixFundDetailsService } from 'src/Services/matrix-fund-details.service';\r\nimport { StateFundPreviewComponent } from './Admin/state-fund-preview/state-fund-preview.component';\r\nimport { ManageuserComponent } from './Admin/users/manageuser.component';\r\nimport { UpdatesComponent } from './Admin/updates/updates.component';\r\nimport { ManageupdateComponent } from './Admin/updates/manageupdate.component';\r\nimport { SiteStateFundPriviewComponent } from './Front/site-state-fund-priview/site-state-fund-priview.component';\r\nimport { StateManangesetupComponent } from './Admin/state-matrixsetup/state-manangesetup.component';\r\nimport { InteserraUsersComponent } from './Admin/inteserra-users/inteserra-users.component';\r\nimport { InteserraManageUsersComponent } from './Admin/inteserra-users/inteserra-manage-users.component';\r\nimport { ProfileComponent } from './Admin/profile/profile.component';\r\nimport { htmlToPdf } from '../Services/htmlToPdf';\r\nimport { ByPassLoginComponent } from './Front/by-pass-login/by-pass-login.component';\r\nimport { BypassService } from '../Services/bypass.service';\r\nimport { PrivacyComponent } from './Front/privacy/privacy.component';\r\nimport { UpdateImportComponent } from './Admin/IPR/update-import/update-import.component';\r\nimport { AccessDeniedComponent } from './Admin/access-denied/access-denied.component';\r\nimport { IPRUpdatesComponent } from './Admin/IPR/updates/updates.component';\r\nimport { ManageIPRUpdateComponent } from './Admin/IPR/updates/manageupdate.component';\r\nimport { HistoryComponent } from './Admin/IPR/history/history.component';\r\nimport { IPRHomeComponent } from './Front/IPR/home/home.component';\r\nimport { CarriersComponent } from './Front/IPR/carriers/carriers.component';\r\nimport { IPRFrontUpdatesComponent } from './Front/IPR/updates/updates.component';\r\nimport { FrontAccessDeniedComponent } from './Front/access-denied/access-denied.component';\r\nimport { MyFavoritesComponent } from './Front/IPR/my-favorites/my-favorites.component';\r\nimport { DndModule } from 'ng2-dnd';\r\nimport { CacheInterceptor } from 'src/interceptors/cache-interceptor';\r\nimport { GtagModule } from 'angular-gtag';\r\nimport { AIHomeComponent } from './Front/ActionItem/aihome/aihome.component';\r\nimport { AIActionCalendarComponent } from './Front/ActionItem/aiaction-calendar/aiaction-calendar.component';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\nimport { SearchPanelComponent } from './Shared/search-panel/search-panel.component';\r\nimport { AccordionModule } from 'primeng/accordion';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { AddNewActionPopupComponent } from './Shared/add-new-action-popup/add-new-action-popup.component';\r\nimport { NgbModule, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ActionItemDetailsComponent } from './Shared/action-item-details/action-item-details.component';\r\nimport { ActionStatusPopupComponent } from './Shared/action-status-popup/action-status-popup.component';\r\nimport { RadioButtonModule } from 'primeng/radiobutton';\r\nimport { NotesPopupComponent } from './Shared/notes-popup/notes-popup.component';\r\nimport { ActionItemDashboardComponent } from '../app/Front/ActionItem/dashboard/dashboard.component';\r\nimport { ActionItemsMyFavoritesComponent } from '../app/Front/ActionItem/my-favorites/my-favorites.component';\r\n\r\nimport { ActionItemDetailsPopupComponent } from './Shared/action-item-details-popup/action-item-details-popup.component';\r\nimport { LandingPageComponent } from './Admin/action-item/landing-page/landing-page.component';\r\nimport { FrontLandingPageComponent } from './Front/front-landing-page/front-landing-page.component';\r\nimport { ActionItemTypeComponent } from './Admin/action-item/action-item-type/action-item-type.component';\r\nimport { ManegeActionTypeComponent } from './Admin/action-item/action-item-type/manege-action-type.component';\r\nimport { ActionItemListComponent } from './Admin/action-item/action-item-list/action-item-list.component';\r\nimport { ManageActionItemComponent } from './Admin/action-item/action-item-list/manage-action-item.component';\r\nimport { GeneralAlertsComponent } from './Admin/action-item/general-alerts/general-alerts.component';\r\nimport { ManageGeneralAlertsComponent } from './Admin/action-item/general-alerts/manage-general-alerts.component';\r\nimport { SafePipe } from 'src/Services/SafePipe';\r\nimport { CarrierCategoryComponent } from './Admin/action-item/carrier-category/carrier-category.component';\r\nimport { ManageCarrierCategoryComponent } from './Admin/action-item/carrier-category/manage-carrier-category.component';\r\nimport { ActionUpdatesComponent } from './Front/ActionItem/action-updates/action-updates.component';\r\nimport { EditActionPopupComponent } from './Shared/edit-action-popup/edit-action-popup.component';\r\nimport { AdminByPassClientLoginComponent } from './Front/admin-by-pass-client-login/admin-by-pass-client-login.component';\r\nimport { WirelessVoipMyFavoritesComponent } from './Front/wireless-voip-my-favorites/wireless-voip-my-favorites.component';\r\nimport { RedirectLiveComponent } from './Admin/redirect-live/redirect-live.component';\r\nimport { RMDMyFavoritesComponent } from './Front/RMD/my-favorites/rmdmy-favorites.component';\r\nimport { RMDCarriersComponent } from './Front/RMD/carriers/rmdcarriers.component';\r\nimport { RMDUpdatesComponent } from './Front/RMD/updates/rmdupdates.component';\r\nimport { EmailLoginComponent } from './Front/email-login/email-login.component';\r\nimport { ScrollingModule } from '@angular/cdk/scrolling';\r\nimport { IPCSMatrixComponent } from './Front/IPCS/matrix/matrix.component';\r\nimport { IPCSFundDetailsComponent } from './Front/IPCS/fund-details/fund-details.component';\r\nimport { IPCSUpdateComponent } from './Front/IPCS/update/update.component';\r\nimport { IPCSMyFavoritesComponent } from './Front/IPCS/my-favorites/my-favorites.component';\r\n\r\n\r\nexport function initializeApp(appConfig: AppConfig) {\r\n return () => appConfig.load();\r\n}\r\n@NgModule({\r\n declarations: [\r\n SafePipe,\r\n AppComponent,\r\n AdminLoginComponent,\r\n AdminLayoutComponent,\r\n SiteLayoutComponent,\r\n DashboardComponent,\r\n UsersComponent,\r\n ReportsComponent,\r\n StatesComponent,\r\n StateMatrixsetupComponent,\r\n ClientLoginComponent,\r\n HomeComponent,\r\n MatrixComponent,\r\n UpdateComponent,\r\n FundDetailsComponent,\r\n StateFundPreviewComponent,\r\n ManageuserComponent,\r\n UpdatesComponent,\r\n ManageupdateComponent,\r\n SiteStateFundPriviewComponent,\r\n StateManangesetupComponent,\r\n InteserraUsersComponent,\r\n InteserraManageUsersComponent,\r\n ProfileComponent,\r\n ByPassLoginComponent,\r\n PrivacyComponent,\r\n UpdateImportComponent,\r\n AccessDeniedComponent,\r\n IPRUpdatesComponent,\r\n ManageIPRUpdateComponent,\r\n HistoryComponent,\r\n IPRHomeComponent,\r\n CarriersComponent,\r\n IPRFrontUpdatesComponent,\r\n FrontAccessDeniedComponent,\r\n MyFavoritesComponent,\r\n AIHomeComponent,\r\n AIActionCalendarComponent,\r\n SearchPanelComponent,\r\n AddNewActionPopupComponent,\r\n ActionItemDetailsComponent,\r\n ActionStatusPopupComponent,\r\n NotesPopupComponent,\r\n ActionItemDashboardComponent,\r\n ActionItemsMyFavoritesComponent,\r\n ActionItemDetailsPopupComponent,\r\n LandingPageComponent,\r\n FrontLandingPageComponent,\r\n ActionItemTypeComponent,\r\n ManegeActionTypeComponent,\r\n ActionItemListComponent,\r\n ManageActionItemComponent,\r\n GeneralAlertsComponent,\r\n ManageGeneralAlertsComponent,\r\n EmailLoginComponent,\r\n CarrierCategoryComponent,\r\n ManageCarrierCategoryComponent,\r\n ActionUpdatesComponent,\r\n EditActionPopupComponent,\r\n AdminByPassClientLoginComponent,\r\n WirelessVoipMyFavoritesComponent,\r\n RedirectLiveComponent,\r\n RMDMyFavoritesComponent,\r\n RMDCarriersComponent,\r\n RMDUpdatesComponent,\r\n IPCSMatrixComponent,\r\n IPCSUpdateComponent,\r\n IPCSFundDetailsComponent,\r\n IPCSMyFavoritesComponent\r\n ],\r\n imports: [\r\n RadioButtonModule,\r\n OverlayPanelModule,\r\n FullCalendarModule,\r\n DndModule.forRoot(),\r\n AngularMultiSelectModule,\r\n BrowserAnimationsModule,\r\n ProgressBarModule,\r\n HttpModule,\r\n ReactiveFormsModule,\r\n AutoCompleteModule,\r\n AccordionModule,\r\n CheckboxModule,\r\n HttpClientModule,\r\n FormsModule,\r\n BrowserModule,\r\n EditorModule,\r\n ProgressSpinnerModule,\r\n BlockUIModule,\r\n NgbModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n DatepickerModule.forRoot(),\r\n OrderModule,\r\n TabViewModule,\r\n PaginationModule.forRoot(),\r\n TabsModule.forRoot(),\r\n CKEditorModule,\r\n ColorPickerModule,\r\n ScrollingModule, \r\n ToastrModule.forRoot({\r\n timeOut: 5000,\r\n positionClass: 'toast-top-right',\r\n preventDuplicates: true,\r\n closeButton: true,\r\n progressBar: true,\r\n }),\r\n GtagModule.forRoot({ trackingId: 'UA-39058819-4', trackPageviews: false, debug: false }),\r\n RouterModule.forRoot([\r\n { path: '', redirectTo: 'login', pathMatch: 'full' },\r\n { path: 'login', component: ClientLoginComponent },\r\n { path: 'admin', component: RedirectLiveComponent },\r\n { path: 'admin/login', component: RedirectLiveComponent },\r\n { path: 'autologin', component: ByPassLoginComponent },\r\n { path: 'EmailLogin/:id', component: EmailLoginComponent },\r\n { path: 'adminclientlogin/:id/:id2', component: AdminByPassClientLoginComponent },\r\n //{ path: 'login/:username/:haskey', component: ByPassLoginComponent },\r\n {\r\n path: 'admin',\r\n component: AdminLayoutComponent,\r\n children: [\r\n { path: 'wireless/dashboard', component: DashboardComponent },\r\n { path: 'wireless/clients', component: UsersComponent },\r\n { path: 'wireless/client/manage', component: ManageuserComponent },\r\n { path: 'wireless/client/manage/:id', component: ManageuserComponent },\r\n { path: 'wireless/users', component: InteserraUsersComponent },\r\n { path: 'wireless/user/manage', component: InteserraManageUsersComponent },\r\n { path: 'wireless/user/manage/:id', component: InteserraManageUsersComponent },\r\n { path: 'wireless/updates', component: UpdatesComponent },\r\n { path: 'wireless/updates/manage', component: ManageupdateComponent },\r\n { path: 'wireless/updates/manage/:id', component: ManageupdateComponent },\r\n { path: 'wireless/states', component: StatesComponent },\r\n { path: 'wireless/state/setup/manage/:id', component: StateManangesetupComponent },\r\n { path: 'wireless/state/setup/add/:id', component: StateMatrixsetupComponent },\r\n { path: 'wireless/state/setup/edit/:id/:id2', component: StateMatrixsetupComponent },\r\n { path: 'wireless/state/matrix/preview', component: StateFundPreviewComponent },\r\n { path: 'wireless/user/profile', component: ProfileComponent },\r\n { path: 'wireless/access-denied', component: AccessDeniedComponent },\r\n\r\n\r\n { path: 'ipr/dashboard', component: DashboardComponent },\r\n { path: 'ipr/clients', component: UsersComponent },\r\n { path: 'ipr/client/manage', component: ManageuserComponent },\r\n { path: 'ipr/client/manage/:id', component: ManageuserComponent },\r\n { path: 'ipr/users', component: InteserraUsersComponent },\r\n { path: 'ipr/user/manage', component: InteserraManageUsersComponent },\r\n { path: 'ipr/user/manage/:id', component: InteserraManageUsersComponent },\r\n { path: 'ipr/user/profile', component: ProfileComponent },\r\n { path: 'ipr/import-updates', component: UpdateImportComponent },\r\n { path: 'ipr/access-denied', component: AccessDeniedComponent },\r\n { path: 'ipr/updates', component: IPRUpdatesComponent },\r\n { path: 'ipr/updates/manage/:id', component: ManageIPRUpdateComponent },\r\n { path: 'ipr/updates/history', component: HistoryComponent },\r\n\r\n { path: 'voip/dashboard', component: DashboardComponent },\r\n { path: 'voip/clients', component: UsersComponent },\r\n { path: 'voip/client/manage', component: ManageuserComponent },\r\n { path: 'voip/client/manage/:id', component: ManageuserComponent },\r\n { path: 'voip/users', component: InteserraUsersComponent },\r\n { path: 'voip/user/manage', component: InteserraManageUsersComponent },\r\n { path: 'voip/user/manage/:id', component: InteserraManageUsersComponent },\r\n { path: 'voip/updates', component: UpdatesComponent },\r\n { path: 'voip/updates/manage', component: ManageupdateComponent },\r\n { path: 'voip/updates/manage/:id', component: ManageupdateComponent },\r\n { path: 'voip/states', component: StatesComponent },\r\n { path: 'voip/state/setup/manage/:id', component: StateManangesetupComponent },\r\n { path: 'voip/state/setup/add/:id', component: StateMatrixsetupComponent },\r\n { path: 'voip/state/setup/edit/:id/:id2', component: StateMatrixsetupComponent },\r\n { path: 'voip/state/matrix/preview', component: StateFundPreviewComponent },\r\n { path: 'voip/user/profile', component: ProfileComponent },\r\n { path: 'voip/access-denied', component: AccessDeniedComponent },\r\n\r\n { path: 'trac-it/dashboard', component: DashboardComponent },\r\n { path: 'trac-it/home', component: LandingPageComponent },\r\n { path: 'trac-it/clients', component: UsersComponent },\r\n { path: 'trac-it/client/manage', component: ManageuserComponent },\r\n { path: 'trac-it/client/manage/:id', component: ManageuserComponent },\r\n { path: 'trac-it/users', component: InteserraUsersComponent },\r\n { path: 'trac-it/user/manage', component: InteserraManageUsersComponent },\r\n { path: 'trac-it/user/manage/:id', component: InteserraManageUsersComponent },\r\n { path: 'trac-it/categories', component: ActionItemTypeComponent },\r\n { path: 'trac-it/category/manage', component: ManegeActionTypeComponent },\r\n { path: 'trac-it/category/manage/:id', component: ManegeActionTypeComponent },\r\n { path: 'trac-it/entries', component: ActionItemListComponent },\r\n { path: 'trac-it/manage', component: ManageActionItemComponent },\r\n { path: 'trac-it/manage/:id', component: ManageActionItemComponent },\r\n { path: 'trac-it/i360Alerts', component: GeneralAlertsComponent },\r\n { path: 'trac-it/i360Alerts/manage', component: ManageGeneralAlertsComponent },\r\n { path: 'trac-it/i360Alerts/manage/:id', component: ManageGeneralAlertsComponent },\r\n { path: 'trac-it/carriertypes', component: CarrierCategoryComponent },\r\n { path: 'trac-it/carriertype/manage', component: ManageCarrierCategoryComponent },\r\n { path: 'trac-it/carriertype/manage/:id', component: ManageCarrierCategoryComponent },\r\n { path: 'trac-it/user/profile', component: ProfileComponent },\r\n { path: 'trac-it/access-denied', component: AccessDeniedComponent },\r\n ]\r\n },\r\n {\r\n path: '',\r\n component: SiteLayoutComponent,\r\n children: [\r\n { path: 'login', component: ClientLoginComponent },\r\n { path: 'Home', component: FrontLandingPageComponent },\r\n { path: 'wireless/Home', component: HomeComponent },\r\n { path: 'wireless/Matrix', component: MatrixComponent },\r\n { path: 'wireless/Update', component: UpdateComponent },\r\n { path: 'wireless/Fund/Details', component: FundDetailsComponent },\r\n { path: 'wireless/Matrix/Fund/Details/:id', component: SiteStateFundPriviewComponent },\r\n { path: 'wireless/Privacy', component: PrivacyComponent },\r\n { path: 'wireless/access-denied', component: FrontAccessDeniedComponent },\r\n { path: 'wireless/MyFavorites', component: WirelessVoipMyFavoritesComponent },\r\n\r\n\r\n { path: 'ipr/Home', component: IPRHomeComponent },\r\n { path: 'ipr/Privacy', component: PrivacyComponent },\r\n { path: 'ipr/Providers', component: CarriersComponent },\r\n { path: 'ipr/Updates', component: IPRFrontUpdatesComponent },\r\n { path: 'ipr/access-denied', component: FrontAccessDeniedComponent },\r\n { path: 'ipr/MyFavorites', component: MyFavoritesComponent },\r\n\r\n { path: 'voip/Home', component: HomeComponent },\r\n { path: 'voip/Matrix', component: MatrixComponent },\r\n { path: 'voip/Update', component: UpdateComponent },\r\n { path: 'voip/Fund/Details', component: FundDetailsComponent },\r\n { path: 'voip/Matrix/Fund/Details/:id', component: SiteStateFundPriviewComponent },\r\n { path: 'voip/Privacy', component: PrivacyComponent },\r\n { path: 'voip/access-denied', component: FrontAccessDeniedComponent },\r\n { path: 'voip/MyFavorites', component: WirelessVoipMyFavoritesComponent },\r\n\r\n { path: 'ipcs/Home', component: HomeComponent },\r\n { path: 'ipcs/Matrix', component: IPCSMatrixComponent },\r\n { path: 'ipcs/Update', component: IPCSUpdateComponent },\r\n { path: 'ipcs/Fund/Details', component: IPCSFundDetailsComponent },\r\n { path: 'ipcs/Matrix/Fund/Details/:id', component: IPCSFundDetailsComponent },\r\n { path: 'ipcs/Privacy', component: PrivacyComponent },\r\n { path: 'ipcs/access-denied', component: FrontAccessDeniedComponent },\r\n { path: 'ipcs/MyFavorites', component: IPCSMyFavoritesComponent },\r\n \r\n { path: 'trac-it/Home', component: AIHomeComponent },\r\n { path: 'trac-it/Calendar', component: AIActionCalendarComponent },\r\n { path: 'trac-it/Dashboard', component: ActionItemDashboardComponent },\r\n { path: 'trac-it/MyFavorites', component: ActionItemsMyFavoritesComponent },\r\n { path: 'trac-it/access-denied', component: FrontAccessDeniedComponent },\r\n { path: 'access-denied', component: FrontAccessDeniedComponent },\r\n { path: 'trac-it/Updates', component: ActionUpdatesComponent },\r\n { path: 'trac-it/Privacy', component: PrivacyComponent },\r\n { path: 'Privacy', component: PrivacyComponent },\r\n\r\n\r\n { path: 'rmd/Home', component: IPRHomeComponent },\r\n { path: 'rmd/Privacy', component: PrivacyComponent },\r\n { path: 'rmd/Providers', component: RMDCarriersComponent },\r\n { path: 'rmd/Updates', component: RMDUpdatesComponent },\r\n { path: 'rmd/access-denied', component: FrontAccessDeniedComponent },\r\n { path: 'rmd/MyFavorites', component: RMDMyFavoritesComponent },\r\n ]\r\n },\r\n { path: '**', redirectTo: 'login' }\r\n ]\r\n // , { enableTracing: true }\r\n )\r\n ],\r\n entryComponents: [\r\n AddNewActionPopupComponent,\r\n ActionItemDetailsComponent,\r\n ActionStatusPopupComponent,\r\n NotesPopupComponent,\r\n ActionItemDetailsPopupComponent,\r\n EditActionPopupComponent,\r\n ],\r\n providers: [\r\n CheckAuth,\r\n UtilityService,\r\n TokenService,\r\n AppConfig,\r\n MatrixFundDetailsService,\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: initializeApp,\r\n deps: [AppConfig],\r\n multi: true\r\n },\r\n { provide: LocationStrategy, useClass: HashLocationStrategy },\r\n { provide: HTTP_INTERCEPTORS, useClass: CacheInterceptor, multi: true },\r\n // { provide: RequestOptions, useClass: CacheInterceptor },\r\n { provide: 'BASE_URL', useFactory: getBaseUrl },\r\n { provide: Window, useValue: window },\r\n htmlToPdf,\r\n BypassService,\r\n NgbActiveModal,\r\n ActionItemDetailsPopupComponent\r\n ],\r\n exports: [\r\n DndModule\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule {\r\n}\r\n\r\nexport function getBaseUrl() {\r\n return document.getElementsByTagName('base')[0].href;\r\n}\r\n\r\n","import { ApplicationActivityModel } from \"src/Models/applicationActivityModel\";\r\n\r\nexport function ApplicationActivityStore(actionName, pageName, appActivity, dataId = 0, dataType = 0, actionUrl = '', stateName = '') {\r\n const modal = new ApplicationActivityModel();\r\n modal.actionName = actionName;\r\n modal.pageName = pageName\r\n modal.userId = +sessionStorage.getItem('UserId') || 0;\r\n modal.dataId = dataId;\r\n modal.pageUrl = document.location.href;\r\n modal.ipAddress = sessionStorage.getItem('ipAddress');\r\n modal.dataType = dataType;\r\n modal.actionUrl = actionUrl;\r\n modal.stateName = stateName;\r\n appActivity.ApplicationActivityAdd(sessionStorage.getItem('tokenValue'), modal).subscribe(res => {\r\n })\r\n}\r\n\r\nconst StringIsNumber = value => isNaN(Number(value)) === false;\r\nexport function EnumToArray(enumme) {\r\n const returnArray = [];\r\n let index = 1;\r\n Object.keys(enumme).forEach((element) => {\r\n if (!StringIsNumber(element)) {\r\n returnArray.push({ id: index, itemName: element })\r\n index++;\r\n }\r\n\r\n });\r\n console.log(returnArray);\r\n\r\n return returnArray;\r\n}\r\n\r\nexport const IpAddressAllow = [\r\n '120.72.91.106',\r\n '120.72.91.107',\r\n '120.72.91.108',\r\n '120.72.91.109',\r\n '120.72.91.110',\r\n '120.72.95.90',\r\n '120.72.95.91',\r\n '120.72.95.92',\r\n '120.72.95.93',\r\n '120.72.95.94',\r\n '122.170.105.210',\r\n '122.170.105.215',\r\n '103.94.192.143'\r\n]\r\n\r\nexport function CheckIpAddresAllow(ipAddress: string) {\r\n return IpAddressAllow.findIndex(x => x == ipAddress) > -1;\r\n}","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n name: 'dev',\r\n clientAppBaseURL: \"https://stagingiris.zerozone.com/\", \r\n //clientAppBaseURL: \"https://iris.inteserra.com/\", \r\n //clientAppBaseURL: \"https://stagingiris.zerozone.com/\" \r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpInterceptor, HttpRequest, HttpHandler, HttpHeaders, HttpEvent, HttpSentEvent, HttpHeaderResponse, HttpProgressEvent, HttpResponse, HttpUserEvent } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class CacheInterceptor implements HttpInterceptor {\r\n\r\n intercept(req: HttpRequest, next: HttpHandler):\r\n Observable | HttpUserEvent> {\r\n const nextReq = req.clone({\r\n headers: req.headers.set('Cache-Control', 'no-cache')\r\n .set('Pragma', 'no-cache')\r\n .set('Expires', 'Sat, 01 Jan 2000 00:00:00 GMT')\r\n .set('If-Modified-Since', '0')\r\n });\r\n\r\n return next.handle(nextReq);\r\n }\r\n\r\n // intercept(httpRequest: HttpRequest,\r\n // nextRequest: HttpHandler): Observable> {\r\n // const transformedRequest = httpRequest.clone({\r\n // headers: httpRequest.headers.set('Cache-Control', 'no-cache')\r\n // .set('Pragma', 'no-cache')\r\n // .set('Expires', 'Thu, 01 Jan 1970 00:00:00 GMT')\r\n // .set('If-Modified-Since', '0')\r\n // });\r\n // return nextRequest.handle(transformedRequest);\r\n // }\r\n\r\n // intercept(request: HttpRequest, next: HttpHandler) {\r\n // if (request.method === 'GET') {\r\n // const customRequest = request.clone({\r\n // headers: new HttpHeaders({\r\n // 'Cache-Control': 'no-cache',\r\n // 'Pragma': 'no-cache',\r\n // 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT',\r\n // 'If-Modified-Since': '0'\r\n // })\r\n // });\r\n // }\r\n // return next.handle(request);\r\n // }\r\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"],"sourceRoot":"webpack:///"}