From 9efc78c0e32466ed2c75e4bcc55e58779cd3076d Mon Sep 17 00:00:00 2001 From: support Date: Tue, 10 May 2022 16:33:30 +0000 Subject: [PATCH] Built motion from commit 41ff85ad.|2.6.10 --- apidoc/api_project.js | 2 +- apidoc/api_project.json | 2 +- public/app/errors/404/i18n/bs.json | 8 + public/app/errors/500/i18n/bs.json | 11 + public/app/footer/i18n/bs.json | 6 + public/app/forgot/i18n/bs.json | 15 + public/app/header/i18n/bs.json | 6 + public/app/login/i18n/bs.json | 26 + public/app/main/apps/analytics/i18n/bs.json | 89 +++ public/app/main/apps/callysquare/i18n/bs.json | 244 +++++++ public/app/main/apps/chat/i18n/bs.json | 491 ++++++++++++++ public/app/main/apps/contactmanager/i18n/bs.json | 200 ++++++ public/app/main/apps/dashboards/i18n/bs.json | 594 +++++++++++++++++ public/app/main/apps/fax/i18n/bs.json | 261 ++++++++ public/app/main/apps/help/i18n/bs.json | 8 + public/app/main/apps/integrations/i18n/bs.json | 252 +++++++ public/app/main/apps/jscripty/i18n/bs.json | 228 +++++++ public/app/main/apps/mail/i18n/bs.json | 346 ++++++++++ public/app/main/apps/marketplace/i18n/bs.json | 51 ++ public/app/main/apps/motiondialer/i18n/bs.json | 701 ++++++++++++++++++++ public/app/main/apps/openchannel/i18n/bs.json | 271 ++++++++ public/app/main/apps/plugins/i18n/bs.json | 7 + public/app/main/apps/settings/i18n/bs.json | 309 +++++++++ public/app/main/apps/sms/i18n/bs.json | 297 +++++++++ public/app/main/apps/staff/i18n/bs.json | 424 ++++++++++++ public/app/main/apps/tools/i18n/bs.json | 528 +++++++++++++++ public/app/main/apps/video/i18n/bs.json | 40 ++ public/app/main/apps/voice/i18n/bs.json | 507 ++++++++++++++ public/app/main/apps/whatsapp/i18n/bs.json | 247 +++++++ public/app/quick-panel/i18n/bs.json | 73 ++ public/app/reset/i18n/bs.json | 20 + public/app/toolbar/i18n/ar.json | 3 +- public/app/toolbar/i18n/bs.json | 128 ++++ public/app/toolbar/i18n/cs.json | 3 +- public/app/toolbar/i18n/da.json | 3 +- public/app/toolbar/i18n/de.json | 3 +- public/app/toolbar/i18n/en.json | 3 +- public/app/toolbar/i18n/es.json | 3 +- public/app/toolbar/i18n/et.json | 3 +- public/app/toolbar/i18n/fa.json | 3 +- public/app/toolbar/i18n/fi.json | 3 +- public/app/toolbar/i18n/fr.json | 3 +- public/app/toolbar/i18n/he.json | 3 +- public/app/toolbar/i18n/hi.json | 3 +- public/app/toolbar/i18n/hu.json | 3 +- public/app/toolbar/i18n/id.json | 3 +- public/app/toolbar/i18n/it.json | 3 +- public/app/toolbar/i18n/ja.json | 3 +- public/app/toolbar/i18n/ko.json | 3 +- public/app/toolbar/i18n/lt.json | 3 +- public/app/toolbar/i18n/lv.json | 3 +- public/app/toolbar/i18n/nl.json | 3 +- public/app/toolbar/i18n/no.json | 3 +- public/app/toolbar/i18n/pl.json | 3 +- public/app/toolbar/i18n/pt-BR.json | 3 +- public/app/toolbar/i18n/pt-PT.json | 3 +- public/app/toolbar/i18n/ru.json | 3 +- public/app/toolbar/i18n/sv.json | 3 +- public/app/toolbar/i18n/tr.json | 3 +- public/app/toolbar/i18n/zh-CN.json | 3 +- public/app/toolbar/i18n/zh-TW.json | 3 +- public/assets/images/flags/bs.png | Bin 0 -> 16680 bytes public/index.html | 4 +- public/scripts/app.a9c980df.js | 1 - public/scripts/app.c8c9cfef.js | 1 + public/styles/app.6bed6274.css | 1 - public/styles/app.d45f5a7f.css | 1 + server/api/action/action.attributes.js | 2 +- server/api/action/action.controller.js | 2 +- server/api/action/action.model.js | 2 +- server/api/action/action.rpc.js | 2 +- server/api/action/index.js | 2 +- .../analyticCustomReport.attributes.js | 2 +- .../analyticCustomReport.controller.js | 2 +- .../analyticCustomReport.model.js | 2 +- .../analyticCustomReport.rpc.js | 2 +- server/api/analyticCustomReport/index.js | 2 +- .../analyticDefaultReport.attributes.js | 2 +- .../analyticDefaultReport.controller.js | 2 +- .../analyticDefaultReport.model.js | 2 +- .../analyticDefaultReport.rpc.js | 2 +- server/api/analyticDefaultReport/index.js | 2 +- .../analyticExtractedReport.attributes.js | 2 +- .../analyticExtractedReport.controller.js | 2 +- .../analyticExtractedReport.model.js | 2 +- .../analyticExtractedReport.rpc.js | 2 +- server/api/analyticExtractedReport/index.js | 2 +- .../analyticFieldReport.attributes.js | 2 +- .../analyticFieldReport.controller.js | 2 +- .../analyticFieldReport.model.js | 2 +- .../analyticFieldReport/analyticFieldReport.rpc.js | 2 +- server/api/analyticFieldReport/index.js | 2 +- .../analyticMetric/analyticMetric.attributes.js | 2 +- .../analyticMetric/analyticMetric.controller.js | 2 +- server/api/analyticMetric/analyticMetric.model.js | 2 +- server/api/analyticMetric/analyticMetric.rpc.js | 2 +- server/api/analyticMetric/index.js | 2 +- .../analyticTreeReport.attributes.js | 2 +- .../analyticTreeReport.controller.js | 2 +- .../analyticTreeReport/analyticTreeReport.model.js | 2 +- .../analyticTreeReport/analyticTreeReport.rpc.js | 2 +- server/api/analyticTreeReport/index.js | 2 +- server/api/attachment/attachment.attributes.js | 2 +- server/api/attachment/attachment.controller.js | 2 +- server/api/attachment/attachment.model.js | 2 +- server/api/attachment/attachment.rpc.js | 2 +- server/api/attachment/index.js | 2 +- .../authActiveDirectory.controller.js | 2 +- server/api/authActiveDirectory/index.js | 2 +- server/api/authGoogle/authGoogle.controller.js | 2 +- server/api/authGoogle/index.js | 2 +- server/api/authLocal/authLocal.controller.js | 2 +- server/api/authLocal/index.js | 2 +- server/api/automation/automation.attributes.js | 2 +- server/api/automation/automation.controller.js | 2 +- server/api/automation/automation.model.js | 2 +- server/api/automation/automation.rpc.js | 2 +- server/api/automation/index.js | 2 +- server/api/campaign/campaign.attributes.js | 2 +- server/api/campaign/campaign.controller.js | 2 +- server/api/campaign/campaign.model.js | 2 +- server/api/campaign/campaign.rpc.js | 2 +- server/api/campaign/index.js | 2 +- server/api/cannedAnswer/cannedAnswer.attributes.js | 2 +- server/api/cannedAnswer/cannedAnswer.controller.js | 2 +- server/api/cannedAnswer/cannedAnswer.model.js | 2 +- server/api/cannedAnswer/cannedAnswer.rpc.js | 2 +- server/api/cannedAnswer/index.js | 2 +- server/api/cdr/cdr.attributes.js | 2 +- server/api/cdr/cdr.controller.js | 2 +- server/api/cdr/cdr.model.js | 2 +- server/api/cdr/cdr.rpc.js | 2 +- server/api/cdr/index.js | 2 +- .../chatApplication/chatApplication.attributes.js | 2 +- .../chatApplication/chatApplication.controller.js | 2 +- .../api/chatApplication/chatApplication.model.js | 2 +- server/api/chatApplication/chatApplication.rpc.js | 2 +- server/api/chatApplication/index.js | 2 +- server/api/chatGroup/chatGroup.attributes.js | 2 +- server/api/chatGroup/chatGroup.controller.js | 2 +- server/api/chatGroup/chatGroup.events.js | 2 +- server/api/chatGroup/chatGroup.model.js | 2 +- server/api/chatGroup/chatGroup.rpc.js | 2 +- server/api/chatGroup/chatGroup.socket.js | 2 +- server/api/chatGroup/index.js | 2 +- .../chatInteraction/chatInteraction.attributes.js | 2 +- .../chatInteraction/chatInteraction.controller.js | 2 +- .../api/chatInteraction/chatInteraction.events.js | 2 +- .../api/chatInteraction/chatInteraction.model.js | 2 +- server/api/chatInteraction/chatInteraction.rpc.js | 2 +- .../api/chatInteraction/chatInteraction.socket.js | 2 +- server/api/chatInteraction/index.js | 2 +- .../chatInternalMessage.attributes.js | 2 +- .../chatInternalMessage.controller.js | 2 +- .../chatInternalMessage.events.js | 2 +- .../chatInternalMessage.model.js | 2 +- .../chatInternalMessage/chatInternalMessage.rpc.js | 2 +- .../chatInternalMessage.socket.js | 2 +- server/api/chatInternalMessage/index.js | 2 +- server/api/chatMessage/chatMessage.attributes.js | 2 +- server/api/chatMessage/chatMessage.controller.js | 2 +- server/api/chatMessage/chatMessage.events.js | 2 +- server/api/chatMessage/chatMessage.model.js | 2 +- server/api/chatMessage/chatMessage.rpc.js | 2 +- server/api/chatMessage/chatMessage.socket.js | 2 +- server/api/chatMessage/index.js | 2 +- .../chatOfflineMessage.attributes.js | 2 +- .../chatOfflineMessage.controller.js | 2 +- .../chatOfflineMessage.events.js | 2 +- .../chatOfflineMessage/chatOfflineMessage.model.js | 2 +- .../chatOfflineMessage/chatOfflineMessage.rpc.js | 2 +- server/api/chatOfflineMessage/index.js | 2 +- .../chatProactiveAction.attributes.js | 2 +- .../chatProactiveAction.controller.js | 2 +- .../chatProactiveAction.model.js | 2 +- .../chatProactiveAction/chatProactiveAction.rpc.js | 2 +- server/api/chatProactiveAction/index.js | 2 +- server/api/chatQueue/chatQueue.attributes.js | 2 +- server/api/chatQueue/chatQueue.controller.js | 2 +- server/api/chatQueue/chatQueue.events.js | 2 +- server/api/chatQueue/chatQueue.model.js | 2 +- server/api/chatQueue/chatQueue.rpc.js | 2 +- server/api/chatQueue/chatQueue.socket.js | 2 +- server/api/chatQueue/index.js | 2 +- .../chatQueueReport/chatQueueReport.attributes.js | 2 +- .../chatQueueReport/chatQueueReport.controller.js | 2 +- .../api/chatQueueReport/chatQueueReport.model.js | 2 +- server/api/chatQueueReport/chatQueueReport.rpc.js | 2 +- server/api/chatQueueReport/index.js | 2 +- .../chatTransferReport.attributes.js | 2 +- .../chatTransferReport.controller.js | 2 +- .../chatTransferReport/chatTransferReport.model.js | 2 +- .../chatTransferReport/chatTransferReport.rpc.js | 2 +- server/api/chatTransferReport/index.js | 2 +- server/api/chatWebsite/chatWebsite.attributes.js | 2 +- server/api/chatWebsite/chatWebsite.controller.js | 2 +- server/api/chatWebsite/chatWebsite.events.js | 2 +- server/api/chatWebsite/chatWebsite.model.js | 2 +- server/api/chatWebsite/chatWebsite.rpc.js | 2 +- server/api/chatWebsite/chatWebsite.socket.js | 2 +- server/api/chatWebsite/index.js | 2 +- server/api/client-side-logs.js | 2 +- .../api/cloudProvider/cloudProvider.attributes.js | 2 +- .../api/cloudProvider/cloudProvider.controller.js | 2 +- server/api/cloudProvider/cloudProvider.model.js | 2 +- server/api/cloudProvider/cloudProvider.oauth.js | 2 +- server/api/cloudProvider/cloudProvider.rpc.js | 2 +- server/api/cloudProvider/index.js | 2 +- server/api/cmCompany/cmCompany.attributes.js | 2 +- server/api/cmCompany/cmCompany.controller.js | 2 +- server/api/cmCompany/cmCompany.model.js | 2 +- server/api/cmCompany/cmCompany.rpc.js | 2 +- server/api/cmCompany/index.js | 2 +- server/api/cmContact/cmContact.attributes.js | 2 +- server/api/cmContact/cmContact.controller.js | 2 +- server/api/cmContact/cmContact.events.js | 2 +- server/api/cmContact/cmContact.model.js | 2 +- server/api/cmContact/cmContact.rpc.js | 2 +- server/api/cmContact/cmContact.socket.js | 2 +- server/api/cmContact/index.js | 2 +- .../cmContactHasItem.attributes.js | 2 +- .../cmContactHasItem.controller.js | 2 +- .../api/cmContactHasItem/cmContactHasItem.model.js | 2 +- .../api/cmContactHasItem/cmContactHasItem.rpc.js | 2 +- server/api/cmContactHasItem/index.js | 2 +- .../api/cmCustomField/cmCustomField.attributes.js | 2 +- .../api/cmCustomField/cmCustomField.controller.js | 2 +- server/api/cmCustomField/cmCustomField.model.js | 2 +- server/api/cmCustomField/cmCustomField.rpc.js | 2 +- server/api/cmCustomField/index.js | 2 +- server/api/cmHopper/cmHopper.attributes.js | 2 +- server/api/cmHopper/cmHopper.controller.js | 2 +- server/api/cmHopper/cmHopper.model.js | 2 +- server/api/cmHopper/cmHopper.rpc.js | 2 +- server/api/cmHopper/index.js | 2 +- .../cmHopperAdditionalPhone.attributes.js | 2 +- .../cmHopperAdditionalPhone.controller.js | 2 +- .../cmHopperAdditionalPhone.model.js | 2 +- .../cmHopperAdditionalPhone.rpc.js | 2 +- server/api/cmHopperAdditionalPhone/index.js | 2 +- .../api/cmHopperBlack/cmHopperBlack.attributes.js | 2 +- .../api/cmHopperBlack/cmHopperBlack.controller.js | 2 +- server/api/cmHopperBlack/cmHopperBlack.model.js | 2 +- server/api/cmHopperBlack/cmHopperBlack.rpc.js | 2 +- server/api/cmHopperBlack/index.js | 2 +- .../api/cmHopperFinal/cmHopperFinal.attributes.js | 2 +- .../api/cmHopperFinal/cmHopperFinal.controller.js | 2 +- server/api/cmHopperFinal/cmHopperFinal.model.js | 2 +- server/api/cmHopperFinal/cmHopperFinal.rpc.js | 2 +- server/api/cmHopperFinal/index.js | 2 +- .../cmHopperHistory/cmHopperHistory.attributes.js | 2 +- .../cmHopperHistory/cmHopperHistory.controller.js | 2 +- .../api/cmHopperHistory/cmHopperHistory.model.js | 2 +- server/api/cmHopperHistory/cmHopperHistory.rpc.js | 2 +- server/api/cmHopperHistory/index.js | 2 +- server/api/cmList/cmList.attributes.js | 2 +- server/api/cmList/cmList.controller.js | 2 +- server/api/cmList/cmList.events.js | 2 +- server/api/cmList/cmList.model.js | 2 +- server/api/cmList/cmList.rpc.js | 2 +- server/api/cmList/cmList.socket.js | 2 +- server/api/cmList/index.js | 2 +- server/api/condition/condition.attributes.js | 2 +- server/api/condition/condition.controller.js | 2 +- server/api/condition/condition.model.js | 2 +- server/api/condition/condition.rpc.js | 2 +- server/api/condition/index.js | 2 +- .../contactItemType/contactItemType.attributes.js | 2 +- .../contactItemType/contactItemType.controller.js | 2 +- .../api/contactItemType/contactItemType.model.js | 2 +- server/api/contactItemType/contactItemType.rpc.js | 2 +- server/api/contactItemType/index.js | 2 +- server/api/dashboard/dashboard.attributes.js | 2 +- server/api/dashboard/dashboard.controller.js | 2 +- server/api/dashboard/dashboard.events.js | 2 +- server/api/dashboard/dashboard.model.js | 2 +- server/api/dashboard/dashboard.rpc.js | 2 +- server/api/dashboard/dashboard.socket.js | 2 +- server/api/dashboard/index.js | 2 +- .../api/dashboardItem/dashboardItem.attributes.js | 2 +- .../api/dashboardItem/dashboardItem.controller.js | 2 +- server/api/dashboardItem/dashboardItem.events.js | 2 +- server/api/dashboardItem/dashboardItem.model.js | 2 +- server/api/dashboardItem/dashboardItem.rpc.js | 2 +- server/api/dashboardItem/dashboardItem.socket.js | 2 +- server/api/dashboardItem/index.js | 2 +- server/api/disposition/disposition.attributes.js | 2 +- server/api/disposition/disposition.controller.js | 2 +- server/api/disposition/disposition.model.js | 2 +- server/api/disposition/disposition.rpc.js | 2 +- server/api/disposition/index.js | 2 +- server/api/faxAccount/faxAccount.attributes.js | 2 +- server/api/faxAccount/faxAccount.controller.js | 2 +- server/api/faxAccount/faxAccount.events.js | 2 +- server/api/faxAccount/faxAccount.model.js | 2 +- server/api/faxAccount/faxAccount.rpc.js | 2 +- server/api/faxAccount/faxAccount.socket.js | 2 +- server/api/faxAccount/index.js | 2 +- .../faxApplication/faxApplication.attributes.js | 2 +- .../faxApplication/faxApplication.controller.js | 2 +- server/api/faxApplication/faxApplication.model.js | 2 +- server/api/faxApplication/faxApplication.rpc.js | 2 +- server/api/faxApplication/index.js | 2 +- .../faxInteraction/faxInteraction.attributes.js | 2 +- .../faxInteraction/faxInteraction.controller.js | 2 +- server/api/faxInteraction/faxInteraction.events.js | 2 +- server/api/faxInteraction/faxInteraction.model.js | 2 +- server/api/faxInteraction/faxInteraction.rpc.js | 2 +- server/api/faxInteraction/faxInteraction.socket.js | 2 +- server/api/faxInteraction/index.js | 2 +- server/api/faxMessage/faxMessage.attributes.js | 2 +- server/api/faxMessage/faxMessage.controller.js | 2 +- server/api/faxMessage/faxMessage.events.js | 2 +- server/api/faxMessage/faxMessage.model.js | 2 +- server/api/faxMessage/faxMessage.rpc.js | 2 +- server/api/faxMessage/faxMessage.socket.js | 2 +- server/api/faxMessage/index.js | 2 +- server/api/faxQueue/faxQueue.attributes.js | 2 +- server/api/faxQueue/faxQueue.controller.js | 2 +- server/api/faxQueue/faxQueue.events.js | 2 +- server/api/faxQueue/faxQueue.model.js | 2 +- server/api/faxQueue/faxQueue.rpc.js | 2 +- server/api/faxQueue/faxQueue.socket.js | 2 +- server/api/faxQueue/index.js | 2 +- .../faxQueueReport/faxQueueReport.attributes.js | 2 +- .../faxQueueReport/faxQueueReport.controller.js | 2 +- server/api/faxQueueReport/faxQueueReport.model.js | 2 +- server/api/faxQueueReport/faxQueueReport.rpc.js | 2 +- server/api/faxQueueReport/index.js | 2 +- .../faxTransferReport.attributes.js | 2 +- .../faxTransferReport.controller.js | 2 +- .../faxTransferReport/faxTransferReport.model.js | 2 +- .../api/faxTransferReport/faxTransferReport.rpc.js | 2 +- server/api/faxTransferReport/index.js | 2 +- server/api/intDeskAccount/index.js | 2 +- .../intDeskAccount/intDeskAccount.attributes.js | 2 +- .../intDeskAccount/intDeskAccount.controller.js | 2 +- server/api/intDeskAccount/intDeskAccount.model.js | 2 +- server/api/intDeskAccount/intDeskAccount.rpc.js | 2 +- server/api/intDeskConfiguration/index.js | 2 +- .../intDeskConfiguration.attributes.js | 2 +- .../intDeskConfiguration.controller.js | 2 +- .../intDeskConfiguration.model.js | 2 +- .../intDeskConfiguration.rpc.js | 2 +- server/api/intDeskField/index.js | 2 +- server/api/intDeskField/intDeskField.attributes.js | 2 +- server/api/intDeskField/intDeskField.controller.js | 2 +- server/api/intDeskField/intDeskField.model.js | 2 +- server/api/intDeskField/intDeskField.rpc.js | 2 +- server/api/intDynamics365Account/index.js | 2 +- .../intDynamics365Account.attributes.js | 2 +- .../intDynamics365Account.controller.js | 2 +- .../intDynamics365Account.model.js | 2 +- .../intDynamics365Account.rpc.js | 2 +- server/api/intDynamics365Configuration/index.js | 2 +- .../intDynamics365Configuration.attributes.js | 2 +- .../intDynamics365Configuration.controller.js | 2 +- .../intDynamics365Configuration.model.js | 2 +- .../intDynamics365Configuration.rpc.js | 2 +- server/api/intDynamics365Field/index.js | 2 +- .../intDynamics365Field.attributes.js | 2 +- .../intDynamics365Field.controller.js | 2 +- .../intDynamics365Field.model.js | 2 +- .../intDynamics365Field/intDynamics365Field.rpc.js | 2 +- server/api/intFreshdeskAccount/index.js | 2 +- .../intFreshdeskAccount.attributes.js | 2 +- .../intFreshdeskAccount.controller.js | 2 +- .../intFreshdeskAccount.model.js | 2 +- .../intFreshdeskAccount/intFreshdeskAccount.rpc.js | 2 +- server/api/intFreshdeskConfiguration/index.js | 2 +- .../intFreshdeskConfiguration.attributes.js | 2 +- .../intFreshdeskConfiguration.controller.js | 2 +- .../intFreshdeskConfiguration.model.js | 2 +- .../intFreshdeskConfiguration.rpc.js | 2 +- server/api/intFreshdeskField/index.js | 2 +- .../intFreshdeskField.attributes.js | 2 +- .../intFreshdeskField.controller.js | 2 +- .../intFreshdeskField/intFreshdeskField.model.js | 2 +- .../api/intFreshdeskField/intFreshdeskField.rpc.js | 2 +- server/api/intFreshsalesAccount/index.js | 2 +- .../intFreshsalesAccount.attributes.js | 2 +- .../intFreshsalesAccount.controller.js | 2 +- .../intFreshsalesAccount.model.js | 2 +- .../intFreshsalesAccount.rpc.js | 2 +- server/api/intFreshsalesConfiguration/index.js | 2 +- .../intFreshsalesConfiguration.attributes.js | 2 +- .../intFreshsalesConfiguration.controller.js | 2 +- .../intFreshsalesConfiguration.model.js | 2 +- .../intFreshsalesConfiguration.rpc.js | 2 +- server/api/intFreshsalesField/index.js | 2 +- .../intFreshsalesField.attributes.js | 2 +- .../intFreshsalesField.controller.js | 2 +- .../intFreshsalesField/intFreshsalesField.model.js | 2 +- .../intFreshsalesField/intFreshsalesField.rpc.js | 2 +- server/api/intSalesforceAccount/index.js | 2 +- .../intSalesforceAccount.attributes.js | 2 +- .../intSalesforceAccount.controller.js | 2 +- .../intSalesforceAccount.model.js | 2 +- .../intSalesforceAccount.rpc.js | 2 +- server/api/intSalesforceConfiguration/index.js | 2 +- .../intSalesforceConfiguration.attributes.js | 2 +- .../intSalesforceConfiguration.controller.js | 2 +- .../intSalesforceConfiguration.model.js | 2 +- .../intSalesforceConfiguration.rpc.js | 2 +- server/api/intSalesforceField/index.js | 2 +- .../intSalesforceField.attributes.js | 2 +- .../intSalesforceField.controller.js | 2 +- .../intSalesforceField/intSalesforceField.model.js | 2 +- .../intSalesforceField/intSalesforceField.rpc.js | 2 +- server/api/intServicenowAccount/index.js | 2 +- .../intServicenowAccount.attributes.js | 2 +- .../intServicenowAccount.controller.js | 2 +- .../intServicenowAccount.model.js | 2 +- .../intServicenowAccount.rpc.js | 2 +- server/api/intServicenowConfiguration/index.js | 2 +- .../intServicenowConfiguration.attributes.js | 2 +- .../intServicenowConfiguration.controller.js | 2 +- .../intServicenowConfiguration.model.js | 2 +- .../intServicenowConfiguration.rpc.js | 2 +- server/api/intServicenowField/index.js | 2 +- .../intServicenowField.attributes.js | 2 +- .../intServicenowField.controller.js | 2 +- .../intServicenowField/intServicenowField.model.js | 2 +- .../intServicenowField/intServicenowField.rpc.js | 2 +- server/api/intSugarcrmAccount/index.js | 2 +- .../intSugarcrmAccount.attributes.js | 2 +- .../intSugarcrmAccount.controller.js | 2 +- .../intSugarcrmAccount/intSugarcrmAccount.model.js | 2 +- .../intSugarcrmAccount/intSugarcrmAccount.rpc.js | 2 +- server/api/intSugarcrmConfiguration/index.js | 2 +- .../intSugarcrmConfiguration.attributes.js | 2 +- .../intSugarcrmConfiguration.controller.js | 2 +- .../intSugarcrmConfiguration.model.js | 2 +- .../intSugarcrmConfiguration.rpc.js | 2 +- server/api/intSugarcrmField/index.js | 2 +- .../intSugarcrmField.attributes.js | 2 +- .../intSugarcrmField.controller.js | 2 +- .../api/intSugarcrmField/intSugarcrmField.model.js | 2 +- .../api/intSugarcrmField/intSugarcrmField.rpc.js | 2 +- server/api/intVtigerAccount/index.js | 2 +- .../intVtigerAccount.attributes.js | 2 +- .../intVtigerAccount.controller.js | 2 +- .../api/intVtigerAccount/intVtigerAccount.model.js | 2 +- .../api/intVtigerAccount/intVtigerAccount.rpc.js | 2 +- server/api/intVtigerConfiguration/index.js | 2 +- .../intVtigerConfiguration.attributes.js | 2 +- .../intVtigerConfiguration.controller.js | 2 +- .../intVtigerConfiguration.model.js | 2 +- .../intVtigerConfiguration.rpc.js | 2 +- server/api/intVtigerField/index.js | 2 +- .../intVtigerField/intVtigerField.attributes.js | 2 +- .../intVtigerField/intVtigerField.controller.js | 2 +- server/api/intVtigerField/intVtigerField.model.js | 2 +- server/api/intVtigerField/intVtigerField.rpc.js | 2 +- server/api/intZendeskAccount/index.js | 2 +- .../intZendeskAccount.attributes.js | 2 +- .../intZendeskAccount.controller.js | 2 +- .../intZendeskAccount/intZendeskAccount.model.js | 2 +- .../api/intZendeskAccount/intZendeskAccount.rpc.js | 2 +- server/api/intZendeskConfiguration/index.js | 2 +- .../intZendeskConfiguration.attributes.js | 2 +- .../intZendeskConfiguration.controller.js | 2 +- .../intZendeskConfiguration.model.js | 2 +- .../intZendeskConfiguration.rpc.js | 2 +- server/api/intZendeskField/index.js | 2 +- .../intZendeskField/intZendeskField.attributes.js | 2 +- .../intZendeskField/intZendeskField.controller.js | 2 +- .../api/intZendeskField/intZendeskField.model.js | 2 +- server/api/intZendeskField/intZendeskField.rpc.js | 2 +- server/api/intZohoAccount/index.js | 2 +- .../intZohoAccount/intZohoAccount.attributes.js | 2 +- .../intZohoAccount/intZohoAccount.controller.js | 2 +- server/api/intZohoAccount/intZohoAccount.model.js | 2 +- server/api/intZohoAccount/intZohoAccount.rpc.js | 2 +- server/api/intZohoConfiguration/index.js | 2 +- .../intZohoConfiguration.attributes.js | 2 +- .../intZohoConfiguration.controller.js | 2 +- .../intZohoConfiguration.model.js | 2 +- .../intZohoConfiguration.rpc.js | 2 +- server/api/intZohoField/index.js | 2 +- server/api/intZohoField/intZohoField.attributes.js | 2 +- server/api/intZohoField/intZohoField.controller.js | 2 +- server/api/intZohoField/intZohoField.model.js | 2 +- server/api/intZohoField/intZohoField.rpc.js | 2 +- server/api/integration/index.js | 2 +- server/api/integration/integration.attributes.js | 2 +- server/api/integration/integration.controller.js | 2 +- server/api/integration/integration.model.js | 2 +- server/api/integration/integration.rpc.js | 2 +- server/api/integrationReport/index.js | 2 +- .../integrationReport.attributes.js | 2 +- .../integrationReport.controller.js | 2 +- .../integrationReport/integrationReport.model.js | 2 +- .../api/integrationReport/integrationReport.rpc.js | 2 +- server/api/interval/index.js | 2 +- server/api/interval/interval.attributes.js | 2 +- server/api/interval/interval.controller.js | 2 +- server/api/interval/interval.model.js | 2 +- server/api/interval/interval.rpc.js | 2 +- server/api/jira/index.js | 2 +- server/api/jira/jira.controller.js | 2 +- server/api/jscriptyAnswerReport/index.js | 2 +- .../jscriptyAnswerReport.attributes.js | 2 +- .../jscriptyAnswerReport.controller.js | 2 +- .../jscriptyAnswerReport.model.js | 2 +- .../jscriptyAnswerReport.rpc.js | 2 +- server/api/jscriptyProject/index.js | 2 +- .../jscriptyProject/jscriptyProject.attributes.js | 2 +- .../jscriptyProject/jscriptyProject.controller.js | 2 +- .../api/jscriptyProject/jscriptyProject.model.js | 2 +- server/api/jscriptyProject/jscriptyProject.rpc.js | 2 +- server/api/jscriptyQuestionReport/index.js | 2 +- .../jscriptyQuestionReport.attributes.js | 2 +- .../jscriptyQuestionReport.controller.js | 2 +- .../jscriptyQuestionReport.model.js | 2 +- .../jscriptyQuestionReport.rpc.js | 2 +- server/api/jscriptySessionReport/index.js | 2 +- .../jscriptySessionReport.attributes.js | 2 +- .../jscriptySessionReport.controller.js | 2 +- .../jscriptySessionReport.model.js | 2 +- .../jscriptySessionReport.rpc.js | 2 +- server/api/license/index.js | 2 +- server/api/license/license.attributes.js | 2 +- server/api/license/license.controller.js | 2 +- server/api/license/license.model.js | 2 +- server/api/license/license.rpc.js | 2 +- server/api/mailAccount/index.js | 2 +- server/api/mailAccount/mailAccount.attributes.js | 2 +- server/api/mailAccount/mailAccount.controller.js | 2 +- server/api/mailAccount/mailAccount.events.js | 2 +- server/api/mailAccount/mailAccount.model.js | 2 +- server/api/mailAccount/mailAccount.rpc.js | 2 +- server/api/mailAccount/mailAccount.socket.js | 2 +- server/api/mailApplication/index.js | 2 +- .../mailApplication/mailApplication.attributes.js | 2 +- .../mailApplication/mailApplication.controller.js | 2 +- .../api/mailApplication/mailApplication.model.js | 2 +- server/api/mailApplication/mailApplication.rpc.js | 2 +- server/api/mailInteraction/index.js | 2 +- .../mailInteraction/mailInteraction.attributes.js | 2 +- .../mailInteraction/mailInteraction.controller.js | 2 +- .../api/mailInteraction/mailInteraction.events.js | 2 +- .../api/mailInteraction/mailInteraction.model.js | 2 +- server/api/mailInteraction/mailInteraction.rpc.js | 2 +- .../api/mailInteraction/mailInteraction.socket.js | 2 +- server/api/mailMessage/index.js | 2 +- server/api/mailMessage/mailMessage.attributes.js | 2 +- server/api/mailMessage/mailMessage.controller.js | 2 +- server/api/mailMessage/mailMessage.events.js | 2 +- server/api/mailMessage/mailMessage.model.js | 2 +- server/api/mailMessage/mailMessage.rpc.js | 2 +- server/api/mailMessage/mailMessage.socket.js | 2 +- server/api/mailQueue/index.js | 2 +- server/api/mailQueue/mailQueue.attributes.js | 2 +- server/api/mailQueue/mailQueue.controller.js | 2 +- server/api/mailQueue/mailQueue.events.js | 2 +- server/api/mailQueue/mailQueue.model.js | 2 +- server/api/mailQueue/mailQueue.rpc.js | 2 +- server/api/mailQueue/mailQueue.socket.js | 2 +- server/api/mailQueueReport/index.js | 2 +- .../mailQueueReport/mailQueueReport.attributes.js | 2 +- .../mailQueueReport/mailQueueReport.controller.js | 2 +- .../api/mailQueueReport/mailQueueReport.model.js | 2 +- server/api/mailQueueReport/mailQueueReport.rpc.js | 2 +- server/api/mailServerIn/index.js | 2 +- server/api/mailServerIn/mailServerIn.attributes.js | 2 +- server/api/mailServerIn/mailServerIn.model.js | 2 +- server/api/mailServerIn/mailServerIn.rpc.js | 2 +- server/api/mailServerOut/index.js | 2 +- .../api/mailServerOut/mailServerOut.attributes.js | 2 +- .../api/mailServerOut/mailServerOut.controller.js | 2 +- server/api/mailServerOut/mailServerOut.model.js | 2 +- server/api/mailServerOut/mailServerOut.rpc.js | 2 +- server/api/mailSubstatus/index.js | 2 +- .../api/mailSubstatus/mailSubstatus.attributes.js | 2 +- .../api/mailSubstatus/mailSubstatus.controller.js | 2 +- server/api/mailSubstatus/mailSubstatus.events.js | 2 +- server/api/mailSubstatus/mailSubstatus.model.js | 2 +- server/api/mailSubstatus/mailSubstatus.rpc.js | 2 +- server/api/mailTransferReport/index.js | 2 +- .../mailTransferReport.attributes.js | 2 +- .../mailTransferReport.controller.js | 2 +- .../mailTransferReport/mailTransferReport.model.js | 2 +- .../mailTransferReport/mailTransferReport.rpc.js | 2 +- server/api/memberReport/index.js | 2 +- server/api/memberReport/memberReport.attributes.js | 2 +- server/api/memberReport/memberReport.controller.js | 2 +- server/api/memberReport/memberReport.model.js | 2 +- server/api/memberReport/memberReport.rpc.js | 2 +- server/api/migration/index.js | 2 +- server/api/migration/migration.attributes.js | 2 +- server/api/migration/migration.controller.js | 2 +- server/api/migration/migration.model.js | 2 +- server/api/migration/migration.rpc.js | 2 +- server/api/network/index.js | 2 +- server/api/network/network.attributes.js | 2 +- server/api/network/network.controller.js | 2 +- server/api/network/network.model.js | 2 +- server/api/network/network.rpc.js | 2 +- server/api/openchannelAccount/index.js | 2 +- .../openchannelAccount.attributes.js | 2 +- .../openchannelAccount.controller.js | 2 +- .../openchannelAccount.events.js | 2 +- .../openchannelAccount/openchannelAccount.model.js | 2 +- .../openchannelAccount/openchannelAccount.rpc.js | 2 +- .../openchannelAccount.socket.js | 2 +- server/api/openchannelApplication/index.js | 2 +- .../openchannelApplication.attributes.js | 2 +- .../openchannelApplication.controller.js | 2 +- .../openchannelApplication.model.js | 2 +- .../openchannelApplication.rpc.js | 2 +- server/api/openchannelInteraction/index.js | 2 +- .../openchannelInteraction.attributes.js | 2 +- .../openchannelInteraction.controller.js | 2 +- .../openchannelInteraction.events.js | 2 +- .../openchannelInteraction.model.js | 2 +- .../openchannelInteraction.rpc.js | 2 +- .../openchannelInteraction.socket.js | 2 +- server/api/openchannelMessage/index.js | 2 +- .../openchannelMessage.attributes.js | 2 +- .../openchannelMessage.controller.js | 2 +- .../openchannelMessage.events.js | 2 +- .../openchannelMessage/openchannelMessage.model.js | 2 +- .../openchannelMessage/openchannelMessage.rpc.js | 2 +- .../openchannelMessage.socket.js | 2 +- server/api/openchannelQueue/index.js | 2 +- .../openchannelQueue.attributes.js | 2 +- .../openchannelQueue.controller.js | 2 +- .../openchannelQueue/openchannelQueue.events.js | 2 +- .../api/openchannelQueue/openchannelQueue.model.js | 2 +- .../api/openchannelQueue/openchannelQueue.rpc.js | 2 +- .../openchannelQueue/openchannelQueue.socket.js | 2 +- server/api/openchannelQueueReport/index.js | 2 +- .../openchannelQueueReport.attributes.js | 2 +- .../openchannelQueueReport.controller.js | 2 +- .../openchannelQueueReport.model.js | 2 +- .../openchannelQueueReport.rpc.js | 2 +- server/api/openchannelTransferReport/index.js | 2 +- .../openchannelTransferReport.attributes.js | 2 +- .../openchannelTransferReport.controller.js | 2 +- .../openchannelTransferReport.model.js | 2 +- .../openchannelTransferReport.rpc.js | 2 +- server/api/pause/index.js | 2 +- server/api/pause/pause.attributes.js | 2 +- server/api/pause/pause.controller.js | 2 +- server/api/pause/pause.model.js | 2 +- server/api/pause/pause.rpc.js | 2 +- server/api/plugin/index.js | 2 +- server/api/plugin/plugin.attributes.js | 2 +- server/api/plugin/plugin.controller.js | 2 +- server/api/plugin/plugin.events.js | 2 +- server/api/plugin/plugin.model.js | 2 +- server/api/plugin/plugin.rpc.js | 2 +- server/api/plugin/plugin.socket.js | 2 +- server/api/pm2/index.js | 2 +- server/api/pm2/pm2.controller.js | 2 +- server/api/realtime/index.js | 2 +- server/api/realtime/realtime.controller.js | 2 +- server/api/reportAgentPreview/index.js | 2 +- .../reportAgentPreview.attributes.js | 2 +- .../reportAgentPreview/reportAgentPreview.model.js | 2 +- .../reportAgentPreview/reportAgentPreview.rpc.js | 2 +- server/api/rpc/index.js | 2 +- server/api/rpc/rpc.controller.js | 2 +- server/api/schedule/index.js | 2 +- server/api/schedule/schedule.attributes.js | 2 +- server/api/schedule/schedule.controller.js | 2 +- server/api/schedule/schedule.model.js | 2 +- server/api/schedule/schedule.rpc.js | 2 +- server/api/screenRecording/index.js | 2 +- .../screenRecording/screenRecording.attributes.js | 2 +- .../screenRecording/screenRecording.controller.js | 2 +- .../api/screenRecording/screenRecording.model.js | 2 +- server/api/screenRecording/screenRecording.rpc.js | 2 +- server/api/setting/index.js | 2 +- server/api/setting/setting.attributes.js | 2 +- server/api/setting/setting.controller.js | 2 +- server/api/setting/setting.model.js | 2 +- server/api/setting/setting.rpc.js | 2 +- server/api/smsAccount/index.js | 2 +- server/api/smsAccount/smsAccount.attributes.js | 2 +- server/api/smsAccount/smsAccount.controller.js | 2 +- server/api/smsAccount/smsAccount.events.js | 2 +- server/api/smsAccount/smsAccount.model.js | 2 +- server/api/smsAccount/smsAccount.rpc.js | 2 +- server/api/smsAccount/smsAccount.socket.js | 2 +- server/api/smsApplication/index.js | 2 +- .../smsApplication/smsApplication.attributes.js | 2 +- .../smsApplication/smsApplication.controller.js | 2 +- server/api/smsApplication/smsApplication.model.js | 2 +- server/api/smsApplication/smsApplication.rpc.js | 2 +- server/api/smsInteraction/index.js | 2 +- .../smsInteraction/smsInteraction.attributes.js | 2 +- .../smsInteraction/smsInteraction.controller.js | 2 +- server/api/smsInteraction/smsInteraction.events.js | 2 +- server/api/smsInteraction/smsInteraction.model.js | 2 +- server/api/smsInteraction/smsInteraction.rpc.js | 2 +- server/api/smsInteraction/smsInteraction.socket.js | 2 +- server/api/smsMessage/index.js | 2 +- server/api/smsMessage/smsMessage.attributes.js | 2 +- server/api/smsMessage/smsMessage.controller.js | 2 +- server/api/smsMessage/smsMessage.events.js | 2 +- server/api/smsMessage/smsMessage.model.js | 2 +- server/api/smsMessage/smsMessage.rpc.js | 2 +- server/api/smsMessage/smsMessage.socket.js | 2 +- server/api/smsQueue/index.js | 2 +- server/api/smsQueue/smsQueue.attributes.js | 2 +- server/api/smsQueue/smsQueue.controller.js | 2 +- server/api/smsQueue/smsQueue.events.js | 2 +- server/api/smsQueue/smsQueue.model.js | 2 +- server/api/smsQueue/smsQueue.rpc.js | 2 +- server/api/smsQueue/smsQueue.socket.js | 2 +- server/api/smsQueueReport/index.js | 2 +- .../smsQueueReport/smsQueueReport.attributes.js | 2 +- .../smsQueueReport/smsQueueReport.controller.js | 2 +- server/api/smsQueueReport/smsQueueReport.model.js | 2 +- server/api/smsQueueReport/smsQueueReport.rpc.js | 2 +- server/api/smsTransferReport/index.js | 2 +- .../smsTransferReport.attributes.js | 2 +- .../smsTransferReport.controller.js | 2 +- .../smsTransferReport/smsTransferReport.model.js | 2 +- .../api/smsTransferReport/smsTransferReport.rpc.js | 2 +- server/api/sound/index.js | 2 +- server/api/sound/sound.attributes.js | 2 +- server/api/sound/sound.controller.js | 2 +- server/api/sound/sound.model.js | 2 +- server/api/sound/sound.rpc.js | 2 +- server/api/squareMessage/index.js | 2 +- .../api/squareMessage/squareMessage.attributes.js | 2 +- .../api/squareMessage/squareMessage.controller.js | 2 +- server/api/squareMessage/squareMessage.model.js | 2 +- server/api/squareMessage/squareMessage.rpc.js | 2 +- server/api/squareOdbc/index.js | 2 +- server/api/squareOdbc/squareOdbc.attributes.js | 2 +- server/api/squareOdbc/squareOdbc.controller.js | 2 +- server/api/squareOdbc/squareOdbc.model.js | 2 +- server/api/squareOdbc/squareOdbc.rpc.js | 2 +- server/api/squareProject/index.js | 2 +- .../api/squareProject/squareProject.attributes.js | 2 +- .../api/squareProject/squareProject.controller.js | 2 +- server/api/squareProject/squareProject.events.js | 2 +- server/api/squareProject/squareProject.model.js | 2 +- server/api/squareProject/squareProject.rpc.js | 2 +- server/api/squareProject/squareProject.socket.js | 2 +- server/api/squareRecording/index.js | 2 +- .../squareRecording/squareRecording.attributes.js | 2 +- .../squareRecording/squareRecording.controller.js | 2 +- .../api/squareRecording/squareRecording.model.js | 2 +- server/api/squareRecording/squareRecording.rpc.js | 2 +- server/api/squareReport/index.js | 2 +- server/api/squareReport/squareReport.attributes.js | 2 +- server/api/squareReport/squareReport.controller.js | 2 +- server/api/squareReport/squareReport.model.js | 2 +- server/api/squareReport/squareReport.rpc.js | 2 +- server/api/squareReportDetail/index.js | 2 +- .../squareReportDetail.attributes.js | 2 +- .../squareReportDetail.controller.js | 2 +- .../squareReportDetail/squareReportDetail.model.js | 2 +- .../squareReportDetail/squareReportDetail.rpc.js | 2 +- server/api/system/index.js | 2 +- server/api/system/system.controller.js | 2 +- server/api/tag/index.js | 2 +- server/api/tag/tag.attributes.js | 2 +- server/api/tag/tag.controller.js | 2 +- server/api/tag/tag.model.js | 2 +- server/api/tag/tag.rpc.js | 2 +- server/api/team/index.js | 2 +- server/api/team/team.attributes.js | 2 +- server/api/team/team.controller.js | 2 +- server/api/team/team.events.js | 2 +- server/api/team/team.model.js | 2 +- server/api/team/team.rpc.js | 2 +- server/api/team/team.socket.js | 2 +- .../teamVoicePrefix/teamVoicePrefix.attributes.js | 2 +- .../api/teamVoicePrefix/teamVoicePrefix.model.js | 2 +- server/api/teamVoiceQueue/index.js | 2 +- .../teamVoiceQueue/teamVoiceQueue.attributes.js | 2 +- server/api/teamVoiceQueue/teamVoiceQueue.model.js | 2 +- server/api/teamVoiceQueue/teamVoiceQueue.rpc.js | 2 +- server/api/template/index.js | 2 +- server/api/template/template.attributes.js | 2 +- server/api/template/template.controller.js | 2 +- server/api/template/template.model.js | 2 +- server/api/template/template.rpc.js | 2 +- server/api/trigger/index.js | 2 +- server/api/trigger/trigger.attributes.js | 2 +- server/api/trigger/trigger.controller.js | 2 +- server/api/trigger/trigger.model.js | 2 +- server/api/trigger/trigger.rpc.js | 2 +- server/api/trunk/index.js | 2 +- server/api/trunk/trunk.attributes.js | 2 +- server/api/trunk/trunk.controller.js | 2 +- server/api/trunk/trunk.model.js | 2 +- server/api/trunk/trunk.rpc.js | 2 +- server/api/user-setting/index.js | 2 +- server/api/user-setting/user-setting.attributes.js | 2 +- server/api/user-setting/user-setting.controller.js | 2 +- server/api/user-setting/user-setting.events.js | 2 +- server/api/user-setting/user-setting.model.js | 2 +- server/api/user-setting/user-setting.socket.js | 2 +- server/api/user/index.js | 2 +- server/api/user/user.attributes.js | 2 +- server/api/user/user.controller.js | 2 +- server/api/user/user.events.js | 2 +- server/api/user/user.model.js | 2 +- server/api/user/user.rpc.js | 2 +- server/api/user/user.socket.js | 2 +- server/api/userChatQueue/index.js | 2 +- .../api/userChatQueue/userChatQueue.attributes.js | 2 +- server/api/userChatQueue/userChatQueue.model.js | 2 +- server/api/userChatQueue/userChatQueue.rpc.js | 2 +- server/api/userFaxQueue/index.js | 2 +- server/api/userFaxQueue/userFaxQueue.attributes.js | 2 +- server/api/userFaxQueue/userFaxQueue.model.js | 2 +- server/api/userFaxQueue/userFaxQueue.rpc.js | 2 +- server/api/userMailQueue/index.js | 2 +- .../api/userMailQueue/userMailQueue.attributes.js | 2 +- server/api/userMailQueue/userMailQueue.model.js | 2 +- server/api/userMailQueue/userMailQueue.rpc.js | 2 +- server/api/userNotification/index.js | 2 +- .../userNotification.attributes.js | 2 +- .../userNotification.controller.js | 2 +- .../userNotification/userNotification.events.js | 2 +- .../api/userNotification/userNotification.model.js | 2 +- .../api/userNotification/userNotification.rpc.js | 2 +- .../userNotification/userNotification.socket.js | 2 +- server/api/userOpenchannelQueue/index.js | 2 +- .../userOpenchannelQueue.attributes.js | 2 +- .../userOpenchannelQueue.model.js | 2 +- .../userOpenchannelQueue.rpc.js | 2 +- server/api/userProfile/index.js | 2 +- server/api/userProfile/userProfile.attributes.js | 2 +- server/api/userProfile/userProfile.controller.js | 2 +- server/api/userProfile/userProfile.events.js | 2 +- server/api/userProfile/userProfile.model.js | 2 +- server/api/userProfile/userProfile.rpc.js | 2 +- server/api/userProfile/userProfile.socket.js | 2 +- server/api/userProfileResource/index.js | 2 +- .../userProfileResource.attributes.js | 2 +- .../userProfileResource.controller.js | 2 +- .../userProfileResource.model.js | 2 +- .../userProfileResource/userProfileResource.rpc.js | 2 +- server/api/userProfileSection/index.js | 2 +- .../userProfileSection.attributes.js | 2 +- .../userProfileSection.controller.js | 2 +- .../userProfileSection/userProfileSection.model.js | 2 +- .../userProfileSection/userProfileSection.rpc.js | 2 +- server/api/userSmsQueue/index.js | 2 +- server/api/userSmsQueue/userSmsQueue.attributes.js | 2 +- server/api/userSmsQueue/userSmsQueue.model.js | 2 +- server/api/userSmsQueue/userSmsQueue.rpc.js | 2 +- .../userVoicePrefix/userVoicePrefix.attributes.js | 2 +- .../api/userVoicePrefix/userVoicePrefix.model.js | 2 +- server/api/userVoiceQueue/index.js | 2 +- .../userVoiceQueue/userVoiceQueue.attributes.js | 2 +- server/api/userVoiceQueue/userVoiceQueue.model.js | 2 +- server/api/userVoiceQueue/userVoiceQueue.rpc.js | 2 +- server/api/userVoiceQueueRt/index.js | 2 +- .../userVoiceQueueRt.attributes.js | 2 +- .../userVoiceQueueRt/userVoiceQueueRt.events.js | 2 +- .../api/userVoiceQueueRt/userVoiceQueueRt.model.js | 2 +- .../api/userVoiceQueueRt/userVoiceQueueRt.rpc.js | 2 +- .../userVoiceQueueRt/userVoiceQueueRt.socket.js | 2 +- server/api/userWhatsappQueue/index.js | 2 +- .../userWhatsappQueue.attributes.js | 2 +- .../userWhatsappQueue/userWhatsappQueue.model.js | 2 +- .../api/userWhatsappQueue/userWhatsappQueue.rpc.js | 2 +- server/api/variable/index.js | 2 +- server/api/variable/variable.attributes.js | 2 +- server/api/variable/variable.controller.js | 2 +- server/api/variable/variable.model.js | 2 +- server/api/variable/variable.rpc.js | 2 +- server/api/version/index.js | 2 +- server/api/version/version.controller.js | 2 +- server/api/voiceAgentReport/index.js | 2 +- .../voiceAgentReport.attributes.js | 2 +- .../voiceAgentReport.controller.js | 2 +- .../api/voiceAgentReport/voiceAgentReport.model.js | 2 +- .../api/voiceAgentReport/voiceAgentReport.rpc.js | 2 +- server/api/voiceCallReport/index.js | 2 +- .../voiceCallReport/voiceCallReport.attributes.js | 2 +- .../voiceCallReport/voiceCallReport.controller.js | 2 +- .../api/voiceCallReport/voiceCallReport.model.js | 2 +- server/api/voiceCallReport/voiceCallReport.rpc.js | 2 +- server/api/voiceChanSpy/index.js | 2 +- server/api/voiceChanSpy/voiceChanSpy.attributes.js | 2 +- server/api/voiceChanSpy/voiceChanSpy.controller.js | 2 +- server/api/voiceChanSpy/voiceChanSpy.model.js | 2 +- server/api/voiceChanSpy/voiceChanSpy.rpc.js | 2 +- server/api/voiceContext/index.js | 2 +- server/api/voiceContext/voiceContext.attributes.js | 2 +- server/api/voiceContext/voiceContext.controller.js | 2 +- server/api/voiceContext/voiceContext.model.js | 2 +- server/api/voiceContext/voiceContext.rpc.js | 2 +- server/api/voiceDialReport/index.js | 2 +- .../voiceDialReport/voiceDialReport.attributes.js | 2 +- .../voiceDialReport/voiceDialReport.controller.js | 2 +- .../api/voiceDialReport/voiceDialReport.model.js | 2 +- server/api/voiceDialReport/voiceDialReport.rpc.js | 2 +- server/api/voiceExtension/index.js | 2 +- .../voiceExtension/voiceExtension.attributes.js | 2 +- .../voiceExtension/voiceExtension.controller.js | 2 +- server/api/voiceExtension/voiceExtension.events.js | 2 +- server/api/voiceExtension/voiceExtension.model.js | 2 +- server/api/voiceExtension/voiceExtension.rpc.js | 2 +- server/api/voiceExtension/voiceExtension.socket.js | 2 +- server/api/voiceMail/index.js | 2 +- server/api/voiceMail/voiceMail.attributes.js | 2 +- server/api/voiceMail/voiceMail.controller.js | 2 +- server/api/voiceMail/voiceMail.model.js | 2 +- server/api/voiceMail/voiceMail.rpc.js | 2 +- server/api/voiceMailMessage/index.js | 2 +- .../voiceMailMessage.attributes.js | 2 +- .../voiceMailMessage.controller.js | 2 +- .../api/voiceMailMessage/voiceMailMessage.model.js | 2 +- .../api/voiceMailMessage/voiceMailMessage.rpc.js | 2 +- server/api/voiceMusicOnHold/index.js | 2 +- .../voiceMusicOnHold.attributes.js | 2 +- .../voiceMusicOnHold.controller.js | 2 +- .../api/voiceMusicOnHold/voiceMusicOnHold.model.js | 2 +- .../api/voiceMusicOnHold/voiceMusicOnHold.rpc.js | 2 +- server/api/voicePrefix/index.js | 2 +- server/api/voicePrefix/voicePrefix.attributes.js | 2 +- server/api/voicePrefix/voicePrefix.controller.js | 2 +- server/api/voicePrefix/voicePrefix.events.js | 2 +- server/api/voicePrefix/voicePrefix.model.js | 2 +- server/api/voicePrefix/voicePrefix.rpc.js | 2 +- server/api/voicePrefix/voicePrefix.socket.js | 2 +- server/api/voiceQueue/index.js | 2 +- server/api/voiceQueue/voiceQueue.attributes.js | 2 +- server/api/voiceQueue/voiceQueue.controller.js | 2 +- server/api/voiceQueue/voiceQueue.events.js | 2 +- server/api/voiceQueue/voiceQueue.model.js | 2 +- server/api/voiceQueue/voiceQueue.rpc.js | 2 +- server/api/voiceQueue/voiceQueue.socket.js | 2 +- server/api/voiceQueueReport/index.js | 2 +- .../voiceQueueReport.attributes.js | 2 +- .../voiceQueueReport.controller.js | 2 +- .../voiceQueueReport/voiceQueueReport.events.js | 2 +- .../api/voiceQueueReport/voiceQueueReport.model.js | 2 +- .../api/voiceQueueReport/voiceQueueReport.rpc.js | 2 +- .../voiceQueueReport/voiceQueueReport.socket.js | 2 +- server/api/voiceQueuesLog/index.js | 2 +- .../voiceQueuesLog/voiceQueuesLog.attributes.js | 2 +- .../voiceQueuesLog/voiceQueuesLog.controller.js | 2 +- server/api/voiceQueuesLog/voiceQueuesLog.model.js | 2 +- server/api/voiceQueuesLog/voiceQueuesLog.rpc.js | 2 +- server/api/voiceRecording/index.js | 2 +- .../voiceRecording/voiceRecording.attributes.js | 2 +- .../voiceRecording/voiceRecording.controller.js | 2 +- server/api/voiceRecording/voiceRecording.model.js | 2 +- server/api/voiceRecording/voiceRecording.rpc.js | 2 +- server/api/voiceTransferReport/index.js | 2 +- .../voiceTransferReport.attributes.js | 2 +- .../voiceTransferReport.controller.js | 2 +- .../voiceTransferReport.model.js | 2 +- .../voiceTransferReport/voiceTransferReport.rpc.js | 2 +- server/api/webbar/index.js | 2 +- server/api/webbar/webbar.controller.js | 2 +- server/api/whatsappAccount/index.js | 2 +- .../whatsappAccount/whatsappAccount.attributes.js | 2 +- .../whatsappAccount/whatsappAccount.controller.js | 2 +- .../api/whatsappAccount/whatsappAccount.events.js | 2 +- .../api/whatsappAccount/whatsappAccount.model.js | 2 +- server/api/whatsappAccount/whatsappAccount.rpc.js | 2 +- .../api/whatsappAccount/whatsappAccount.socket.js | 2 +- server/api/whatsappApplication/index.js | 2 +- .../whatsappApplication.attributes.js | 2 +- .../whatsappApplication.controller.js | 2 +- .../whatsappApplication.model.js | 2 +- .../whatsappApplication/whatsappApplication.rpc.js | 2 +- server/api/whatsappInteraction/index.js | 2 +- .../whatsappInteraction.attributes.js | 2 +- .../whatsappInteraction.controller.js | 2 +- .../whatsappInteraction.events.js | 2 +- .../whatsappInteraction.model.js | 2 +- .../whatsappInteraction/whatsappInteraction.rpc.js | 2 +- .../whatsappInteraction.socket.js | 2 +- server/api/whatsappMessage/index.js | 2 +- .../whatsappMessage/whatsappMessage.attributes.js | 2 +- .../whatsappMessage/whatsappMessage.controller.js | 2 +- .../api/whatsappMessage/whatsappMessage.events.js | 2 +- .../api/whatsappMessage/whatsappMessage.model.js | 2 +- server/api/whatsappMessage/whatsappMessage.rpc.js | 2 +- .../api/whatsappMessage/whatsappMessage.socket.js | 2 +- server/api/whatsappQueue/index.js | 2 +- .../api/whatsappQueue/whatsappQueue.attributes.js | 2 +- .../api/whatsappQueue/whatsappQueue.controller.js | 2 +- server/api/whatsappQueue/whatsappQueue.events.js | 2 +- server/api/whatsappQueue/whatsappQueue.model.js | 2 +- server/api/whatsappQueue/whatsappQueue.rpc.js | 2 +- server/api/whatsappQueue/whatsappQueue.socket.js | 2 +- server/api/whatsappQueueReport/index.js | 2 +- .../whatsappQueueReport.attributes.js | 2 +- .../whatsappQueueReport.controller.js | 2 +- .../whatsappQueueReport.model.js | 2 +- .../whatsappQueueReport/whatsappQueueReport.rpc.js | 2 +- server/api/whatsappTransferReport/index.js | 2 +- .../whatsappTransferReport.attributes.js | 2 +- .../whatsappTransferReport.controller.js | 2 +- .../whatsappTransferReport.model.js | 2 +- .../whatsappTransferReport.rpc.js | 2 +- server/app.js | 2 +- server/components/auth/service.js | 2 +- server/components/contacts/index.js | 2 +- server/components/contacts/sql-utils.js | 2 +- server/components/encryptor/index.js | 2 +- server/components/export/csv.js | 2 +- server/components/export/pdf.js | 2 +- server/components/export/xlsx.js | 2 +- server/components/extensions/rewrite.js | 2 +- server/components/import/cm/csv.js | 2 +- server/components/import/cm/csv2.js | 2 +- server/components/import/cm/csvUpdates.js | 2 +- server/components/integrations/configuration.js | 2 +- server/components/interaction/service.js | 2 +- server/components/interaction/sql-utils.js | 2 +- .../components/interaction/update-interaction.js | 2 +- server/components/interaction/utils.js | 2 +- server/components/license/service.js | 2 +- server/components/parsers/advancedSearch.js | 2 +- server/components/parsers/qs.js | 2 +- server/components/realtime/agents.js | 2 +- server/components/realtime/queues.js | 18 + server/config/express.js | 2 +- server/config/license/hardware.js | 2 +- server/config/license/index.js | 2 +- server/config/license/util.js | 2 +- server/config/local.env.js | 2 +- server/config/logger.js | 2 +- server/config/pm2/config.js | 2 +- server/config/pm2/index.js | 2 +- server/config/schedule/chat.js | 2 +- server/config/schedule/cloud-provider.js | 2 +- server/config/schedule/index.js | 2 +- server/config/schedule/transcribe.js | 2 +- server/config/schedule/whatsapp.js | 2 +- server/config/seedContact.js | 2 +- server/config/seedUsers.js | 2 +- server/config/socketio.js | 2 +- server/config/triggers/index.js | 2 +- server/config/utils.js | 2 +- server/errors/api.js | 2 +- server/errors/index.js | 2 +- server/mysqldb/index.js | 2 +- server/routes.js | 2 +- server/rpc/index.js | 2 +- server/services/agi/channel.js | 2 +- server/services/agi/error.js | 2 +- server/services/agi/events.js | 2 +- server/services/agi/graph/index.js | 2 +- server/services/agi/index.js | 2 +- server/services/agi/mailRpc/index.js | 2 +- server/services/agi/project.js | 2 +- server/services/agi/reply.js | 2 +- server/services/agi/rpc/index.js | 2 +- server/services/agi/scripts/aws/index.js | 2 +- server/services/agi/scripts/aws/lex/index.js | 2 +- server/services/agi/scripts/aws/lex/lib/api.js | 2 +- server/services/agi/scripts/aws/polly/index.js | 2 +- server/services/agi/scripts/aws/polly/lib/api.js | 2 +- server/services/agi/scripts/google/asr/index.js | 2 +- server/services/agi/scripts/google/asr/lib/api.js | 2 +- server/services/agi/scripts/google/index.js | 2 +- server/services/agi/scripts/index.js | 2 +- server/services/agi/scripts/sestek/index.js | 2 +- server/services/agi/scripts/sestek/nda/index.js | 2 +- server/services/agi/scripts/tilde/asr/index.js | 2 +- server/services/agi/scripts/tilde/asr/lib/api.js | 2 +- server/services/agi/scripts/tilde/index.js | 2 +- server/services/agi/server.js | 2 +- server/services/agi/vertices.js | 2 +- server/services/ami/acw/index.js | 2 +- server/services/ami/ami.js | 2 +- server/services/ami/client.js | 2 +- server/services/ami/dialer/action.js | 2 +- server/services/ami/dialer/agentComplete.js | 2 +- server/services/ami/dialer/final.js | 2 +- server/services/ami/dialer/hangup.js | 2 +- server/services/ami/dialer/history.js | 2 +- server/services/ami/dialer/index.js | 2 +- server/services/ami/dialer/queueCallerAbandon.js | 2 +- server/services/ami/fax/action.js | 2 +- server/services/ami/fax/index.js | 2 +- server/services/ami/fax/rpcDb.js | 2 +- server/services/ami/fax/util/gs.js | 2 +- server/services/ami/fax/util/util.js | 2 +- server/services/ami/index.js | 2 +- server/services/ami/model/agent.js | 2 +- server/services/ami/model/campaign.js | 2 +- server/services/ami/model/channel.js | 2 +- server/services/ami/model/deskAccount.js | 2 +- server/services/ami/model/dynamics365Account.js | 2 +- server/services/ami/model/faxAccount.js | 2 +- server/services/ami/model/freshdeskAccount.js | 2 +- server/services/ami/model/freshsalesAccount.js | 2 +- server/services/ami/model/queueReport.js | 2 +- server/services/ami/model/salesforceAccount.js | 2 +- server/services/ami/model/servicenowAccount.js | 2 +- server/services/ami/model/sugarcrmAccount.js | 2 +- server/services/ami/model/telephone.js | 2 +- server/services/ami/model/template.js | 2 +- server/services/ami/model/trigger.js | 2 +- server/services/ami/model/trunk.js | 2 +- server/services/ami/model/voiceExtension.js | 2 +- server/services/ami/model/voiceQueue.js | 2 +- server/services/ami/model/voiceQueueSummary.js | 18 + server/services/ami/model/vtigerAccount.js | 2 +- server/services/ami/model/zendeskAccount.js | 2 +- server/services/ami/model/zohoAccount.js | 2 +- server/services/ami/preview/action.js | 2 +- server/services/ami/preview/index.js | 2 +- server/services/ami/preview/rpcDb.js | 2 +- server/services/ami/preview/util/util.js | 2 +- server/services/ami/properties.js | 2 +- server/services/ami/realtime/index.js | 2 +- server/services/ami/realtime/utils.js | 18 + server/services/ami/report/index.js | 2 +- server/services/ami/report/userReport.js | 2 +- server/services/ami/report/voiceAgentReport.js | 2 +- server/services/ami/report/voiceCallReport.js | 2 +- server/services/ami/report/voiceDialReport.js | 2 +- server/services/ami/report/voiceQueueReport.js | 2 +- server/services/ami/rpc/agentReportPreview.js | 2 +- server/services/ami/rpc/attachment.js | 2 +- server/services/ami/rpc/campaign.js | 2 +- server/services/ami/rpc/cmContact.js | 2 +- server/services/ami/rpc/cmHopper.js | 2 +- server/services/ami/rpc/cmHopperAdditionalPhone.js | 2 +- server/services/ami/rpc/cmHopperBlack.js | 2 +- server/services/ami/rpc/cmHopperFinal.js | 2 +- server/services/ami/rpc/cmHopperHistory.js | 2 +- server/services/ami/rpc/faxAccount.js | 2 +- server/services/ami/rpc/faxMessage.js | 2 +- server/services/ami/rpc/integrations/desk.js | 2 +- .../services/ami/rpc/integrations/dynamics365.js | 2 +- server/services/ami/rpc/integrations/freshdesk.js | 2 +- server/services/ami/rpc/integrations/freshsales.js | 2 +- server/services/ami/rpc/integrations/salesforce.js | 2 +- server/services/ami/rpc/integrations/servicenow.js | 2 +- server/services/ami/rpc/integrations/sugarcrm.js | 2 +- server/services/ami/rpc/integrations/vtiger.js | 2 +- server/services/ami/rpc/integrations/zendesk.js | 2 +- server/services/ami/rpc/integrations/zoho.js | 2 +- server/services/ami/rpc/memberReport.js | 2 +- server/services/ami/rpc/setting.js | 2 +- server/services/ami/rpc/template.js | 2 +- server/services/ami/rpc/trigger.js | 2 +- server/services/ami/rpc/trunk.js | 2 +- server/services/ami/rpc/user.js | 2 +- server/services/ami/rpc/voiceAgentReport.js | 2 +- server/services/ami/rpc/voiceCallReport.js | 2 +- server/services/ami/rpc/voiceDialReport.js | 2 +- server/services/ami/rpc/voiceExtension.js | 2 +- server/services/ami/rpc/voiceQueue.js | 2 +- server/services/ami/rpc/voiceQueueReport.js | 2 +- server/services/ami/rpc/voiceQueueRt.js | 2 +- server/services/ami/rpc/voiceRecording.js | 2 +- server/services/ami/rpc/voiceTransferReport.js | 2 +- server/services/ami/server/index.js | 2 +- server/services/ami/trigger/cmContact/index.js | 2 +- server/services/ami/trigger/index.js | 2 +- server/services/ami/trigger/integration/desk.js | 2 +- .../ami/trigger/integration/dynamics365.js | 2 +- .../services/ami/trigger/integration/freshdesk.js | 2 +- .../services/ami/trigger/integration/freshsales.js | 2 +- server/services/ami/trigger/integration/index.js | 2 +- .../services/ami/trigger/integration/salesforce.js | 2 +- .../services/ami/trigger/integration/servicenow.js | 2 +- .../services/ami/trigger/integration/sugarcrm.js | 2 +- server/services/ami/trigger/integration/util.js | 2 +- server/services/ami/trigger/integration/vtiger.js | 2 +- server/services/ami/trigger/integration/zendesk.js | 2 +- server/services/ami/trigger/integration/zoho.js | 2 +- server/services/ami/trigger/script/index.js | 2 +- server/services/ami/trigger/urlforward/index.js | 2 +- server/services/email/client.js | 2 +- server/services/email/index.js | 2 +- server/services/email/lib/email.js | 2 +- server/services/email/lib/imap.js | 2 +- server/services/email/lib/smtp.js | 2 +- server/services/email/lib/utils.js | 2 +- server/services/email/model/mailAccount.js | 2 +- server/services/email/realtime/index.js | 2 +- server/services/email/rpc/mailAccount.js | 2 +- server/services/email/rpc/setting.js | 2 +- server/services/email/server/index.js | 2 +- server/services/express/index.js | 2 +- server/services/routing/client.js | 2 +- server/services/routing/index.js | 2 +- server/services/routing/lib/rule-engine.js | 2 +- server/services/routing/mailRpc/index.js | 2 +- server/services/routing/model/agent.js | 2 +- server/services/routing/model/chatQueue.js | 2 +- server/services/routing/model/faxQueue.js | 2 +- server/services/routing/model/interval.js | 2 +- server/services/routing/model/mailQueue.js | 2 +- server/services/routing/model/openchannelQueue.js | 2 +- server/services/routing/model/smsQueue.js | 2 +- server/services/routing/model/whatsappQueue.js | 2 +- server/services/routing/realtime/index.js | 2 +- server/services/routing/rpc/chatInteraction.js | 2 +- server/services/routing/rpc/chatMessage.js | 2 +- server/services/routing/rpc/chatQueue.js | 2 +- server/services/routing/rpc/chatQueueReport.js | 2 +- server/services/routing/rpc/faxInteraction.js | 2 +- server/services/routing/rpc/faxMessage.js | 2 +- server/services/routing/rpc/faxQueue.js | 2 +- server/services/routing/rpc/faxQueueReport.js | 2 +- server/services/routing/rpc/interval.js | 2 +- server/services/routing/rpc/mailInteraction.js | 2 +- server/services/routing/rpc/mailMessage.js | 2 +- server/services/routing/rpc/mailQueue.js | 2 +- server/services/routing/rpc/mailQueueReport.js | 2 +- .../services/routing/rpc/openchannelInteraction.js | 2 +- server/services/routing/rpc/openchannelMessage.js | 2 +- server/services/routing/rpc/openchannelQueue.js | 2 +- .../services/routing/rpc/openchannelQueueReport.js | 2 +- server/services/routing/rpc/smsInteraction.js | 2 +- server/services/routing/rpc/smsMessage.js | 2 +- server/services/routing/rpc/smsQueue.js | 2 +- server/services/routing/rpc/smsQueueReport.js | 2 +- server/services/routing/rpc/user.js | 2 +- server/services/routing/rpc/whatsappInteraction.js | 2 +- server/services/routing/rpc/whatsappMessage.js | 2 +- server/services/routing/rpc/whatsappQueue.js | 2 +- server/services/routing/rpc/whatsappQueueReport.js | 2 +- .../services/routing/server/applications/agent.js | 2 +- .../routing/server/applications/amazonlex.js | 2 +- .../routing/server/applications/autoreply.js | 2 +- .../services/routing/server/applications/close.js | 2 +- .../routing/server/applications/dialogflow.js | 2 +- .../routing/server/applications/dialogflowV2.js | 2 +- .../services/routing/server/applications/gotoif.js | 2 +- .../services/routing/server/applications/gotop.js | 2 +- .../routing/server/applications/message.js | 2 +- .../services/routing/server/applications/noop.js | 2 +- .../services/routing/server/applications/queue.js | 2 +- .../routing/server/applications/strategy/agent.js | 2 +- .../server/applications/strategy/beepall.js | 2 +- .../routing/server/applications/strategy/index.js | 2 +- .../server/applications/strategy/rrmemory.js | 2 +- .../routing/server/applications/strategy/util.js | 2 +- .../services/routing/server/applications/system.js | 2 +- server/services/routing/server/applications/tag.js | 2 +- .../services/routing/server/applications/tvox.js | 2 +- .../services/routing/server/applications/utils.js | 2 +- server/services/routing/server/index.js | 2 +- server/services/routing/server/interval.js | 2 +- server/services/xdr/agents.controller.js | 2 +- server/services/xdr/calls.controller.js | 2 +- server/services/xdr/core.controller.js | 2 +- server/services/xdr/dials.controller.js | 2 +- server/services/xdr/index.js | 2 +- server/services/xdr/members.controller.js | 2 +- server/services/xdr/queues.controller.js | 2 +- server/services/xdr/recordings.controller.js | 2 +- server/services/xdr/transfers.controller.js | 2 +- server/services/xdr/utils.js | 2 +- server/utils/client-side-logger.js | 2 +- server/utils/loggers.js | 2 +- server/utils/mask-sensitive-data.js | 2 +- server/utils/safe-template.js | 2 +- 1263 files changed, 7699 insertions(+), 1228 deletions(-) create mode 100644 public/app/errors/404/i18n/bs.json create mode 100644 public/app/errors/500/i18n/bs.json create mode 100644 public/app/footer/i18n/bs.json create mode 100644 public/app/forgot/i18n/bs.json create mode 100644 public/app/header/i18n/bs.json create mode 100644 public/app/login/i18n/bs.json create mode 100644 public/app/main/apps/analytics/i18n/bs.json create mode 100644 public/app/main/apps/callysquare/i18n/bs.json create mode 100644 public/app/main/apps/chat/i18n/bs.json create mode 100644 public/app/main/apps/contactmanager/i18n/bs.json create mode 100644 public/app/main/apps/dashboards/i18n/bs.json create mode 100644 public/app/main/apps/fax/i18n/bs.json create mode 100644 public/app/main/apps/help/i18n/bs.json create mode 100644 public/app/main/apps/integrations/i18n/bs.json create mode 100644 public/app/main/apps/jscripty/i18n/bs.json create mode 100644 public/app/main/apps/mail/i18n/bs.json create mode 100644 public/app/main/apps/marketplace/i18n/bs.json create mode 100644 public/app/main/apps/motiondialer/i18n/bs.json create mode 100644 public/app/main/apps/openchannel/i18n/bs.json create mode 100644 public/app/main/apps/plugins/i18n/bs.json create mode 100644 public/app/main/apps/settings/i18n/bs.json create mode 100644 public/app/main/apps/sms/i18n/bs.json create mode 100644 public/app/main/apps/staff/i18n/bs.json create mode 100644 public/app/main/apps/tools/i18n/bs.json create mode 100644 public/app/main/apps/video/i18n/bs.json create mode 100644 public/app/main/apps/voice/i18n/bs.json create mode 100644 public/app/main/apps/whatsapp/i18n/bs.json create mode 100644 public/app/quick-panel/i18n/bs.json create mode 100644 public/app/reset/i18n/bs.json create mode 100644 public/app/toolbar/i18n/bs.json create mode 100644 public/assets/images/flags/bs.png delete mode 100644 public/scripts/app.a9c980df.js create mode 100644 public/scripts/app.c8c9cfef.js delete mode 100644 public/styles/app.6bed6274.css create mode 100644 public/styles/app.d45f5a7f.css create mode 100644 server/components/realtime/queues.js create mode 100644 server/services/ami/model/voiceQueueSummary.js create mode 100644 server/services/ami/realtime/utils.js diff --git a/apidoc/api_project.js b/apidoc/api_project.js index 04546d8..1cd9de3 100644 --- a/apidoc/api_project.js +++ b/apidoc/api_project.js @@ -17,7 +17,7 @@ define({ "apidoc": "0.3.0", "generator": { "name": "apidoc", - "time": "2022-05-05T14:09:11.521Z", + "time": "2022-05-10T16:25:28.557Z", "url": "http://apidocjs.com", "version": "0.24.0" } diff --git a/apidoc/api_project.json b/apidoc/api_project.json index e338b15..3a20596 100644 --- a/apidoc/api_project.json +++ b/apidoc/api_project.json @@ -17,7 +17,7 @@ "apidoc": "0.3.0", "generator": { "name": "apidoc", - "time": "2022-05-05T14:09:11.521Z", + "time": "2022-05-10T16:25:28.557Z", "url": "http://apidocjs.com", "version": "0.24.0" } diff --git a/public/app/errors/404/i18n/bs.json b/public/app/errors/404/i18n/bs.json new file mode 100644 index 0000000..b061703 --- /dev/null +++ b/public/app/errors/404/i18n/bs.json @@ -0,0 +1,8 @@ +{ + "ERROR404": { + "CODE": "404", + "MESSAGE": "Sorry but we couldn’t find the page you are looking for", + "SEARCH": "Search for anything", + "GO_BACK": "Go back to dashboard" + } +} diff --git a/public/app/errors/500/i18n/bs.json b/public/app/errors/500/i18n/bs.json new file mode 100644 index 0000000..b218b70 --- /dev/null +++ b/public/app/errors/500/i18n/bs.json @@ -0,0 +1,11 @@ +{ + "ERROR500": { + "CODE": "500", + "MESSAGE": "Well, you broke the internet!", + "SUBMESSAGE": "Just kidding, looks like we have an internal issue, please try again in couple minutes", + "REPORT": "Report this problem", + "JIRA_MESSAGE": "Your request has been received and will be processed shortly.", + "JIRA_SUBMESSAGE": "Sorry for the inconvenience. If you have any questions or concerns, please do not hesitate to contact us.", + "GO_BACK": "Go back to dashboard" + } +} diff --git a/public/app/footer/i18n/bs.json b/public/app/footer/i18n/bs.json new file mode 100644 index 0000000..8a47415 --- /dev/null +++ b/public/app/footer/i18n/bs.json @@ -0,0 +1,6 @@ +{ + "FOOTER": { + "COOKIE_LAW": "We use cookies to give you the best experience. Read our cookie policy.", + "ERRORS": {} + } +} diff --git a/public/app/forgot/i18n/bs.json b/public/app/forgot/i18n/bs.json new file mode 100644 index 0000000..be7b81a --- /dev/null +++ b/public/app/forgot/i18n/bs.json @@ -0,0 +1,15 @@ +{ + "FORGOTPASSWORD": { + "TITLE": "Recover your password", + "EMAIL_ADRESS": "Email address", + "SEND_RESET_LINK": "SEND RESET LINK", + "GO_BACK": "Go back to login", + "LINK_SENT": "Link Sent", + "LINNK_SENT_MESSAGE": "An email containing a link to reset your password has been sent to your address!", + "PASSWORD_RESET_ERROR": "Password Reset Error", + "ERRORS": { + "EMAIL_REQUIRED": "Mandatory field", + "EMAIL_MUST_VALID": "Wrong format" + } + } +} diff --git a/public/app/header/i18n/bs.json b/public/app/header/i18n/bs.json new file mode 100644 index 0000000..f78785b --- /dev/null +++ b/public/app/header/i18n/bs.json @@ -0,0 +1,6 @@ +{ + "HEADER": { + "NEWS": "Please visit our Wiki to discover the new cool features available on XCALLY.", + "ERRORS": {} + } +} diff --git a/public/app/login/i18n/bs.json b/public/app/login/i18n/bs.json new file mode 100644 index 0000000..78f3f74 --- /dev/null +++ b/public/app/login/i18n/bs.json @@ -0,0 +1,26 @@ +{ + "LOGIN": { + "TELEPHONES": "Telephones", + "SELECT": "Select", + "CANCEL": "Cancel", + "TITLE": "Log in to your account", + "EMAIL": "Email", + "USERNAME": "Username", + "PASSWORD": "Password", + "REMEMBER_ME": "Remember Me", + "FORGOT_PASSWORD": "Forgot Password?", + "LOG_IN": "LOG IN", + "OR": "OR", + "WITH_GOOGLE": "Log in with Google", + "WITH_AD": "Log in with Active Directory", + "WITH_FACEBOOK": "Log in with Facebook", + "DONT_HAVE_ACCOUNT": "No account?", + "CREATE_ACCOUNT": "Create an account", + "ERRORS": { + "EMAIL_REQUIRED": "Mandatory field", + "EMAIL_MUST_VALID": "Wrong format", + "PASSWORD_REQUIRED": "Mandatory field", + "USERNAME_REQUIRED": "Mandatory field" + } + } +} diff --git a/public/app/main/apps/analytics/i18n/bs.json b/public/app/main/apps/analytics/i18n/bs.json new file mode 100644 index 0000000..71cf72f --- /dev/null +++ b/public/app/main/apps/analytics/i18n/bs.json @@ -0,0 +1,89 @@ +{ + "ANALYTICS": { + "SEND_IF_EMPTY": "Send if empty", + "REPORTNAME": "Report Name", + "DELETE": "Delete", + "NAME": "Name", + "ANALYTICS": "Analytics", + "METRICS": "Metrics", + "ID": "Id", + "TABLE": "Table", + "DESCRIPTION": "Description", + "SEARCH_FOR_ANYONE": "Search", + "METRIC": "Metric", + "ERRORS": { + "NAME_REQUIRED": "Mandatory field", + "METRIC_REQUIRED": "Mandatory field", + "COLUMN_REQUIRED": "Mandatory field", + "VALUE_REQUIRED": "Mandatory field", + "CUSTOM_METRIC_REQUIRED": "Mandatory field", + "ALIAS_REQUIRED": "Mandatory field" + }, + "NEW_METRIC": "New Metric", + "ADD_METRIC": "Add Metric", + "EDIT_METRIC": "Edit Metric", + "DELETE_METRIC": "Delete Metric", + "SAVE": "Save", + "BACK": "Back", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "TYPE": "Type", + "EXTRACTEDREPORTS": "Extracted Reports", + "DATE_RANGE_FROM": "Date Range From", + "DATE_RANGE_TO": "Date Range To", + "GENERATED_AT": "Generated At", + "STATUS": "Status", + "OUTPUT": "Output", + "REPORTS": "Reports", + "SEARCH_FOR_FOLDER": "Search for folder", + "CREATED_AT": "Created At", + "NEW_REPORT": "New Report", + "ADD_REPORT": "Add Report", + "COPY_REPORT": "Copy Report", + "PREVIEW_REPORT": "Preview Report", + "WEB_REPORT": "Web Report", + "RUN_REPORT": "Run Report", + "DOWNLOAD_JSON_REPORT": "Export Report JSON", + "EDIT_REPORT": "Edit Report", + "DELETE_REPORT": "Delete Report", + "CREATE": "Create Folder", + "RENAME": "Rename Folder", + "REMOVE": "Remove Folder", + "SELECT_NODE": "Select Folder", + "ERROR": "Error", + "QUERY_ERROR": "Query Error", + "MESSAGE": "Message", + "CLOSE": "Close", + "FORMAT": "Format", + "SETTINGS": "Settings", + "GENERAL": "General", + "FIELDS": "Fields", + "CONDITION": "Condition", + "OPERATOR": "Operator", + "GROUP": "Group", + "COLUMN": "Column", + "VALUE": "Value", + "PREVIEW": "Preview", + "LIMITED_RESULT": "*Limited Results", + "NO_DATA": "No data results", + "CONDITIONS": "Conditions", + "ALIAS": "Alias", + "FUNCTION": "Function", + "GROUP_BY": "Group By", + "ORDER_BY": "Order By", + "ADD_REPORTFIELD": "Add Field", + "EDIT_REPORTFIELD": "Edit Field", + "DELETE_REPORTFIELD": "Delete Field", + "METRIC_NAME": "Metric", + "NO_METRIC_FOUND": "No metric found", + "NO_AVAILABLE_INFO": "No available info", + "CUSTOM_METRIC": "Custom Metric", + "DELETE_EXTRACTEDREPORT": "Delete Extracted Report", + "EDIT_EXTRACTEDREPORT": "Edit Extracted Report", + "DOWNLOAD_EXTRACTEDREPORT": "Download Extracted Report", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of" + } +} diff --git a/public/app/main/apps/callysquare/i18n/bs.json b/public/app/main/apps/callysquare/i18n/bs.json new file mode 100644 index 0000000..22b9fef --- /dev/null +++ b/public/app/main/apps/callysquare/i18n/bs.json @@ -0,0 +1,244 @@ +{ + "CALLYSQUARE": { + "ACCOUNT_ID": "Account", + "ADDUSER_PROJECTS": "Add Users to Project", + "ADD_ODBC": "Add ODBC", + "ADD_PROJECT": "Add Project", + "ADD_VARIABLE": "Add Variable", + "AGENTS": "Agents", + "AGI": "AGI", + "ALL_USERS": "All Users", + "ANSWER": "Answer", + "APIKEY": "ApiKey", + "APPID": "App ID", + "APPLICATION": "Application", + "APPSECRET": "App Secret", + "ARGS": "Arguments", + "ATTACHMENT_NAME": "Attachment Name", + "ATTACHMENT_PATH": "Attachment Path", + "ATTACHMENT_TYPE": "Attachment Type", + "AUDIO": "Audio", + "AUDIOENCODING": "Audio Encoding", + "AWSLEX": "Amazon Lex", + "AWSPOLLY": "AWS Polly", + "AWS_ACCESS_KEY_ID": "Access Key ID", + "AWS_BOT_NAME": "Bot name", + "AWS_LEX_REGION": "Region", + "AWS_POLLY_REGION": "Region", + "AWS_POLLY_VOICE": "Voice", + "AWS_SECRET_ACCESS_KEY": "Secret Access Key", + "AWS_TEXT_TYPE": "Text type", + "BACK": "Back", + "BCC": "BCC", + "BEEP": "Beep", + "BODY": "Body", + "CALLBACK": "Callback", + "CALLBACK_PRIORITY": "Priority", + "CALLYSQUARE": "Cally Square", + "CC": "CC", + "CHOOSE_ATTACHMENT": "Choose Attachment", + "CLIENT_EMAIL": "Client Email", + "CLOSE": "Close", + "COMMAND": "Command", + "COMPUTEDVARIABLES": "Computed Variables Script Path", + "CONDITION": "Condition", + "CONTEXT": "Context", + "COPY": "Copy", + "COPY_PROJECT": "Copy Project", + "CREATED_AT": "Created At", + "CUSTOM_ACTION": "Custom Action", + "CUSTOM_ACTION_DATA": "Custom Action Data", + "CUSTOM_APP": "Custom Application", + "DATABASE": "Database", + "DELAY": "delay [min]", + "DELETE": "Delete", + "DELETE_ODBC": "Delete ODBC", + "DELETE_PROJECT": "Delete Project", + "DELETE_SQUARERECORDING": "Delete Square Recording", + "DESCRIPTION": "Description", + "DIAL": "Dial", + "DIALOGFLOW": "Dialogflow", + "DIALOGFLOWV2": "DialogflowV2", + "DIALOGFLOWV2_LANGUAGE": "Language", + "DIALOGFLOWV2_PROJECT_ID": "Project ID", + "DIALOGFLOW_LANGUAGE": "Language", + "DIALTIMEZONE": "Dial timezone", + "DIGIT": "Max Digits", + "DIGITS": "Digits", + "DOWNLOAD_SQUARERECORDING": "Download Square Recording", + "DROP_TO_UPLOAD": "DROP TO UPLOAD", + "DROP_TO_UPLOAD_MESSAGE": "You can also drop files here to upload. Only XML - Max. 5MB", + "DSN": "DSN", + "EDIT": "Edit", + "EDIT_ODBC": "Edit ODBC", + "EDIT_PROJECT": "Edit Project", + "EDIT_SQUARERECORDING": "Edit Square Recording", + "EDIT_XML": "Edit XML", + "END": "End", + "ERRORS": { + "DSN_REQUIRED": "Mandatory field", + "FIELD_REQUIRED": "Mandatory field", + "NAME_REQUIRED": "Mandatory field", + "PROJECT_REQUIRED": "Mandatory field", + "URL_REQUIRED": "Mandatory field" + }, + "ESCAPE_DIGITS": "Escape Digits", + "EXTEN": "Exten", + "EXTENSION": "Extension", + "EXT_DIAL": "External Dial", + "FILE": "Filename", + "FILENAME": "Filename", + "FILE_ID": "Audio", + "FINALLY": "Finally", + "FINDBY": "Find By", + "GETDIGITS": "Get Digits", + "GETSECRETDIGITS": "Get Secret Digits", + "GOAL": "Goal", + "GOALNAME": "Goal Name", + "GOOGLEASR": "GoogleASR", + "GOOGLE_ASR_LANGUAGE": "Language", + "GOOGLE_CLOUD_TTS": "Google Cloud TTS", + "GOOGLE_CLOUD_TTS_TEXT_TYPE": "Text Type", + "GOOGLE_TTS_LANGUAGE": "Language", + "GOSUB": "GoSub", + "GOTOC": "GoTo", + "GOTOIF": "GoToIf", + "GOTOIFTIME": "GoToIfTime", + "GO_TO_PROJECTS": "Go to projects", + "GRAMMAR": "Grammar", + "HANGUP": "Hangup", + "HEADERS": "Headers", + "HELP": { + "BCC": "You can add multiple addresses separated by commas (e.g. john.doe@xcally.com, jane.miller@xcally.com)", + "CC": "You can add multiple addresses separated by commas (e.g. john.doe@xcally.com, jane.miller@xcally.com)", + "DSN": "Example: DRIVER=MySQL;SERVER=127.0.0.1;UID=xcall;PWD=password;DATABASE=motion", + "MAILBOX": "mailbox@context", + "MAX_TEXT_TTS": "The maximum number of characters supported is 200", + "TO": "You can add multiple addresses separated by commas (e.g. john.doe@xcally.com, jane.miller@xcally.com)" + }, + "HIDDENDIGITSNUM": "Hiddden Digits Number", + "HIDDENDIGITSPOS": "hidden Digits Position", + "ID": "Id", + "IMPORT": "Import", + "IMPORT_XML": "Import XML", + "INTERVAL_ID": "Interval", + "INTKEY": "Interrupt Key", + "ISPEECHASR": "iSpeech ASR", + "ISPEECHTTS": "iSpeech Text-To-Speech", + "ISPEECH_ASR_LANGUAGE": "Language", + "ISPEECH_TTS_LANGUAGE": "Language", + "KEY": "Key", + "LABEL": "Label", + "LANGUAGECODE": "Language Code", + "LASTNAME": "Last Name", + "LIST_ID": "List", + "LOGIN": "Login", + "LOGOUT": "Logout", + "LUMENVOXASR": "Lumenvox ASR", + "LUMENVOXTTS": "Lumenvox Text-To-Speech", + "MACRO": "Macro", + "MAILBOX": "Mailbox", + "MATH": "Math", + "MAXDIGIT": "Maximum Digits", + "MENU": "Menu", + "METHOD": "Method", + "MINDIGIT": "Minimum Digits", + "MODEL": "Model", + "MRCPRECOG": "MRCPRecog", + "MRCPSYNTH": "MRCPSynth", + "NAME": "Name", + "NDAACTIVITY_TYPE": "Activity Type", + "NDAGENERATE_AUDIO": "Generate Audio File", + "NDASSISTANT_URL": "NDASSISTANT Url", + "NDAUTH_URL": "NDAUTH Url", + "NEW": "New", + "NEW_ODBC": "New ODBC connection", + "NEW_PROJECT": "New Project", + "NEW_VARIABLE": "New Variable", + "NOOP": "NoOp", + "NOTES": "Notes", + "NO_AVAILABLE_INFO": "No available info", + "NUMBER": "Number", + "ODBC": "ODBC", + "ODBC_ID": "ODBC Connection", + "OF": "of", + "OPEN": "Open", + "OPEN_NEW_WINDOW": "Open in a new window", + "OPEN_PROJECT": "Open Project", + "OPERATION": "Operation", + "OPTIONS": "Options", + "OPTS": "Options", + "OUTPUT": "Output", + "PAGE": "Page", + "PASSWORD": "Password", + "PAUSE": "Pause", + "PAUSE_ID": "Pause type", + "PERMISSIONADD_PROJECTS": "Add Users to Project", + "PHONE": "Phone", + "PLAYBACK": "Playback", + "POSITION": "Position", + "PRIORITY": "Priority", + "PRIVATE_KEY": "Private Key", + "PROJECT": "Project", + "PROJECTS": "Projects", + "PROJECT_ID": "Project", + "QUERY": "Query", + "QUEUE": "Queue", + "QUEUE_ID": "Queue", + "RAWBODY": "Body", + "RAWHEADERS": "Headers", + "RECORD": "Record", + "RECORDINGFORMAT": "Recording Format", + "RESPONSE": "Response Timeout", + "RESTAPI": "Rest API", + "RETRY": "Retries", + "ROWSPERPAGE": "Rows per page", + "SAVE": "Save", + "SAYDIGITS": "Say Digits", + "SAYNUMBER": "Say number", + "SAYPHONETIC": "Say Phonetics", + "SEARCH_FOR_ANYONE": "Search", + "SELECTED": "Selected", + "SELECTED_USERS": "Selected Users", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "SENDFAX": "Send Fax", + "SENDMAIL": "Send Email", + "SENDSMS": "Send SMS", + "SESTEKASR": "Sestek ASR", + "SESTEKNDA": "Sestek NDA", + "SESTEKTTS": "Sestek TTS", + "SET": "Set", + "SIP_ID": "SIP", + "SMS_ACCOUNT_ID": "Account", + "SMS_TEXT": "Text", + "SPEED": "Speed", + "SQUARERECORDINGS": "Recordings", + "SSMLGENDER": "Gender", + "START": "Start", + "SUBJECT": "Subject", + "SUBPROJECT": "Sub Project", + "SYSTEM": "System", + "TELEPHONES": "Telephones", + "TEMPLATE_ID": "Template", + "TEST_ODBC": "Test ODBC", + "TEXT": "Text", + "TILDEASR": "Tilde ASR", + "TIMEOUT": "Timeout", + "TO": "To", + "TRUNK_NAME": "Trunk", + "TTS": "Google Text-To-Speech", + "UNIQUEID": "Unique ID", + "UNPAUSE": "End Pause", + "UPDATE_DESCRIPTION": "Update Description", + "UPDATE_INFO": "Update Info", + "URI": "URI", + "URL": "URL", + "USERNAME": "Username", + "USERS": "Users", + "VARIABLE_ID": "Variable", + "VARIABLE_VALUE": "Value", + "VOICEMAIL": "Voicemail", + "VSWITCH": "Variable Switch" + } +} diff --git a/public/app/main/apps/chat/i18n/bs.json b/public/app/main/apps/chat/i18n/bs.json new file mode 100644 index 0000000..a8f7e5c --- /dev/null +++ b/public/app/main/apps/chat/i18n/bs.json @@ -0,0 +1,491 @@ +{ + "CHAT": { + "EDIT_DIALOGFLOWV2": "Edit Dialogflow V2", + "DIALOGFLOWV2": "Dialogflow V2", + "PRIVATEKEY": "Private Key", + "CLIENTEMAIL": "Client Email", + "PROJECTID": "Project ID", + "VIDAOOESCALATION": "Start Video Call", + "VIDAOOAPIKEY": "Vidaoo Api Key", + "VIDAOOSESSION": "Start Video Call", + "VIDAOOTOPIC": "Vidaoo Topic", + "VIDAOONOTE": "Vidaoo Note", + "VIDAOOMETADATA": "Vidaoo Metadata", + "VIDEO": "Video", + "VIDAOO": "Vidaoo", + "EDIT_AMAZONLEX": "Edit Amazon Lex", + "AMAZONLEX": "Amazon Lex", + "ACCESSKEYID": "Access Key ID", + "SECRETACCESSKEY": "Secret Access Key", + "LEXREGION": "Region", + "BOTNAME": "Bot Name", + "LOGIN_TIME": "Login time", + "PAUSE_TIME": "Pause time", + "DOWNLOAD_INTERACTION": "Download", + "ENABLECUSTOMERCHECKMARKS": "Enable customer delivered/read notifications", + "TRANSFER": "Transfer", + "QUEUETRANSFER": "Queue Transfer", + "QUEUETRANSFERTIMEOUT": "Queue Transfer Timeout", + "AGENTTRANSFER": "Agent Transfer", + "AGENTTRANSFERTIMEOUT": "Agent Transfer Timeout", + "SYSTEMAVATAR": "System Avatar", + "SYSTEMALIAS": "System Alias", + "OPEN_NEW_INTERACTION": "Open new interaction", + "EMAIL_ACCOUNT": "Email account", + "SUBJECT": "Subject", + "WELCOMEMESSAGE": "Welcome Message", + "LANGUAGE": "Language", + "EDIT_DIALOGFLOW": "Edit Dialogflow", + "DIALOGFLOW": "Dialogflow", + "BACKGROUNDCOLOR": "Background Color", + "MESSAGEFONTSIZE": "Message Font Size", + "ADD_NOTE": "Add note", + "NOTE": "Note", + "TAG": "Tag", + "EDIT_TAG": "Edit Tag", + "CUSTOMERALIAS": "Customer Alias", + "SNIPPETSWIPEOUT": "Snippet swipe out", + "CUSTOMERAVATAR": "Customer Avatar", + "SHOWCUSTOMERAVATAR": "Show customer avatar", + "CANNED_ANSWER_NOT_FOUND": "No Canned Answers were found", + "DEFAULTTITLE": "Default Title", + "MESSAGESALIGNMENT": "Messages Alignment", + "ALTERNATE": "Alternate", + "CENTERED": "Centered", + "POSITION": "Position", + "VERTICALPOSITION": "Vertical position", + "ALIGNMENT": "Alignment", + "VERTICALALIGNMENT": "Vertical alignment", + "BOTTOM_RIGHT": "Bottom right", + "RIGHT": "Right", + "LEFT": "Left", + "WAITFORTHEASSIGNEDAGENT": "Wait for the assigned agent", + "AGENTIDENTIFIER": "Identifier", + "WEBSITEALIAS": "Website Alias", + "AGENTALIAS": "Agent Alias", + "AGENTFULLNAME": "Agent Fullname", + "INSERT_MESSAGE_HERE": "Insert your text message here", + "HIDEWHENOFFLINE": "Hide", + "NOTIFICATION": "Notification", + "NOTIFICATIONSOUND": "Sound", + "NOTIFICATIONSHAKE": "Shake", + "NOTIFICATIONTEMPLATE": "Template", + "SYSTEM": "System", + "EDIT_SYSTEM": "Edit System", + "COMMAND": "Command", + "TEXTCOLOR": "Text Color", + "TEXT_BUTTON_COLOR": "Text Button Color", + "FONTSIZE": "Font Size", + "WEBSCRIPT": "Web Script", + "CANNEDANSWERS": "Canned Answers", + "CHATCANNEDANSWERS": "Canned Answers", + "NO_CHATCANNEDANSWER_AVAILABLE": "No Canned Answers Available", + "NEW_CHATCANNEDANSWER": "New Canned Answer", + "ADD_CHATCANNEDANSWER": "Add Canned Answer", + "EDIT_CHATCANNEDANSWER": "Edit", + "DELETE_CHATCANNEDANSWER": "Delete", + "OFFLINEMESSAGESUBJECT": "Message subject", + "OFFLINEMESSAGEBODY": "Message body", + "FORMSUBMITSUCCESSMESSAGE": "Form submit success message", + "FORMSUBMITFAILUREMESSAGE": "Form submit failure message", + "PLACEHOLDERMESSAGE": "Message placeholder", + "NOTETITLE": "Note's title", + "CLOSINGQUESTION": "Closing question", + "TAGS": "Tags", + "SHOWAGENTAVATAR": "Show personal agent avatar", + "AGENTAVATAR": "Agent Avatar", + "SPYINTERACTION": "Spy", + "NO_AGENT_ONLINE": "No Agent Online", + "GOTOREALTIME_CHATQUEUE": "Go To Realtime Chat Queue", + "PARTIALPAUSE": "Partial Pause", + "BUSY": "Busy", + "TIMER": "Timer", + "IDLE": "Idle", + "CAPACITY": "Capacity", + "AGENTSADD_QUEUE": "Add Agent to Chat Queue", + "QUEUES": "Queues", + "LOGGED_IN": "Logged in", + "PAUSED": "Paused", + "READY": "Ready", + "WAITING": "Waiting", + "WRITING": "Writing", + "CHAT": "Chat", + "MAIL": "Email", + "SMS": "SMS", + "OPENCHANNEL": "Openchannel", + "FAX": "Fax", + "PAUSE": "Pause", + "REALTIME": "Realtime", + "AGENTS": "Agents", + "FULLNAME": "Full Name", + "INTERNAL": "Internal", + "PHONE_STATE": "Phone State", + "PHONE_STATUS": "Phone Status", + "LOGOUT": "Logout", + "UNPAUSE": "End Pause", + "AGENTADD_QUEUE": "Add Agent to Chat Queue", + "TEXT": "Text", + "TIMES": "Number of times per interaction", + "EDIT_AUTOREPLY": "Edit Auto Reply", + "AUTOREPLY": "Auto Reply", + "NEW_CHATDISPOSITION": "New Chat Disposition", + "ENABLECUSTOMERATTACHMENT": "Enable Customer Attachments", + "ENABLESENDBUTTON": "Enable Send Button", + "OFFLINE_CHAT_BUTTON": "'Offline Chat' Button", + "OFFLINESTATUS": "Offline Status", + "NAME": "Name", + "CHATQUEUES": "Chat Queues", + "SEARCH_FOR_ANYONE": "Search", + "STRATEGY": "Strategy", + "AGENT_TIMEOUT": "Agent Timeout", + "DESCRIPTION": "Description", + "KEY": "Key", + "ALIAS": "Alias", + "VARIABLE": "Variable", + "INTERVAL": "Interval", + "EDIT_CLOSE": "Edit Close", + "TIMEZONE": "Timezone", + "MESSAGE": "Message", + "ADVANCED": "Advanced", + "FORWARDTRANSCRIPT": "Forward Transcript", + "FORWARDTRANSCRIPTMESSAGE": "Forward Transcript Message", + "SKIPMESSAGEBUTTON": "Skip Message Button", + "EDIT_MESSAGE": "Edit Message", + "CONDITION_AGREEMENT": "Condition Agreement", + "NONE": "None", + "PRIORITY": "Priority", + "ONLINESTATUS": "Online Status", + "UNMANAGEDSTATUS": "Unmanaged Status", + "AUTOCLOSE": "Enable Autoclose", + "ENABLEUNMANAGEDNOTE": "Enable Unmanaged Message", + "UNMANAGEDMESSAGE": "Message", + "SKIPUNMANAGED": "Skip Message", + "SENDUNMANAGED": "Send Message", + "WEBSITESCRIPT": "Website Script", + "DELETE_OFFLINEMESSAGE": "Delete", + "OFFLINEMESSAGES": "Offline Messages", + "FORWARD_OFFLINE": "Forward Offline", + "SHOW_OFFLINEMESSAGE": "Show", + "FORWARD_OFFLINE_ADDRESS": "Forward Offline Address", + "CLOSINGFORM": "Closing Form", + "ENABLERATING": "Enable Rating", + "ENABLECUSTOMERWRITING": "Allow customer writing before agent accepting", + "ENABLEFEEDBACK": "Enable Feedback", + "FEEDBACKTITLE": "Feedback Title", + "RATINGTYPE": "Rating Type", + "CLOSINGMESSAGE": "Closing Message", + "CLOSINGMESSAGEBUTTON": "Closing Message Button", + "RATINGSTARSNUMBER": "Rating Stars Number", + "EDIT_GOTOIF": "Edit GotoIf", + "CONDITION": "Condition", + "TRUEPRIORITY": "True Priority", + "FALSEPRIORITY": "False Priority", + "VALUE": "Value", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause to use if mandatory disposition is enabled", + "SERVICEID": "Service ID", + "CHANNELID": "Channel ID", + "EDIT_TVOX": "Edit TVox", + "SERVICENAME": "Service name", + "TVOX": "TVox", + "TVOXURL": "TVox IP URL", + "TVOXIP": "TVox IP Address", + "TVOXUSERNAME": "TVox Username", + "TVOXPASSWD": "TVox Password", + "TVOXLOGINURL": "TVox Login REST Url", + "TVOXSESSIONURL": "TVox Session REST Url", + "MOTIONURLONRING": "Motion URL On Ring", + "MOTIONURLONANSWER": "Motion URL On Answer", + "MOTIONTITLE": "Motion Title", + "MOTIONURL": "Motion URL", + "ERRORS": { + "PROJECTID_REQUIRED": "Mandatory Field", + "CLIENTEMAIL_REQUIRED": "Mandatory Field", + "PRIVATEKEY_REQUIRED": "Mandatory Field", + "VIDAOOAPIKEY_REQUIRED": "Mandatory Field", + "VIDAOOTOPIC_REQUIRED": "Mandatory Field", + "BOTNAME_REQUIRED": "Mandatory Field", + "SECRETACCESSKEY_REQUIRED": "Mandatory Field", + "ACCESSKEYID_REQUIRED": "Mandatory Field", + "QUEUETRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "QUEUETRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "QUEUETRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "AGENTTRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENTTRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AGENTTRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "CUSTOMERALIAS_REQUIRED": "Mandatory Field", + "AGENTALIAS_REQUIRED": "Mandatory Field", + "SYSTEMALIAS_REQUIRED": "Mandatory Field", + "MESSAGEFONTSIZE_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "MESSAGEFONTSIZE_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MESSAGEFONTSIZE_REQUIRED": "Mandatory Field", + "TAG_REQUIRED": "Mandatory Field", + "VERTICALPOSITION_REQUIRED": "Mandatory Field", + "VERTICALPOSITION_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "VERTICALPOSITION_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "WAITFORTHEASSIGNEDAGENT_REQUIRED": "Mandatory Field", + "AGENT_TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENT_TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "NAME_MUST_VALID_PATTERN": "Wrong format", + "COMMAND_REQUIRED": "Mandatory Field", + "FONTSIZE_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "FONTSIZE_REQUIRED": "Mandatory Field", + "TEXT_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "VALUE_REQUIRED": "Mandatory Field", + "CUSTOMERALIAS_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "SYSTEMALIAS_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "OFFLINEMESSAGESUBJECT_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "OFFLINEMESSAGEBODY_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "PLACEHOLDERMESSAGE_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "NOTETITLE_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "FORMSUBMITSUCCESSMESSAGE_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "FORMSUBMITFAILUREMESSAGE_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "CLOSINGQUESTION_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "HEADER_OFFLINE_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "OFFLINE_CHAT_BUTTON_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "TEXT_REQUIRED": "Mandatory Field", + "SENDUNMANAGED_REQUIRED": "Mandatory Field", + "SENDUNMANAGED_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "SKIPUNMANAGED_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "UNMANAGEDMESSAGE_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "WEBSITEALIAS_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "AGENT_REQUIRED": "Mandatory Field", + "QUEUE_REQUIRED": "Mandatory Field", + "CONDITION_REQUIRED": "Mandatory Field", + "PRIORITY_REQUIRED": "Mandatory Field", + "TRUEPRIORITY_REQUIRED": "Mandatory Field", + "FALSEPRIORITY_REQUIRED": "Mandatory Field", + "NAME_REQUIRED": "Mandatory Field", + "LIST_REQUIRED": "Mandatory Field", + "AGENT_TIMEOUT_REQUIRED": "Mandatory Field", + "MOTIONADDRESS_REQUIRED": "Mandatory Field", + "DISPOSITION_REQUIRED": "Mandatory Field", + "MOTIONADDRESS_MUST_VALID_URL": "Wrong format", + "EMAIL_MUST_BE_VALID": "Wrong format", + "ADDRESS_REQUIRED": "Mandatory Field", + "ADDRESS_MUST_VALID_URL": "Wrong format", + "ENQUIRY_FORWARDING_ADDRESS_REQUIRED": "Mandatory Field", + "ACCEPTURL_MUST_VALID_URL": "Wrong format", + "TIMEOUT_REQUIRED": "Mandatory Field", + "REJECTURL_MUST_VALID_URL": "Wrong format", + "CLOSEURL_MUST_VALID_URL": "Wrong format", + "PRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": " The value must be greater than or equal to", + "TRUEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": " The value must be greater than or equal to", + "FALSEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": " The value must be greater than or equal to", + "TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": " The value must be greater than or equal to", + "POLLING_INTERVAL_MUST_BE_GREATER_THAN_OR_EQUAL_TO": " The value must be greater than or equal to", + "WAITINGMESSAGE_REQUIRED": "Mandatory Field", + "WAITINGTITLE_REQUIRED": "Mandatory Field", + "KEY_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "KEY_REQUIRED": "Mandatory Field", + "WAITINGMESSAGE_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "WAITINGTITLE_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "RATINGSTARSNUMBER_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "MANDATORYDISPOSITIONPAUSEID_REQUIRED": "Mandatory field", + "EMAIL_ACCOUNT_REQUIRED": "Mandatory field" + }, + "CM_FIELD": "Contact Manager Field", + "CHATPROACTIVEACTIONS": "Proactive Actions", + "NEW_CHATPROACTIVEACTION": "New Proactive Action", + "EDIT_CHATPROACTIVEACTION": "Edit Proactive Action", + "DELETE_CHATPROACTIVEACTION": "Delete Proactive Action", + "ADD_CHATPROACTIVEACTION": "Add Proactive Action", + "NO_CHATPROACTIVEACTION_AVAILABLE": "No Proactive Actions Available", + "NO_OFFLINEMESSAGE_AVAILABLE": "No Offline Messages Available", + "MOUSEOVER": "Mouse Over", + "TIMEOUT": "Timeout", + "TYPE": "Type", + "SELECTOR": "Selector", + "AGENT": "Agent", + "GOTO": "Goto", + "GOTOIF": "GotoIf", + "NOOP": "Noop", + "QUEUE": "Queue", + "BUILDER": "Builder", + "PREVIEW": "Preview", + "EDIT_AGENT": "Edit Agent", + "EDIT_QUEUE": "Edit Queue", + "EDIT_GOTO": "Edit Goto", + "EDIT_GOTOIf": "Edit GotoIf", + "EDIT_NOOP": "Edit Noop", + "ADD_CHATQUEUE": "Add Chat Queue", + "EDIT_CHATQUEUE": "Edit Chat Queue", + "DELETE_CHATQUEUE": "Delete Chat Queue", + "SETTINGS": "Settings", + "SAVE": "Save", + "SCRIPT": "Script", + "TOKEN": "Token", + "CREATED_AT": "Created At", + "CHATWEBSITES": "Chat Websites", + "MOTIONADDRESS": "Website Domain", + "MOTIONPROXY": "Proxy Or Motion Domain", + "ADD_CHATWEBSITE": "Add Chat Website", + "EDIT_CHATWEBSITE": "Edit Chat Website", + "DELETE_CHATWEBSITE": "Delete Chat Website", + "LIST": "List", + "SNIPPET": "Snippet", + "FORMS": "Forms", + "UP": "Up", + "DOWN": "Down", + "COLLAPSE": "Collapse", + "PROACTIVEACTIONS": "Proactive Actions", + "DISPOSITIONS": "Dispositions", + "WEBHOOKS": "WebHooks", + "ACTIONS": "Actions", + "FIDELITY": "Fidelity", + "APPEARANCE": "Appearance", + "MAINCOLOR": "Main Color", + "FOCUSCOLOR": "Focus Color", + "BUTTONCOLOR": "Button Color", + "HEADERSHAPE": "Header Shape", + "ANIMATION": "Animation", + "DEFAULT": "Default", + "WHITELABEL": "White Label", + "LOGO": "Logo", + "DOWNLOADTRANSCRIPT": "Download Transcript", + "ENQUIRY_ENABLE": "Enquiry Enable", + "ENQUIRY_FORWARDING": "Enquiry Forwarding", + "ENQUIRY_FORWARDING_ADDRESS": "Enquiry Forwarding Address", + "LABELS": "Labels", + "HEADER_ONLINE": "Online Header", + "ONLINE_MESSAGE": "Online Message", + "NAME_TITLE": "Name Input Label", + "USERNAME_PLACEHOLDER": "Username Input Placeholder", + "EMAIL_TITLE": "Email Input Label", + "EMAIL_PLACEHOLDER": "Email Input Placeholder", + "START_CHAT_BUTTON": "'Start Chat' Button", + "AGENTS_BUSY": "Busy Agents Message", + "HEADER_OFFLINE": "Offline Header", + "OFFLINE_MESSAGE": "Offline Message", + "MESSAGE_TITLE": "Message Label", + "ENQUIRY_MESSAGE_PLACEHOLDER": "Enquiry Message Input Placeholder", + "ENQUIRY_BUTTON": "Enquiry Button Text", + "RATING_MESSAGE": "Rating Message", + "RATING_SEND": "Rating Send Button Text", + "RATING_SKIP": "Rating Skip Button Text", + "ONLINE": "Online", + "OFFLINE": "Offline", + "PROACTIVE": "Proactive", + "ACCEPT": "Accept", + "ACCEPTMETHOD": "Accept Method", + "ACCEPTURL": "Accept URL", + "REJECT": "Reject", + "REJECTMETHOD": "Reject Method", + "REJECTURL": "Reject URL", + "CLOSE": "Close", + "CLOSEMETHOD": "Close Method", + "CLOSEURL": "Close URL", + "EMBEDDING": "Embedding", + "GENERAL": "General", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "BACK": "Back", + "HELP": { + "VERTICALPOSITION": "Represents the distance in percentage from top", + "AGENTIDENTIFIER": "Represents the agent identifier within the chat session in the snippet", + "HIDEWHENOFFLINE": "Hides snippet when offline", + "KEY": "Website short name (5 char) shown on the Agent Tab", + "TOKEN": "Automatically generated token used in the Script", + "INTEVAL": "To be selected from the list of the available intervals", + "TIMEZONE": "Select one from the list (default=local timezone)", + "ENABLERATING": "Enable it if you want the web visitor can rate the interaction at the end", + "ENABLEFEEDBACK": "Enable it if you want the web visitor can send a feedback (up to 150 char) at the end", + "FORWARDTRANSCRIPT": "Enable it if you want the web visitor is asked to receive a chat transcript via email", + "AUTOCLOSE": "Enable it if you want chat sessions to be closed as Unmanaged if no agent is available. Learn more about it at: https://wiki.xcallymotion.com/display/XMV/Chat+Websites#ChatWebsites-Snippet", + "ENABLEUNMANAGEDNOTE": "Enable it if you want the visitor is shown a message when all the agents are busy and the chat gets unmanaged", + "WEBSITEALIAS": "A prefix used to compose the agent name (prefix+Agent Id) shown to the web visitor during the chat session", + "ENABLECUSTOMERWRITING": " Enable it if you want the chat starts without waiting for an available agent (pay attention: if you enable it, your chats will never get unmanaged). Learn more at: https://wiki.xcallymotion.com/display/XMV/Chat+Websites#ChatWebsites-Snippet", + "MAPKEY": "The following Motion Contact Manager field:", + "FROMKEY": "Will be mapped in your Motion Chat Snippet as:", + "COPYSCRIPTTOCLIPBOARD": "Copy and paste the script text into your website", + "FORWARD_OFFLINE": "You can add multiple addresses separated by commas (e.g. john.doe@xcally.com, jane.miller@xcally.com)", + "MOTIONADDRESS": "The field must have the following format: ://[:]. Example: https://X.Y.Z.W", + "MOTIONPROXY": "The field must have the following format: ://[:]. Example: https://X.Y.Z.W", + "NAME": "Only numbers, letters and specific characters (._) are supported", + "LIST": "Contact Manager list used to associate Contacts", + "INTERVAL": "Select one from the list", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause to use if mandatory disposition is enabled", + "WELCOMEMESSAGE": "Leave empty if you don't want to send any welcome message" + }, + "ADDRESS": "Address", + "ONLINESTATE": "Online Status", + "OFFLINESTATE": "Offline Status", + "RATINGSTATE": "Rating State", + "ENQUIRY": "Enquiry", + "OFFLINETEMPLATE": "Offline Template", + "CHATDISPOSITIONS": "Chat Dispositions", + "NO_CHATDISPOSITION_AVAILABLE": "No Chat Dispositions available", + "ADD_CHATDISPOSITION": "Add Chat Disposition", + "DELETE": "Delete", + "EDIT_CHATDISPOSITION": "Edit Chat Disposition", + "DELETE_CHATDISPOSITION": "Delete Chat Disposition", + "ID": "Id", + "NEW_CHATQUEUE": "New Chat Queue", + "NEW_CHATWEBSITE": "New Chat Website", + "ROUNDED": "Rounded", + "SQUARED": "Squared", + "NO_AVAILABLE_INFO": "No available info", + "ALL_TEAMS": "All Teams", + "SELECTED_TEAMS": "Selected Teams", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "CONTACT": "Contact", + "STARTEDAT": "Started At", + "LASTMESSAGE": "Last message", + "STATUS": "Status", + "CLOSED": "Closed", + "OPENED": "Open", + "OPEN": "Open", + "ACCOUNT": "Account", + "INTERACTION": "Interaction", + "INTERACTIONS": "Interactions", + "WEBSITE": "Website", + "ALL": "All", + "SELECT_STATUS": "Select a status", + "FILTER": "Filter", + "FILTERS": "Filters", + "TEAMADD_CHATQUEUE": "Add Team to Chat Queue", + "AGENTADD_CHATQUEUE": "Add Agent to Chat Queue", + "ALL_AGENTS": "All Agents", + "SELECTED_AGENTS": "Selected Agents", + "CLOSEDAT": "Closed At", + "DISPOSITION": "Disposition", + "CREATEDAT": "Created At", + "NOTES": "Notes", + "NO_INTERACTION_AVAILABLE": "No interactions available", + "SELECTED_WEBSITE": "Select a website", + "GOTOP": "Gotop", + "EDIT_GOTOP": "Edit Gotop", + "SELECT_WEBSITE": "Select a website", + "INFO": "Info", + "OFFLINEMESSAGES_CHATWEBSITE": "Go to Offline Messages", + "WAITINGTITLE": "Waiting Title", + "WAITINGMESSAGE": "Waiting Message", + "RATING": "Rating", + "NO_RATINGVALUE": "No Rating", + "DEFAULT_PAUSE": "Default pause", + "UNKNOWN": "Unknown", + "UNREGISTERED": "Unregistered", + "UNAVAILABLE": "Unavailable", + "NOT_INUSE": "Not in use", + "REACHABLE": "Reachable", + "IN_USE": "In use", + "VOICE": "Voice", + "INTERACTIONS_CHATWEBSITE": "Go to Interactions", + "REFRESH_INTERACTIONS": "Refresh Interactions", + "DELETE_INTERACTION": "Delete Interaction", + "AGENTADD_CHATWEBSITE": "Add Agent to Chat Website", + "TEAMS_ASSOCIATION": "Teams Association", + "TOOLTIP_SCREENRECORDING_ON": "Screen Recording in progress", + "TOOLTIP_SCREENRECORDING_OFF": "Screen Recording available", + "DOWNLOAD_WITH_ATTACHMENTS": "Download with attachments", + "DOWNLOAD_WITHOUT_ATTACHMENTS": "Download without attachments", + "LABELTEXT": "Label text" + } +} diff --git a/public/app/main/apps/contactmanager/i18n/bs.json b/public/app/main/apps/contactmanager/i18n/bs.json new file mode 100644 index 0000000..b700161 --- /dev/null +++ b/public/app/main/apps/contactmanager/i18n/bs.json @@ -0,0 +1,200 @@ +{ + "CONTACTMANAGER": { + "SELECT_TAG": "Select tags", + "CUSTOMER_JOURNEY": "Customer Journey", + "USERID": "Recall Agent ID", + "PRIORITY": "Priority", + "MOTIONDIALER": "Motion Bull", + "IMPORT_CONTACTS": "Import Contacts", + "PREFIX": "Dial Prefix", + "VOICEQUEUEID": "VoiceQueue ID", + "CAMPAIGNID": "Campaign ID", + "STATE": "State", + "NAME": "Name", + "LISTS": "Lists", + "UNIQUEID": "Unique Id", + "STATUS": "Status", + "STARTTIME": "Start Time", + "ENDTIME": "End Time", + "MOTION_BULL": "Motion Bull", + "MOVE_DOWN": "Move down", + "MOVE_UP": "Move up", + "HOPPER": "Hopper", + "FINAL": "Hopper Final", + "HISTORY": "Hopper History", + "SCHEDULEDAT": "Scheduled At", + "DIALTIMEZONE": "Dial Timezone", + "TIMEZONE": "Dial Timezone", + "SEARCH_FOR_ANYONE": "Search", + "EDIT_LIST": "Edit List", + "EDIT_HOPPER": "Edit Hopper", + "DELETE_LIST": "Delete List", + "DELETE_HOPPER": "Delete Hopper", + "RELOAD": "Reload", + "ADDITIONAL_PHONES": "Additional phones", + "NO_COMPANIES": "No Company", + "NO_AVAILABLE_ITEMS": "No Available Items", + "ADD": "Add", + "UPDATE_EXISTING_CONTACTS": "Update existing contacts", + "ERRORS": { + "NAME_REQUIRED": "Mandatory field", + "FIRSTNAME_REQUIRED": "Mandatory field", + "PHONE_REQUIRED": "Mandatory field", + "ALIAS_REQUIRED": "Mandatory field", + "VALUE_REQUIRED": "Mandatory field", + "CLICKTOACTION_REQUIRED": "Mandatory field", + "ACTIONTYPE_REQUIRED": "Mandatory field", + "EMAIL_MUST_VALID": "Wrong format", + "PHONEBAR_API": "Check the MotionBar is running and the remote control switch for the agent is turned on" + }, + "DESCRIPTION": "Description", + "DISPOSITION": "Disposition", + "DISPOSITIONS": "Dispositions", + "VOICEDISPOSITIONS": "Voice Dispositions", + "NEW_VOICEDISPOSITION": "New Voice Disposition", + "CUSTOM_FIELDS": "Custom Fields", + "ADD_LIST": "Add List", + "BACK": "Back", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "COMPANIES": "Companies", + "EDIT_COMPANY": "Edit Company", + "DELETE_COMPANY": "Delete Company", + "PHONE": "Phone", + "EMAIL": "Email", + "ADD_COMPANY": "Add Company", + "CONTACTS": "Contacts", + "NEW_LIST": "New List", + "FIRSTNAME": "First Name", + "LASTNAME": "Last Name", + "LIST": "List", + "COMPANY": "Company", + "ADD_CONTACT": "Add Contact", + "EDIT_CONTACT": "Edit Contact", + "MERGE_CONTACT": "Merge Contact", + "DUPLICATE_CONTACT": "Duplicate Contact", + "DELETE_CONTACT": "Delete Contact", + "CREATED_AT": "Created At", + "SAVE": "Save", + "DETAIL": "Detail", + "PERSONAL_INFO": "Personal Info", + "MOBILE": "Mobile", + "FAX": "Fax", + "TAGS": "Tags", + "SHOW_ALL_FIELDS": "Show all fields", + "FEWER_FIELDS": "Show less fields", + "COUNTRY": "Country", + "CITY": "City", + "STREET": "Street", + "POSTALCODE": "Postal Code", + "DELETE": "Delete", + "DELETE_ALL": "Delete All", + "CONTACTMANAGER": "Contacts Manager", + "ID": "Id", + "SETTINGS": "Settings", + "GENERAL": "General", + "CUSTOMFIELDS": "Custom Fields", + "NO_CUSTOMFIELD_AVAILABLE": "No Custom Fields available", + "ADD_TAG": "Add Tag", + "NO_TAG": "No Tags", + "ALIAS": "Alias", + "CLICKTOACTION": "Click to action", + "ACTIONTYPE": "Action type", + "TYPE": "Type", + "VALUE": "Value", + "ADD_CUSTOMFIELD": "Add Custom Field", + "EDIT_CUSTOMFIELD": "Edit Custom Field", + "DELETE_CUSTOMFIELD": "Delete Custom Field", + "NEW_COMPANY": "New Company", + "NEW_CONTACT": "New Contact", + "NEW_TAG": "New Tag", + "UPLOAD_CONTACTS": "Upload Contacts", + "FINISH": "Finish", + "SUCCESS": "Success", + "FAILURE": "Failure", + "ALL_CONTACTS": "All Contacts", + "NEW_CUSTOMFIELD": "New Custom Field", + "NO_VOICEDISPOSITION_AVAILABLE": "No Voice Dispositions available", + "ADD_VOICEDISPOSITION": "Add Voice Disposition", + "EDIT_VOICEDISPOSITION": "Edit Voice Disposition", + "DELETE_VOICEDISPOSITION": "Delete Voice Disposition", + "VAT": "VAT", + "COMPANYID": "Company ID", + "WEBSITE": "Website", + "EMAIL_DOMAIN": "Email Domain", + "ADDRESS": "Address", + "POSTAL_CODE": "Postal Code", + "SHIPMENTADDRESS": "Shipment Address", + "COPY_CONTACT": "Copy Contact", + "GOTOCONTACTS_LIST": "Show Contacts", + "GOTOCONTACTS_COMPANY": "Show Contacts", + "ADD_AGENT_TO_LIST": "Add Agent to List", + "AGENTADD_LIST": "Add Agents to List", + "NO_AVAILABLE_INFO": "No available info", + "NONE": "None", + "ALL": "All", + "FULLNAME": "Full Name", + "CHECK_DUPLICATES": "Check Duplicates", + "DUPLICATES": "Duplicates", + "UPLOAD_CSV": "Upload CSV", + "TAG": "Tag", + "UPLOAD": "Upload", + "ALL_AGENTS": "All Agents", + "SELECTED_AGENTS": "Selected Agents", + "DATE_OF_BIRTH": "Birthdate", + "DATEOFBIRTH": "Birthdate", + "NOTES": "Notes", + "EXPORTCSVCONTACTS_LIST": "Export to CSV", + "GOTO_LIST": "Show Contacts", + "GOTO_COMPANY": "Show Contacts", + "REQUIRED": "Required", + "GLOBALCUSTOMFIELDS": "Global Custom Fields", + "NEW_GLOBALCUSTOMFIELD": "New Custom Fields", + "ADD_GLOBALCUSTOMFIELD": "Add Custom Field", + "EDIT_GLOBALCUSTOMFIELD": "Edit Custom Field", + "DELETE_GLOBALCUSTOMFIELD": "Delete Custom Field", + "JSCRIPTY": "Jscripty", + "SESSIONS": "Sessions", + "AGENT": "Agent", + "PROJECT": "Project", + "SELECT_LIST": "Select a list", + "SELECT_COMPANY": "Select a company", + "SELECT_TAGS": "Select one or more tags", + "HELP": { + "PHONEBAR_API_MESSAGE": "To enable click-to-call, insert a phone number and check the remote control switch for the Agent is turned on", + "PHONEBAR_API": "To enable click-to-call, insert a phone number and check the remote control switch for the Agent is turned on" + }, + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "SOCIAL": "Social", + "ROW": "Row", + "EXPORT_ERRORS": "Export Errors", + "UPLOAD_COMPLETED": "Upload Completed", + "STOP": "Stop", + "SELECT_FILE": "Select File", + "BILLINGINFORMATION": "Billing Information", + "FLATDISCOUNT": "Company Discount", + "EUROPE": "Europe", + "ISOCODE": "ISO National Code", + "VATNUMBER_CF": "Codice Fiscale/VAT", + "PIVA": "VAT Number", + "SDICODE": "SDI Code", + "EXPIREDAY": "Expiration Days", + "INVOICEARTICLE": "Law Articles", + "PAYMENTMETHOD": "Payment Method", + "SOCIAL_CAPITAL": "Share Capital", + "COMPANY_FISCAL_TYPE": "Company Fiscal Type", + "RELATIONSHIP": "Relationship ...", + "RELATIONSHIPCOMPANY": " ... with", + "CREATE": "Create", + "RECALLME": "Recall Me", + "NOTIFICATIONS": { + "NO_DATA_ERROR": "Unable to retrieve any data", + "INTERACTION_OPEN_ERROR": "Unable to open the interaction", + "ACCOUNTS_GET_ERROR": "Unable to retrieve any {{channel}} account", + "JSCRIPTY_GET_ERROR": "Unable to retrieve any Jscripty project" + } + } +} diff --git a/public/app/main/apps/dashboards/i18n/bs.json b/public/app/main/apps/dashboards/i18n/bs.json new file mode 100644 index 0000000..3169c3f --- /dev/null +++ b/public/app/main/apps/dashboards/i18n/bs.json @@ -0,0 +1,594 @@ +{ + "DASHBOARDS": { + "VISIBILITY": "Visibility", + "PUBLIC": "Public", + "PRIVATE": "Private", + "PUBLIC_INTERACTION": "The interaction is public", + "LOST_CONNECTION": "Experiencing network connectivity issues. Please check your internet connection.", + "SCHEDULED_CALLS": "Scheduled Calls", + "DOWNLOAD": "Download", + "DOWNLOAD_WITH_ATTACHMENTS": "Download with attachments", + "DOWNLOAD_WITHOUT_ATTACHMENTS": "Download without attachments", + "UNMANAGED_RATE": "Unmanaged Rate", + "UPCOMING_RECALLME_CALL": "Upcoming Recall Me call", + "RECALLME_CALL_REMINDER": "Recall Me call reminder", + "CONTACT_NAME": "Contact Name", + "CONTACT_PHONE": "Contact Phone", + "SCHEDULED_TIME": "Scheduled time", + "LIST_NAME": "List name", + "UNMANAGED_RATE_TEXT": "Interactions Unmanaged Rate", + "VOICE_WAITING": "WAITING", + "VOICE_WAITING_TEXT": "WAITING QUEUE CALLS", + "VOICE_TALKING": "TALKING", + "VOICE_TALKING_TEXT": "ACTIVE QUEUE CALLS", + "VOICE_ANSWERED": "ANSWERED", + "VOICE_ANSWERED_TEXT": "ANSWERED QUEUE CALLS", + "VOICE_ABANDONED": "ABANDONED", + "VOICE_ABANDONED_TEXT": "ABANDONED QUEUE CALLS", + "VOICE_TOTAL_OFFERED": "TOTAL OFFERED", + "VOICE_TOTAL_OFFERED_TEXT": "TOTAL QUEUE CALLS", + "TODAY_INTERACTIONS_STATS": "Interactions Daily Stats", + "DIAL_TIMEZONE": "Dial timezone", + "VOICE_AVG_HOLD_TIME": "AVERAGE HOLD TIME", + "VOICE_AVG_HOLD_TIME_TEXT": "QUEUE CALLS AVG HOLD TIME", + "VOICE_AVG_TALK_TIME": "AVERAGE TALK TIME", + "VOICE_AVG_TALK_TIME_TEXT": "QUEUE CALLS TALK TIME", + "VOICE_ANSWER_RATE": "ANSWER RATE", + "VOICE_ANSWER_RATE_TEXT": "QUEUE CALLS ANSWER RATE", + "VOICE_ABANDON_RATE": "ABANDON RATE", + "VOICE_ABANDON_RATE_TEXT": "QUEUE CALLS ABANDON RATE", + "VOICE_UNMANAGED": "UNMANAGED", + "VOICE_UNMANAGED_TEXT": "UNMANAGED QUEUE CALLS", + "OPENED_TEXT": "Opened Interactions", + "MANAGED": "Managed", + "MANAGED_TEXT": "Managed Interactions", + "ABANDONED": "Abandoned", + "ABANDONED_TEXT": "Abandoned Interactions", + "ABANDONED_RATE": "Abandoned Rate", + "ABANDONED_RATE_TEXT": "Interactions Abandon Rate", + "SYSTEM_TIME": "System time", + "TOTAL_OFFERED": "Total Offered", + "TOTAL_OFFERED_TEXT": "Offered Interactions", + "AVG_HOLD_TIME_TEXT": "Interactions AVG Hold Time", + "MANAGED_RATE": "Managed Rate", + "MANAGED_RATE_TEXT": "Interactions Managed Rate ", + "AVG_MANAGED_TIME": "AVG Management Time", + "AVG_MANAGED_TIME_TEXT": "Interactions AVG Management Time", + "NO_DISPOSITION_SET": "No disposition set", + "AGENTS": "Agents", + "TRANSFER": "Transfer", + "NO_DATA_AVAILABLE": "No data available", + "CUSTOMER_JOURNEY": "Customer Journey", + "ME": "Me", + "CURRENTLY_IN_USE_BY": "Currently in use by", + "NOTAVAILABLE": "Not available", + "CLICKRELOAD": "New abandoned calls! Reload please", + "ASSIGNTO": "Assign to", + "SELECT_QUEUE": "Select Queue", + "SELECT_CAMPAIGN": "Select Queue", + "FREE": "Free", + "RESERVED": "Reserved", + "QUEUECALLEREXITREASON": "Reason", + "QUEUECALLEREXITAT": "Dropped", + "LASTASSIGNEDTO": "Last Assigned To", + "ABANDONEDQUEUECALLS": "Abandoned Queue Calls", + "ABANDONAT": "Abandoned", + "QUEUE": "Queue", + "SELECT_SUBSTATUS": "Select Substatus", + "READ": "Read", + "UNREAD": "Unread", + "SELECT_READ_UNREAD": "Select Read/Unread", + "SELECT_AGENT": "Select Agent", + "MARK_AS_UNREAD": "Mark as unread", + "FILTER_VOICE_QUEUES": "Filter Voice Queues", + "FILTER_CHAT_WEBSITES": "Filter Chat Websites", + "FILTER_SMS_ACCOUNTS": "Filter Sms Accounts", + "FILTER_FAX_ACCOUNTS": "Filter Fax Accounts", + "FILTER_OPENCHANNEL_ACCOUNTS": "Filter Openchannel Accounts", + "FILTER_MAIL_ACCOUNTS": "Filter Mail Accounts", + "FILTER_WHATSAPP_ACCOUNTS": "Filter Whatsapp Accounts", + "SETFILTERS": "Set Filters", + "FILTERS": "Filters", + "CONFIRM": "Confirm", + "CHANNEL_WAITING_TEXT": "Waiting Queue Interactions", + "CHANNEL_QUEUE": "Queue", + "CHANNEL_FROM": "From", + "LOADING_INTERACTION": "We are loading the interaction...", + "JANUARY": "January", + "FEBRUARY": "February", + "MARCH": "March", + "APRIL": "April", + "MAY": "May", + "JUNE": "June", + "JULY": "July", + "AUGUST": "August", + "SEPTEMBER": "September", + "OCTOBER": "October", + "NOVEMBER": "November", + "DECEMBER": "December", + "MON": "Mon", + "TUE": "Tue", + "WED": "Wed", + "THU": "Thu", + "FRI": "Fri", + "SAT": "Sat", + "SUN": "Sun", + "DELETE": "Delete", + "LAST_3_DAYS": "Last 3 Day", + "LAST_YEAR": "Last Year", + "THIS_YEAR": "This Year", + "LAST_MONTH": "Last Month", + "THIS_MONTH": "This Month", + "LAST_WEEK": "Last Week", + "THIS_WEEK": "This Week", + "YESTERDAY": "Yesterday", + "TODAY": "Today", + "SELECT_DATE": "Select Start Date", + "HOME": "Home", + "SET_AS": "Set As", + "PENDING": "Pending", + "CANNED_ANSWER_NOT_FOUND": "No Canned Answers were found", + "CANNED_ANSWER_SEARCH": "Enter a text to search a Canned Answer", + "TAGS": "Tags", + "SELECT_TAG": "Select Tag", + "TYPE": "Type", + "SOURCE": "Source", + "DESTINATION": "Destination", + "CALLERID": "Caller ID", + "END_AT": "End At", + "DURATION": "Duration", + "CHAT": "Chat", + "MAIL": "Email", + "SMS": "Sms", + "OPENCHANNEL": "Open Channel", + "FAX": "Fax", + "NOT_ASSIGNED": "Not Assigned", + "UNKNOWN": "Unknown", + "SELECT_USER": "Select User", + "LAST_MESSAGE": "Last message", + "USER": "User", + "RATING": "Rating", + "FEEDBACK": "Feedback", + "SUBJECT": "Subject", + "CUSTOMER_IP": "Originating IP Address", + "REFERER": "Referer", + "ACCOUNT": "Account", + "WEBSITE": "Website", + "AGENT": "Agent", + "CREATED_AT": "Created At", + "CLOSED_AT": "Closed At", + "DISPOSITION": "Disposition", + "CONTACT": "Contact", + "INTERACTION": "Interaction", + "BROWSER_NAME": "Browser Name", + "BROWSER_VERSION": "Browser Version", + "OS_NAME": "Operating System Name", + "OS_VERSION": "Operating System Version", + "DEVICE_MODEL": "Device Model", + "DEVICE_VENDOR": "Device Vendor", + "DEVICE_TYPE": "Device Type", + "RECALLME": "Recall Me", + "DROP_RATE": "Drop Rate", + "DROPPED": "Dropped", + "DROPPED_TEXT": "Dropped Queue Calls", + "DETAIL": "Detail", + "MOTION_BULL": "Motion Bull", + "LIMITED": "Limited", + "LIMITED_TEXT": "IVR Campaigns Calls Originated/Limit", + "DASHBOARDS": "Dashboards", + "RECORDINGS": "Recordings", + "TODAY_MOTION_BULL_STATS": "Queue Campaigns Daily Stats", + "ORIGINATED": "Originated", + "ORIGINATED_TEXT": "Queue Calls Originated", + "UPDATE": "Update", + "MORE": "More", + "MOTIONDIALER": "Motion Bull", + "DISPOSE": "Dispose", + "QUEUES": "Queues", + "DIALER_CALL": "Dialer Call", + "ELAPSED_TIME": "Elapsed Time", + "EDIT": "Edit", + "MERGE": "Merge", + "DUPLICATE": "Duplicate", + "UNIQUEID": "Uniqueid", + "AUTOCLOSE": "Automatically close contact tab after disposal", + "CAMPAIGN": "Campaign", + "NONE": "None", + "NAME": "Name", + "ANSWER_MACHINE": "Answer Machine", + "INTERESTED": "Interested", + "NOT_INTERESTED": "Not Interested", + "PERSONAL_INFO": "Personal Info", + "SOLD": "Sold", + "SPECIAL": "Special", + "BLACKLIST": "Blacklist", + "RESCHEDULE": "Reschedule", + "FIRSTNAME": "Firstname", + "LASTNAME": "Lastname", + "MOBILE": "Mobile", + "DATE_OF_BIRTH": "Birthdate", + "COMPANY": "Company", + "TAG": "Tag", + "COUNTRY": "Country", + "CITY": "City", + "STREET": "Address", + "POSTALCODE": "Postal Code", + "CUSTOM_FIELDS": "Custom Fields", + "GENERAL": "General", + "VOICE": "Voice", + "TODAY_IVR_CAMPAIGNS_STATS": "Daily Ivr Campaigns Stats", + "TODAY_INBOUND_STATS": "Inbound Queue Daily Stats", + "TODAY_OUTBOUND_STATS": "Outbound Daily Stats", + "WAITING": "Waiting", + "TALKING": "Talking", + "INBOUND_ANSWERED": "Answered", + "OUTBOUND_ANSWERED": "Answered", + "AVG_HOLD_TIME": "Average Hold Time", + "INBOUND_ANSWER_RATE": "Answer Rate", + "OUTBOUND_ANSWER_RATE": "Answer Rate", + "ABANDON_RATE": "Abandon Rate", + "UNMANAGED": "Unmanaged", + "TOTAL": "Total", + "TOT_DURATION": "Total Duration", + "AVG_DURATION": "Average Duration", + "HELP": { + "MANDATORY_DISPOSITION_ENABLED": "Mandatory disposition enabled for this account", + "UNMANAGED_RATE": "The Unmanaged Rate of all the Interactions", + "WAITING": "The total number of Waiting Interactions", + "OPENED": "The total number of Active Interactions", + "MANAGED": "The total number of Completed Interactions", + "ABANDONED": "The total number of Abandoned Interactions", + "TOTAL_OFFERED": "The total number of Interactions (completed + abandoned)", + "AVG_HOLD_TIME": "The Average Interaction Hold Time, namely the average time spent waiting for an agent to answer, for all the existing Interactions", + "AVG_MANAGED_TIME": "The Average Interaction Managed Time, namely the average time spent during conversation", + "MANAGED_RATE": "The Managed Rate of all the Interactions", + "ABANDONED_RATE": "The Abandon Rate of all the Interactions", + "UNMANAGED": "The total number of Unmanaged Interactions", + "VOICE_WAITING": "The total number of Waiting Queue Calls, for all the existing Queues", + "VOICE_TALKING": "The total number of Active Queue Calls, for all the existing Queues", + "VOICE_ANSWERED": "The total number of Completed Queue Calls, for all the existing Queues", + "VOICE_ABANDONED": "The total number of Abandoned Queue Calls, considering all the existing Queues. Note that the calls which are abandoned for timeout and joinempty will not be considered", + "VOICE_TOTAL_OFFERED": "The total number of Queue Calls (completed + abandoned + unmanaged in the last queue of the flow). Note that the calls which enter in an IVR and not in a queue, will not be considered", + "VOICE_AVG_TALK_TIME": "The Average Queue Talk Time, namely the average time spent during conversation, for all the existing Queues", + "VOICE_AVG_HOLD_TIME": "The Average Queue Hold Time, namely the average time spent waiting for an agent to answer, for all the existing Queues", + "VOICE_ANSWER_RATE": "The Answer Rate of all the Queue Calls", + "VOICE_UNMANAGED": "The total number of Unmanaged Queue Calls, for all the existing Queues. It includes the calls which are abandoned for timeout, joinempty, leavewhenempty and exitwithkey (cfr. asterisk doc for more information)", + "ORIGINATED": "Total number of calls dialed in the queue campaigns", + "ORIGINATEDLIMITED": "IVR Campaigns Calls Originated/Limit", + "DROPPED": "The total number of Dropped Queue Calls, for all the existing Queues", + "DROP_RATE": "The Drop Rate of all the Queue Calls", + "OUTBOUND_ANSWERED": "The total number of Completed Outbound Calls", + "OUTBOUND_ANSWER_RATE": "The Answer Rate of all the Outbound Calls", + "ABANDON_RATE": "The Abandon Rate of all the Queue Calls", + "TOTAL": "The total number of Outbound Calls", + "TOT_DURATION": "The total duration of all the Outbound Calls", + "AVG_DURATION": "The average duration of all the Completed Outbound Calls", + "EXACT_MATCH_FILTER": "Search for an exact match", + "LIKE_FILTER": "Search for the specified pattern" + }, + "ERRORS": { + "CAMPAIGN_REQUIRED": "Mandatory field", + "FIRSTNAME_REQUIRED": "Mandatory field", + "PHONE_REQUIRED": "Mandatory field", + "DISPOSITION_REQUIRED": "Mandatory field", + "AGENT_REQUIRED": "Mandatory field", + "QUEUE_REQUIRED": "Mandatory field", + "FAILED_INITIALIZATION": "Error during initialization" + }, + "NO_AVAILABLE_INFO": "No available info", + "WELCOME_TO_MOTION": "Welcome to Motion", + "WELCOME_MESSAGE": "Use the left sidebar to navigate through available sections", + "ADD": "Add", + "CONTACTMANAGER": "Contact Manager", + "DASHBOARD": "Dashboard", + "EDIT_CONTACT": "Edit contact", + "EMAIL": "Email", + "FULLNAME": "Fullname", + "CREATEDAT": "Created At", + "LIST": "List", + "NEW_CONTACT": "New Contact", + "PHONE": "Phone", + "SAVE": "Save", + "INBOUND_WAITING_CALLS": "Inbound Waiting Calls", + "CONTACTS": "Contacts", + "MYCONTACTS": "My Contacts", + "ADD_CONTACT": "Add Contact", + "RELOAD": "Reload", + "WAITING_TEXT": "Waiting Interactions", + "TALKING_TEXT": "Active Queue Calls", + "INBOUND_ANSWERED_TEXT": "Answered Queue Calls", + "DROP_RATE_TEXT": "Queue Calls Drop Rate", + "AVG_TALK_TIME_TEXT": "Queue Calls Talk Time", + "INBOUND_ANSWER_RATE_TEXT": "Queue Calls Answer Rate", + "UNMANAGED_TEXT": "Unmanaged Interactions", + "TOTAL_TEXT": "Total Outbound Calls", + "OUTBOUND_ANSWERED_TEXT": "Outbound Answered Calls", + "TOT_DURATION_TEXT": "Outbound Calls Total Duration", + "AVG_DURATION_TEXT": "Outbound Calls Average Duration", + "OUTBOUND_ANSWER_RATE_TEXT": "Outbound calls Answer Rate", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "REPLY_PLACEHOLDER": "Type and hit enter to send a message", + "CONTACT_INFO": "Contact Info", + "CLOSE_AND_DISPOSE": "Close and dispose", + "DISPOSITIONS": "Dispositions", + "CLOSE_WITHOUT_DISPOSE": "Close without dispose", + "ACCEPT": "Accept", + "REJECT": "Reject", + "CLOSED": "Closed", + "INFO": "Info", + "NOTE": "Note", + "ACCEPT_ELSEWHERE": "Accepted elsewhere", + "ATTENTION": "Attention", + "SOCIAL": "Social", + "NO_JSCRIPTY_PROJECTS_AVAILABLE": "No Jscripty Projects available", + "OPENED": "Opened", + "FILTER": "Filter", + "SELECT_STATUS": "Select Status", + "SELECT_ACCOUNT": "Select Account", + "SELECT_WEBSITE": "Select Website", + "ALL": "All", + "INTERACTIONS": "Interactions", + "STARTEDAT": "Started At", + "STATUS": "Status", + "OPEN": "Open", + "SHOW": "Show", + "SHOW_DETAILS": "Show Details", + "HIDE_DETAILS": "Hide Details", + "EXTERNAL_URL": "External Link", + "NO_MAIL_ACCOUNTS_AVAILABLE": "No Email Accounts available", + "NO_FAX_ACCOUNTS_AVAILABLE": "No Fax Accounts available", + "NO_SMS_ACCOUNTS_AVAILABLE": "No SMS Accounts available", + "NO_WHATSAPP_ACCOUNTS_AVAILABLE": "No Whatsapp Account available", + "SELECT_DATE_RANGE": "Select Date Range", + "CLEAR": "Clear", + "CALL_NUMBER": "Call", + "TRANSFER_NUMBER": "Transfer", + "CALL_SAVED": "Call properly saved", + "CALL_DISPOSED": "Call properly disposed", + "CUSTOMER_PORT": "Originating TCP Port", + "INTERACTION_CLOSED": "Interaction properly closed", + "INTERACTION_DISPOSED": "Interaction properly disposed", + "INTERACTION_CLOSED_DISPOSED": "Interaction properly closed and disposed", + "SELECT_ALL": "Select all", + "ASSIGNED_TO_OTHERS": "Assigned to others", + "ID": "Id", + "CHAT_INTERACTIONS": "Chat Interactions", + "MAIL_INTERACTIONS": "Email Interactions", + "SMS_INTERACTIONS": "SMS Interactions", + "OPENCHANNEL_INTERACTIONS": "Open Channel Interactions", + "FAX_INTERACTIONS": "Fax Interactions", + "DRAFT": "Draft", + "DRAFT_SAVE_WARNING_TITLE": "Overwrite existing draft?", + "DRAFT_SAVE_WARNING_MESSAGE": "There is already a draft saved for this interaction. Are you sure you want to overwrite it?", + "OVERWRITE": "Overwrite", + "CANCEL": "Cancel", + "UNTITLED": "Untitled", + "SAVE_AS_DRAFT": "Save as draft", + "UPDATE_DRAFT": "Update draft", + "NO_AVAILABLE_INTERACTION": "No available interaction", + "DOSSIERS": "Dossiers", + "DOSSIER": "Dossier", + "DOSSIER_INFO": "Information", + "SELECT_COMPANY": "Select Company", + "DOSSIERNAME": "Dossier Name", + "OPENDATE": "Open Date", + "ALL_COMPANIES": "All Companies", + "SELECT_WORKFLOW": "Select Workflow", + "WORKFLOW": "Select Workflow", + "SELECT_WORKFLOWSTEPS": "Select Workflow State", + "ALL_WORKFLOW": "All Workflow", + "STATE": "State", + "STEP": "Step", + "NEW_DOSSIER": "New Dossier", + "PRICELIST": "Price List", + "PRODUCTFILTERNAME": "Filter Name", + "PRODUCTNAME": "Product", + "PRODUCTINQUOTATION": "PRODUCT DETAILS", + "REQUEST": "REQUEST", + "QUOTATION": "QUOTATION", + "DOSSIERID": "Dossier ID", + "QUOTATIONNAME": "Quotation Name", + "QUOTATIONNOTES": "Quotation Notes", + "QUOTATIONSTATUS": "State", + "REQUESTNAME": "Request Name", + "REQUESTNOTES": "Request Notes", + "ALL_STEP": "All", + "UPDATED_AT": "Modified on", + "BY": "By", + "ORDER": "Order", + "PROFORMA": "PROFORMA", + "INVOICE": "INVOICE", + "REQUESTID": "Request", + "QUOTATIONID": "Offer", + "ORDERID": "Order", + "PRICELISTNAME": "Price List", + "PRODUCTCODE": "Product Code", + "PRICELISTNETPRICE": "Net Price", + "PRICELISTDISCOUNT": "Price list discount", + "QUOTATIONQTY": "Quantity", + "QUOTATIONTAX": "Tax", + "QUOTATIONPROFORMAID": "Proforma ID", + "QUOTATIONINVOICEID": "Invoice ID", + "QUOTATIONDISCOUNT": "Quotation Discount", + "ORDER_INFO": "Order", + "REQUEST_INFO": "Request", + "QUOTATION_INFO": "Quotation", + "ORDERCLIENTCODE": "Customer Code", + "ORDERNOTES": "Note", + "PROFORMANAME": "Proforma name", + "AGENTFULLNAME": "Agent", + "PROFORMANOTES": "Note", + "PRODUCTINPROFORMA": "Products in proforma", + "INVOICENAME": "Invoice Name", + "INVOICENOTES": "Note", + "DOSSIERNOTES": "Note", + "QUOTATIONTOTALPRICE": "Total net", + "QUOTATIONTOTALTAX": "Total tax", + "PROFORMA_INFO": "Proforma", + "PROFORMAID": "Id Proforma", + "PRICESALELISTNETPRICE": "Prezzo listino", + "PROFORMASTATUS": "State", + "INVOICESTATUS": "State", + "NO_PRODUCTINVOICE_AVAILABLE": "No product", + "INVOICEID": "Invoice", + "PRODUCTNOTE": "Note", + "INVOICE_INFO": "Invoice", + "COMPANYSTREET": "Address", + "COMPANYCITY": "City", + "COMPANYPOSTALCODE": "Postal Code", + "COMPANYCOUNTRY": "Country", + "COMPANYFAX": "Fax", + "COMPANYVAT": "Fiscal Code/VAT", + "COMPANYPHONE": "Telephone", + "COMPANYEMAIL": "Email", + "NOTES": "Note", + "QUOTATIONPRODUCTNOTE": "Product Note", + "QUOTATIONVAT": "VAT", + "AUTOPROFORMA": "SELF-PROFORMA", + "AUTOINVOICE": "SELF-INVOICE", + "MOVEASSET": "ASSET", + "ORDERSTATUS": "State", + "QUOTATIONTOTALS": "Total", + "QUOTATIONTOTAL": "TOTAL", + "PRODUCTTYPE": "Type", + "PRODUCTSUBSCRIPTION": "Duration", + "PRODUCTATUNIT": "Unit", + "INASSET": "Asset", + "PRODUCTININVOICE": "Products on the invoice", + "SUBSCRIPTIONS": "CUSTOMER SCHEDULE", + "SUBSCRIPTIONNAME": "Subscription", + "COMPANYNAME": "Company", + "NEXTINVOICE": "Next Invoice", + "SUBSCRIPTIONDETAIL": "Detail", + "PRODUCTDESCRIPTION": "Description", + "NETPRICE": "Price", + "DISCOUNT": "Discount", + "TAX": "Tax", + "ATTENDACELASTINVOICE": "Last invoice", + "ATTENDACENEXTINVOICE": "Next invoice", + "SELECT_PRODUCT": "Select product", + "SELECT_PRODUCTTYPE": "Select type", + "ALL_PRODUCTS": "All", + "ALL_STATUS": "All", + "PAYMENT_INFO": "Payment information", + "PAYMENTMETHOD": "Payment methods", + "PAYMENT": "Payment", + "DETAILS": "Details", + "INVOICEDETAILS": "INVOICE DETAILS", + "QUANTITY": "Quantity", + "MANAGESALES": "Subscriptions", + "ACCOUNTINGDOC": "Accounting", + "INVOICES": "INVOICES", + "PROFORMAS": "PROFORMA", + "PAYMENTS": "PAYMENTS", + "SELECT_PERIOD": "Select range", + "NO_PRODUCTPROFORMA_AVAILABLE": "No data available", + "NO_PRODUCTPRICELIST_AVAILABLE": "No data available", + "PROFORMAAUTHORIZED": "Authorized proforma", + "ADD_PRODUCTPRICELIST": "ADD PRODUCT", + "DELETE_PRODUCT": "Delete Product", + "AUTHORIZED": "AUTHORIZED", + "INVOICEDISCOUNT": "Discount", + "DEPOSIT": "DEPOSIT", + "BALANCE": "BALANCE", + "PRODUCTS": "PRODUCTS", + "INVOICENOPRODUCTDESCRIPTION": "Description on the invoice", + "INVOICENOPRODUCTAMOUNT": "Amount", + "INVOICENOTAXAMOUNT": "TAX", + "INVOICENOPRODUCTSAVE": "Save", + "INVOICENOPRODUCTUPDATE": "Update", + "PDFPROFORMA": "PDF", + "PDFINVOICE": "PDF", + "PAIDANDEXPIRED": "Payment", + "CREDITNOTE": "CREDIT NOTE", + "CREDITNOTE_INFO": "Credit Note", + "MOVECREDITNOTE": "SELF-CREDIT NOTE", + "CREDITNOTEDETAILS": "Credit Note Detail", + "PDFCREDITNOTE": "PDF", + "CREDITINOTENAME": "Name", + "TOTALPAYMENTS": "Total payments", + "PROFORMADETAILS": "Details", + "CREATIONDATE": "Created at", + "STARTDATE": "Invoice Date", + "ENDDATE": "Expiry Date", + "NUMBER": "Number", + "PRODUCTPRICE": "Price", + "PRODUCTTAX": "Tax percentage", + "PRODUCTQTY": "Quantity", + "UPDATE_PRODUCT": "Update Product", + "QUOTATIONPRODUCTTYPE": "Type", + "QUOTATIONUNIT": "Unit", + "QUOTATIONSUBSCRIPTION": "Duration", + "SELECT_PERIOD_CREATION": "Select Creation Date", + "SELECT_PERIOD_START": "Select Date", + "SELECT_PERIOD_EXPIRE": "Select Expiry Date", + "NEW_COMPANY": "New", + "COMPANIES": "Companies", + "PAYED_AY": "Payed on", + "CLONEPROFORMA": "Clone", + "COMPANYDESC": "Description", + "COMPANYNATION": "Nation", + "GRAPHINVOICES": "Invoice emission chart", + "YEARS": "Years", + "FROM": "From", + "TO": "To", + "INVOICEEMITED": "Issued", + "INVOICEPAYED": "Payed", + "INVOICETOTAL": "Total", + "CHOOSE": "Choose", + "ADVANCED_SEARCH": "Advanced Search", + "NEW_CONDITION": "New Condition", + "SELECT_FIELD": "Select field", + "SELECT_OPERATOR": "Select operator", + "VALUE": "Value", + "VALUES": "Values", + "APPLY": "Apply", + "MEET_ALL_CONDITIONS": "Meet all conditions", + "MEET_ANY_CONDITIONS": "Meet at least one condition", + "EQUALS": "Equals", + "IS_NOT_EQUAL": "Does not equal", + "IS_AMONG": "Is among", + "IS_NOT_AMONG": "Is not among", + "IS_GREATER_THAN": "Is greater than", + "IS_GREATER_THAN_OR_EQUAL_TO": "Is greater than or equal to", + "IS_LESS_THAN": "Is less than", + "IS_LESS_THAN_OR_EQUAL_TO": "Is less than or equal to", + "IS_BETWEEN": "Is between", + "CONTAINS": "Contains", + "STARTS_WITH": "Starts with", + "ENDS_WITH": "Ends with", + "STARTING_DATE": "Starting date", + "ENDING_DATE": "Ending date", + "STARTING_VALUE": "Starting value", + "ENDING_VALUE": "Ending value", + "VALUE_RANGE_CHECK": "Value must be greater than", + "AND": "And", + "ENABLED": "Enabled", + "DISABLED": "Disabled", + "ELAPSED_ANSWERED": "Elapsed time since call started", + "ELAPSED_DISPOSED": "Elapsed time since call ended", + "WHATSAPP": "WhatsApp Connector", + "WHATSAPP_INTERACTIONS": "WhatsApp Connector Interactions", + "SECOND_LEVEL_DISPOSITION": "Second Level Disposition", + "THIRD_LEVEL_DISPOSITION": "Third Level Disposition", + "VIDAOOSESSION": "Start Video Call", + "SELECT_CONTACT": "Select contact", + "SELECT": "Select", + "LAST_UPDATED": "Last updated", + "MATCHING_FIELD": "Matching field", + "MULTIPLE_CONTACTS_FOUND": "Multiple contacts found for number", + "WHICH_ONE_TO_USE": "Which one do you want to use?", + "LICENSE_EXPIRE_REMAINING_DAYS": "Your license is about to expire! Please contact your Administrator", + "NO_RESULTS_AVAILABLE": "No results available", + "AVAILABLE": "Available", + "AGENT_PRESENCE": "Agent Presence", + "SELECT_TEAM": "Select Team", + "NOTIFICATIONS": { + "TRANSFER_AGENT_EXECUTED": "Transfer to agent successfully executed", + "TRANSFER_QUEUE_EXECUTED": "Transfer to queue successfully executed" + }, + "LIMIT_TABS_REACHED": "Maximum number of open tabs reached" + } +} diff --git a/public/app/main/apps/fax/i18n/bs.json b/public/app/main/apps/fax/i18n/bs.json new file mode 100644 index 0000000..bc9aa75 --- /dev/null +++ b/public/app/main/apps/fax/i18n/bs.json @@ -0,0 +1,261 @@ +{ + "FAX": { + "LOGIN_TIME": "Login time", + "PAUSE_TIME": "Pause time", + "DOWNLOAD_INTERACTION": "Download", + "TRANSFER": "Transfer", + "QUEUETRANSFER": "Queue Transfer", + "QUEUETRANSFERTIMEOUT": "Queue Transfer Timeout", + "AGENTTRANSFER": "Agent Transfer", + "AGENTTRANSFERTIMEOUT": "Agent Transfer Timeout", + "TAG": "Tag", + "EDIT_TAG": "Edit Tag", + "WAITFORTHEASSIGNEDAGENT": "Wait for the assigned agent", + "NOTIFICATION": "Notification", + "NOTIFICATIONSOUND": "Sound", + "NOTIFICATIONSHAKE": "Shake", + "NOTIFICATIONTEMPLATE": "Template", + "SYSTEM": "System", + "EDIT_SYSTEM": "Edit System", + "COMMAND": "Command", + "VARIABLE": "Variable", + "CANNEDANSWERS": "Canned Answers", + "FAXCANNEDANSWERS": "Canned Answers", + "NO_FAXCANNEDANSWER_AVAILABLE": "No Canned Answers Available", + "NEW_FAXCANNEDANSWER": "New Canned Answer", + "ADD_FAXCANNEDANSWER": "Add Canned Answer", + "EDIT_CHATCANNEDANSWER": "Edit Canned Answer", + "DELETE_CHATCANNEDANSWER": "Delete Canned Answer", + "SPYINTERACTION": "Spy", + "TAGS": "Tags", + "REPLY": "Reply", + "SEND": "Send", + "TO": "To", + "FROM": "From", + "NO_AGENT_ONLINE": "No Agent Online", + "GOTOREALTIME_FAXQUEUE": "Go To Realtime Fax Queue", + "EDIT_TRUNK": "Edit Trunk", + "REGISTERED": "Registered", + "UNREGISTERED": "Unregistered", + "EDIT_ACCOUNT": "Edit Fax Account", + "PARTIALPAUSE": "Partial Pause", + "BUSY": "Busy", + "TIMER": "Timer", + "IDLE": "Idle", + "CAPACITY": "Capacity", + "GOTO_FAXACCOUNT": "Go To Realtime Fax", + "ACCOUNTS": "Accounts", + "GOTOREALTIME_FAXACCOUNT": "Go To Realtime Fax", + "TRUNK_STATUS": "Trunk Status", + "TRUNKS": "Trunks", + "REGISTRY": "Registry", + "NO_REGISTRY": "No Registry", + "PAUSE": "Pause", + "INFO": "Info", + "FULLNAME": "Fullname", + "INTERNAL": "Internal", + "PHONE_STATE": "Phone State", + "PHONE_STATUS": "Phone Status", + "LOGOUT": "Logout", + "DEFAULT_PAUSE": "Default pause", + "AGENTADD_QUEUE": "Add Agent to Fax queue", + "AGENTSADD_QUEUE": "Add Agents to Fax queue", + "UNPAUSE": "End Pause", + "AGENTS": "Agents", + "QUEUES": "Queues", + "LOGGED_IN": "Logged in", + "PAUSED": "Paused", + "READY": "Ready", + "WAITING": "Waiting", + "PRIORITY": "Priority", + "CONDITION": "Condition", + "TRUEPRIORITY": "True Priority", + "FALSEPRIORITY": "False Priority", + "VALUE": "Value", + "EDIT_FAXQUEUE": "Edit Fax Queue", + "EDIT_AGENT": "Edit Agent", + "EDIT_GOTO": "Edit Goto", + "EDIT_NOOP": "Edit Noop", + "EDIT_GOTOP": "Edit GotoP", + "EDIT_GOTOIF": "Edit GotoIf", + "EDIT_QUEUE": "Edit Fax Queue", + "EDIT_CLOSE": "Edit Close", + "QUEUE": "Queue", + "GOTOIF": "GotoIf", + "GOTOP": "GotoP", + "NOOP": "Noop", + "AGENT": "Agent", + "NOTES": "Notes", + "CLOSEDAT": "Closed At", + "DISPOSITION": "Disposition", + "REALTIME": "Realtime", + "TEAMADD_FAXQUEUE": "Add Team to Fax Queue", + "AGENTADD_FAXQUEUE": "Add Agent to Fax Queue", + "NAME": "Name", + "FAXQUEUES": "Fax Queues", + "SEARCH_FOR_ANYONE": "Search", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause status when in mandatory disposition", + "ERRORS": { + "QUEUETRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "QUEUETRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "QUEUETRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "AGENTTRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENTTRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AGENTTRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "TAG_REQUIRED": "Mandatory Field", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "WAITFORTHEASSIGNEDAGENT_REQUIRED": "Mandatory Field", + "AGENT_TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENT_TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "NAME_MUST_VALID_PATTERN": "Wrong format", + "COMMAND_REQUIRED": "Mandatory Field", + "TEXT_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "TEXT_REQUIRED": "Mandatory Field", + "VALUE_REQUIRED": "Mandatory Field", + "PRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "TRUEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "FALSEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AGENT_REQUIRED": "Mandatory Field", + "QUEUE_REQUIRED": "Mandatory Field", + "TRUEPRIORITY_REQUIRED": "Mandatory Field", + "FALSEPRIORITY_REQUIRED": "Mandatory Field", + "CONDITION_REQUIRED": "Mandatory Field", + "PRIORITY_REQUIRED": "Mandatory Field", + "DISPOSITION_REQUIRED": "Mandatory Field", + "NAME_REQUIRED": "Mandatory Field", + "AGENT_TIMEOUT_REQUIRED": "Mandatory Field", + "MOTIONADDRESS_REQUIRED": "Mandatory Field", + "MOTIONADDRESS_MUST_VALID_URL": "Wrong format", + "LOCALSTATIONID_REQUIRED": "Mandatory Field", + "MODEM_REQUIRED": "Mandatory Field", + "GATEWAY_REQUIRED": "Mandatory Field", + "FAXDETECT_REQUIRED": "Mandatory Field", + "T38TIMEOUT_REQUIRED": "Mandatory Field", + "TIMEOUT_REQUIRED": "Mandatory Field", + "HEADERINFO_REQUIRED": "Mandatory Field", + "TRUNK_REQUIRED": "Mandatory Field", + "LIST_REQUIRED": "Mandatory Field", + "KEY_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "KEY_REQUIRED": "Mandatory Field", + "MANDATORYDISPOSITIONPAUSEID_REQUIRED": "You should specify a pause status when in mandatory disposition" + }, + "STRATEGY": "Strategy", + "AGENT_TIMEOUT": "Agent Timeout", + "DESCRIPTION": "Description", + "ADD_FAXQUEUE": "Add Fax Queue", + "DELETE_FAXQUEUE": "Delete Fax Queue", + "CREATED_AT": "Created At", + "SAVE": "Save", + "SETTINGS": "Settings", + "GENERAL": "General", + "FAXACCOUNTS": "Fax Accounts", + "MOTIONADDRESS": "Motion Address", + "ADD_FAXACCOUNT": "Add Fax Account", + "EDIT_FAXACCOUNT": "Edit Fax Account", + "DELETE_FAXACCOUNT": "Delete Fax Account", + "DISPOSITIONS": "Dispositions", + "WEBHOOKS": "WebHooks", + "ACTIONS": "Actions", + "LIST": "List", + "FIDELITY": "Fidelity", + "ACCEPT": "Accept", + "ACCEPTMETHOD": "Accept Method", + "ACCEPTURL": "Accept URL", + "REJECT": "Reject", + "REJECTMETHOD": "Reject Method", + "REJECTURL": "Reject URL", + "CLOSE": "Close", + "CLOSEMETHOD": "Close Method", + "CLOSEURL": "Close URL", + "TRUNK": "Trunk", + "LOCALSTATIONID": "Local Station Identifier", + "HELP": { + "LOCALSTATIONID": "Local Station Identifier (telephone number)", + "HEADERINFO": "Outbound Fax Header information", + "MODEM": "Modem Type (v17/v27/v29)", + "GATEWAY": "T.38 Fax Gateway, with optional fax activity timeout in seconds (yes/no/[timeout])", + "FAXDETECT": "Enable Fax Detect with optional timeout in seconds (yes/t38/cng/[timeout]/no)", + "T38TIMEOUT": "The timeout used for T.38 negotiation (minimum value=1000)", + "ECM": "Error Connection Mode (ECM)", + "MINRATE": "Minimum transfer rate set before transmission", + "MAXRATE": "Maximum transfer rate set before transmission", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause status for mandatory disposition", + "NAME": "Only numbers, letters and specific characters (._) are supported" + }, + "ADVANCED": "Advanced", + "ECM": "ECM", + "MINRATE": "Min Rate", + "MAXRATE": "Max Rate", + "MODEM": "Modem", + "GATEWAY": "Gateway", + "FAXDETECT": "Fax Detect", + "T38TIMEOUT": "T.38 Timeout", + "SIP": "Technology", + "HEADERINFO": "Header Info", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "BACK": "Back", + "FAX": "Fax", + "ID": "Id", + "TIMEOUT": "Timeout", + "FAXDISPOSITIONS": "Fax Dispositions", + "NO_FAXDISPOSITION_AVAILABLE": "No Fax Dispositions available", + "NEW_FAXDISPOSITION": "New Fax Disposition", + "ADD_FAXDISPOSITION": "Add Fax Disposition", + "EDIT_FAXDISPOSITION": "Edit Fax Disposition", + "DELETE_FAXDISPOSITION": "Delete Fax Disposition", + "NEW_FAXQUEUE": "New Fax Queue", + "NEW_FAXACCOUNT": "New Fax Account", + "NO_AVAILABLE_INFO": "No available info", + "ALL_TEAMS": "All Teams", + "SELECTED_TEAMS": "Selected Teams", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "DELETE": "Delete", + "KEY": "Key", + "ALL_AGENTS": "All Agents", + "SELECTED_AGENTS": "Selected Agents", + "FILTER": "Filter", + "SELECT_STATUS": "Select Status", + "ALL": "All", + "CLOSED": "Closed", + "OPENED": "Opened", + "SELECT_ACCOUNT": "Select Account", + "INTERACTIONS": "Interactions", + "CONTACT": "Contact", + "STARTEDAT": "Started At", + "LASTMESSAGE": "Last message", + "STATUS": "Status", + "ACCOUNT": "Account", + "UNKNOWN": "Unknown", + "UNAVAILABLE": "Unavailable", + "NOT_INUSE": "Not in use", + "REACHABLE": "Reachable", + "IN_USE": "In use", + "VOICE": "Voice", + "CHAT": "Chat", + "MAIL": "Email", + "SMS": "SMS", + "OPENCHANNEL": "Open Channel", + "TOTAL": "Total", + "IN": "In", + "OUT": "Out", + "NO_INTERACTION_AVAILABLE": "No interactions available", + "INTERACTIONS_FAXACCOUNT": "Go to Interactions", + "REFRESH_INTERACTIONS": "Refresh Interactions", + "DELETE_INTERACTION": "Delete Interaction", + "AGENTADD_FAXACCOUNT": "Add Agent to Fax Account", + "TEAMS_ASSOCIATION": "Teams Association", + "TOOLTIP_SCREENRECORDING_ON": "Screen Recording in progress", + "TOOLTIP_SCREENRECORDING_OFF": "Screen Recording available", + "DOWNLOAD_WITH_ATTACHMENTS": "Download with attachments", + "DOWNLOAD_WITHOUT_ATTACHMENTS": "Download without attachments" + } +} diff --git a/public/app/main/apps/help/i18n/bs.json b/public/app/main/apps/help/i18n/bs.json new file mode 100644 index 0000000..4c1be43 --- /dev/null +++ b/public/app/main/apps/help/i18n/bs.json @@ -0,0 +1,8 @@ +{ + "HELP": { + "ABOUT": "About", + "CONTACT_US": "Contact us", + "HELP": "Help", + "USEFUL_LINKS": "Useful links" + } +} diff --git a/public/app/main/apps/integrations/i18n/bs.json b/public/app/main/apps/integrations/i18n/bs.json new file mode 100644 index 0000000..da1fa10 --- /dev/null +++ b/public/app/main/apps/integrations/i18n/bs.json @@ -0,0 +1,252 @@ +{ + "INTEGRATIONS": { + "ZONE": "Zone", + "ADVANCED": "Advanced", + "MODULE_SEARCH": "Module Search", + "MODULE_CREATE": "Module Create", + "LEADS": "Lead", + "CONTACTS": "Contact", + "INTEGRATIONS": "Integrations", + "ZENDESKACCOUNTS": "Zendesk Accounts", + "ID": "Id", + "NAME": "Name", + "USERNAME": "Username", + "URI": "URL", + "BACK": "Back", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "EDIT_ZENDESKACCOUNT": "Edit Zendesk Account", + "DELETE_ZENDESKACCOUNT": "Delete Zendesk Account", + "NEW_ZENDESKACCOUNT": "New Zendesk Account", + "AUTHTYPE": "Authentication Type", + "PASSWORD": "Password", + "CONFIRM_PASSWORD": "Confirm Password", + "EMAIL": "Email", + "TOKEN": "Token", + "MOTIONPROXYADDRESS": "Motion or Proxy IP Address", + "DESCRIPTION": "Description", + "ADD_ZENDESKACCOUNT": "Add Zendesk Account", + "ERRORS": { + "NAME_REQUIRED": "Mandatory field", + "USERNAME_REQUIRED": "Mandatory field", + "URI_REQUIRED": "Mandatory field", + "URI_MUST_VALID_URL": "Wrong format", + "PASSWORD_REQUIRED": "Mandatory field", + "CONFIRM_NOT_MATCH": "The passwords don't match", + "TOKEN_REQUIRED": "Mandatory field", + "MOTIONPROXYADDRESS_MUST_VALID_URL": "Wrong format", + "CLIENTID_REQUIRED": "Mandatory field", + "CLIENTSECRET_REQUIRED": "Mandatory field", + "SECURITYTOKEN_REQUIRED": "Mandatory field", + "APIKEY_REQUIRED": "Mandatory field", + "CONTENT_REQUIRED": "Mandatory field", + "VARIABLENAME_REQUIRED": "Mandatory field", + "KEY_REQUIRED": "Mandatory field", + "TYPE_REQUIRED": "Mandatory field", + "VALUE_REQUIRED": "Mandatory field", + "FIELD_REQUIRED": "Mandatory field", + "CONSUMERKEY_REQUIRED": "Mandatory field", + "CONSUMERSECRET_REQUIRED": "Mandatory field", + "TOKENSECRET_REQUIRED": "Mandatory field", + "HOST_REQUIRED": "Mandatory field", + "AUTHTOKEN_REQUIRED": "Mandatory field", + "VTIGER_USER_NAME_REQUIRED": "Mandatory field", + "ACCESS_KEY_REQUIRED": "Mandatory field", + "EMAIL_REQUIRED": "Mandatory field", + "TENANTID_REQUIRED": "Mandatory field", + "CODE_REQUIRED": "Mandatory field", + "MOTIONPROXYADDRESS_REQUIRED": "Mandatory field", + "MODULECREATE_REQUIRED": "Mandatory field" + }, + "HELP": { + "MOTIONPROXYADDRESS": "Motion (Proxy) Address: it is reqired if you want to fill the ticket body with Recording URL. Enter the address in the following format: : //[:]. Example: https://X.Y.Z.W", + "TICKETTYPE": "Ticket Type", + "ZONE": "Choose your geographic zone (US, AU, EU, IN, CN) to activate the domain-specific Zoho Accounts", + "CLIENTID": "The specific CLient Id of your application", + "CLIENTSECRET": "The specific CLientSecret of your application", + "CODE": "The specific code generated through Developer Console", + "REFRESHTOKEN": "The automatically generated refresh token used to refresh expired access tokens. Also the access token are automatically generated each time an api is launched.", + "LEADID": "Field name used to link Case and Lead objects", + "ADDITIONALSEARCHACCOUNT": "Additional field name used to search customer phone number in Accounts", + "ADDITIONALSEARCHCONTACT": "Additional field name used to search customer phone number in Contacts", + "ADDITIONALSEARCHLEAD": "Additional field name used to search customer phone number in Leads", + "MODERN_AUTHENTICATION": "Switch to enable Modern Authentication" + }, + "MODULECREATE": "Module create", + "CODE": "Developer Console Code", + "REFRESHTOKEN": "Refresh Token (generated)", + "ACCOUNT": "Account", + "ZENDESKCONFIGURATIONS": "Zendesk Configurations", + "SALESFORCECONFIGURATIONS": "Salesforce Configurations", + "SUGARCRMCONFIGURATIONS": "SugarCRM Configurations", + "FRESHDESKCONFIGURATIONS": "Freshdesk Configurations", + "GENERAL": "General", + "CREATED_AT": "Created At", + "SAVE": "Save", + "NO_ZENDESKCONFIGURATION_AVAILABLE": "No Zendesk Configurations available", + "NEW_ZENDESKCONFIGURATION": "New Zendesk Configuration", + "ADD_ZENDESKCONFIGURATION": "Add Zendesk Configuration", + "EDIT_ZENDESKCONFIGURATION": "Edit Zendesk Configuration", + "DELETE_ZENDESKCONFIGURATION": "Delete Zendesk Configuration", + "NO_SALESFORCECONFIGURATION_AVAILABLE": "No Salesforce Configurations available", + "NEW_SALESFORCECONFIGURATION": "New Salesforce Configuration", + "ADD_SALESFORCECONFIGURATION": "Add Salesforce Configuration", + "EDIT_SALESFORCECONFIGURATION": "Edit Salesforce Configuration", + "DELETE_SALESFORCECONFIGURATION": "Delete Salesforce Configuration", + "NO_SUGARCRMCONFIGURATION_AVAILABLE": "No SugarCRM Configurations available", + "NEW_SUGARCRMCONFIGURATION": "New SugarCRM Configuration", + "ADD_SUGARCRMCONFIGURATION": "Add SugarCRM Configuration", + "EDIT_SUGARCRMCONFIGURATION": "Edit SugarCRM Configuration", + "DELETE_SUGARCRMCONFIGURATION": "Delete SugarCRM Configuration", + "NO_FRESHDESKCONFIGURATION_AVAILABLE": "No Freshdesk Configurations available", + "NEW_FRESHDESKCONFIGURATION": "New Freshdesk Configuration", + "ADD_FRESHDESKCONFIGURATION": "Add Freshdesk Configuration", + "EDIT_FRESHDESKCONFIGURATION": "Edit Freshdesk Configuration", + "DELETE_FRESHDESKCONFIGURATION": "Delete Freshdesk Configuration", + "SALESFORCEACCOUNTS": "Salesforce Accounts", + "EDIT_SALESFORCEACCOUNT": "Edit Salesforce Account", + "DELETE_SALESFORCEACCOUNT": "Delete Salesforce Account", + "NEW_SALESFORCEACCOUNT": "New Salesforce Account", + "ADD_SALESFORCEACCOUNT": "Add Salesforce Account", + "CLIENTID": "Client ID", + "CLIENTSECRET": "Client Secret", + "SECURITYTOKEN": "Security Token", + "SEARCH_FOR_ANYONE": "Search", + "APIKEY": "Api Key", + "FRESHDESKACCOUNTS": "Freshdesk Accounts", + "EDIT_FRESHDESKACCOUNT": "Edit Freshdesk Account", + "DELETE_FRESHDESKACCOUNT": "Delete Freshdesk Account", + "NEW_FRESHDESKACCOUNT": "New Freshdesk Account", + "ADD_FRESHDESKACCOUNT": "Add Freshdesk Account", + "SUGARCRMACCOUNTS": "SugarCRM Accounts", + "EDIT_SUGARCRMACCOUNT": "Edit SugarCRM Account", + "DELETE_SUGARCRMACCOUNT": "Delete SugarCRM Account", + "NEW_SUGARCRMACCOUNT": "New SugarCRM Account", + "ADD_SUGARCRMACCOUNT": "Add SugarCRM Account", + "CONFIGURATIONS": "Configurations", + "NO_CONFIGURATION_AVAILABLE": "No Configurations available", + "NEW_CONFIGURATION": "New Configuration", + "ADD_CONFIGURATION": "Add Configuration", + "EDIT_CONFIGURATION": "Edit Configuration", + "DELETE_CONFIGURATION": "Delete Configuration", + "SUBJECTS": "Subjects", + "DESCRIPTIONS": "Descriptions", + "FIELDS": "Fields", + "TAGS": "Tags", + "TYPE": "Type", + "CONTENT": "Content", + "EDIT_SUBJECT": "Edit Subject", + "DELETE_SUBJECT": "Delete Subject", + "NEW_SUBJECT": "New Subject", + "ADD_SUBJECT": "Add Subject", + "EDIT_DESCRIPTION": "Edit Description", + "DELETE_DESCRIPTION": "Delete Description", + "NEW_DESCRIPTION": "New Description", + "ADD_DESCRIPTION": "Add Description", + "EDIT_FIELD": "Edit Field", + "DELETE_FIELD": "Delete Field", + "NEW_FIELD": "New Field", + "ADD_FIELD": "Add Field", + "ADD": "Add", + "VOICE": "Voice", + "MAIL": "Email", + "CHAT": "Chat", + "SMS": "SMS", + "OPENCHANNEL": "Open Channel", + "INBOUND_IN_QUEUE": "Inbound in Queue", + "OUTBOUND_CALL": "Outbound Call", + "VALUE": "Value", + "FIELD": "Field", + "KEY": "Key", + "CHANNEL": "Channel", + "DELETE": "Delete", + "NO_AVAILABLE_INFO": "No available info", + "TEST_ZENDESKACCOUNT": "Test Zendesk Account", + "TEST_FRESHDESKACCOUNT": "Test Freshdesk Account", + "TEST_SUGARCRMACCOUNT": "Test SugerCRM Account", + "TEST_SALESFORCEACCOUNT": "Test Salesforce Account", + "INTEGRATION_TAB": "Integration Tab", + "NEW_TAB": "New Tab", + "DESKACCOUNTS": "Desk Accounts", + "EDIT_DESKACCOUNT": "Edit Desk Account", + "TEST_DESKACCOUNT": "Test Desk Account", + "DELETE_DESKACCOUNT": "Delete Desk Account", + "CONSUMERKEY": "Consumer Key", + "CONSUMERSECRET": "Consumer Secret", + "TOKENSECRET": "Token Secret", + "ADD_DESKACCOUNT": "Add Desk Account", + "NEW_DESKACCOUNT": "New Desk Account", + "ADD_DESKCONFIGURATION": "Add Desk Configuration", + "NEW_DESKCONFIGURATION": "New Desk Configuration", + "DELETE_DESKCONFIGURATION": "Delete Desk Configuration", + "ZOHOACCOUNTS": "Zoho Accounts", + "EDIT_ZOHOACCOUNT": "Edit Zoho Account", + "TEST_ZOHOACCOUNT": "Test Zoho Account", + "DELETE_ZOHOACCOUNT": "Delete Zoho Account", + "ADD_ZOHOACCOUNT": "Add Zoho Account", + "NEW_ZOHOACCOUNT": "New Zoho Account", + "ADD_ZOHOCONFIGURATION": "Add Zoho Configuration", + "NEW_ZOHOCONFIGURATION": "New Zoho Configuration", + "AUTHTOKEN": "Authorization Token", + "HOST": "Host", + "DELETE_ZOHOCONFIGURATION": "Delete Zoho Configuration", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "VTIGERACCOUNTS": "vTiger Accounts", + "VTIGER_USER_NAME": "vTiger User Name", + "MODULE_NAME": "vTiger Module Name", + "ACCESS_KEY": "vTiger Access Key", + "ADD_VTIGERACCOUNT": "Add new vTiger Account", + "EDIT_VTIGERACCOUNT": "Edit vTiger Account", + "TEST_VTIGERACCOUNT": "Test vTiger Account", + "DELETE_VTIGERACCOUNT": "Delete vTiger Account", + "NEW_VTIGERACCOUNT": "New vTiger Account", + "NEW_VTIGERCONFIGURATION": "Create vTiger Configuration", + "DELETE_VTIGERCONFIGURATION": "Delete vTiger Configuration", + "ADD_VTIGERCONFIGURATION": "Add vTiger Configuration", + "FRESHSALESACCOUNTS": "Freshsales Accounts", + "EDIT_FRESHSALESACCOUNT": "Edit Freshsales Account", + "DELETE_FRESHSALESACCOUNT": "Delete Freshsales Account", + "NEW_FRESHSALESACCOUNT": "New Freshsales Account", + "ADD_FRESHSALESACCOUNT": "Add Freshsales Account", + "NO_FRESHSALESCONFIGURATION_AVAILABLE": "No Freshsales Configurations available", + "NEW_FRESHSALESCONFIGURATION": "New Freshsales Configuration", + "ADD_FRESHSALESCONFIGURATION": "Add Freshsales Configuration", + "EDIT_FRESHSALESCONFIGURATION": "Edit Freshsales Configuration", + "DELETE_FRESHSALESCONFIGURATION": "Delete Freshsales Configuration", + "TEST_FRESHSALESACCOUNT": "Test Freshsales Account", + "SERVICENOWACCOUNTS": "ServiceNow Accounts", + "ADD_SERVICENOWACCOUNT": "Add new ServiceNow Account", + "EDIT_SERVICENOWACCOUNT": "Edit ServiceNow Account", + "TEST_SERVICENOWACCOUNT": "Test ServiceNow Account", + "DELETE_SERVICENOWACCOUNT": "Delete ServiceNow Account", + "NEW_SERVICENOWACCOUNT": "New ServiceNow Account", + "NEW_SERVICENOWCONFIGURATION": "Create ServiceNow Configuration", + "DELETE_SERVICENOWCONFIGURATION": "Delete ServiceNow Configuration", + "ADD_SERVICENOWCONFIGURATION": "Add ServiceNow Configuration", + "DYNAMICS365ACCOUNTS": "Dynamics365 Accounts", + "TENANTID": "Tenant Id", + "ADD_DYNAMICS365ACCOUNT": "Add new Dynamics365 Account", + "EDIT_DYNAMICS365ACCOUNT": "Edit Dynamics365 Account", + "TEST_DYNAMICS365ACCOUNT": "Test Dynamics365 Account", + "DELETE_DYNAMICS365ACCOUNT": "Delete Dynamics365 Account", + "NEW_DYNAMICS365ACCOUNT": "New Dynamics365 Account", + "NEW_DYNAMICS365CONFIGURATION": "Create Dynamics365 Configuration", + "DELETE_DYNAMICS365CONFIGURATION": "Delete Dynamics365 Configuration", + "ADD_DYNAMICS365CONFIGURATION": "Add Dynamics365 Configuration", + "TICKETTYPE": "Ticket Type", + "CASE": "Case", + "LEADID": "Lead Id", + "ADDITIONALSEARCHACCOUNT": "Additional Search Account", + "ADDITIONALSEARCHCONTACT": "Additional Search Contact", + "ADDITIONALSEARCHLEAD": "Additional Search Lead", + "PHONECALL": "Phonecall", + "TASK": "Task", + "DYNAMIC365CONTACT": "Contact", + "DYNAMIC365NOTHING": "Nothing", + "MODERN_AUTHENTICATION": "Modern Authentication", + "OPENNEWTAB": "Open new tab" + } +} diff --git a/public/app/main/apps/jscripty/i18n/bs.json b/public/app/main/apps/jscripty/i18n/bs.json new file mode 100644 index 0000000..c5e12d7 --- /dev/null +++ b/public/app/main/apps/jscripty/i18n/bs.json @@ -0,0 +1,228 @@ +{ + "JSCRIPTY": { + "CLONE_PROJECT": "Clone Project", + "NAME": "Name", + "SEARCH_FOR_ANYONE": "Search", + "BACK": "Back", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "DESCRIPTION": "Description", + "ERRORS": { + "NAME_REQUIRED": "Mandatory field", + "PROJECT_REQUIRED": "Mandatory field", + "FIELD_REQUIRED": "Mandatory field", + "NAME_MUST_VALID_PATTERN": "Wrong format" + }, + "SAVE": "Save", + "PROJECTS": "Projects", + "ADD_PROJECT": "Add Project", + "EDIT_PROJECT": "Edit Project", + "DELETE_PROJECT": "Delete Project", + "JSCRIPTY": "Jscripty", + "ID": "Id", + "PROJECT": "Project", + "CREATED_AT": "Created At", + "NEW_PROJECT": "New Project", + "EDIT": "Edit", + "SETTINGS": "Settings", + "GENERAL": "General", + "BUILDER": "Builder", + "PREVIEW": "Preview", + "OPEN_CONTACT": "Open Contact", + "SENDUNPAUSEONSUBMIT": "Unpause agent on Submit", + "HELP": { + "NAME": "Only numbers, letters and specific characters (._) are supported", + "ENABLEUNCOMPLETESAVE": "Allow to save the agent session even if the survey is not complete", + "SENDUNPAUSEONSUBMIT": "At the end of the survey, automatically stop the agent's pause" + }, + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "JSCRIPTYSESSIONS": "Project Sessions", + "SESSIONS": "Sessions", + "STARTTIME": "Start Time", + "ENDTIME": "End Time", + "MEMBERNAME": "Member Name", + "CALLERIDNUM": "Caller Number", + "NO_SESSION_AVAILABLE": "No Sessions available", + "SESSION_RESULTS": "Session Results", + "SHOW_QUESTIONS_SESSION": "Show Session Results", + "ANSWERS": "Answers", + "NO_RESULTS_AVAILABLE": "No results available", + "TOTAL": "Total", + "ANSWER": "Answer", + "EXPORT_TO_CSV": "Export to CSV", + "NO_ANSWERS_AVAILABLE": "No answers available", + "DELETE_SESSION": "Delete Session", + "RESET_SESSION": "Reset Session", + "YES": "Yes", + "NO": "No", + "DO_YOU_WANT_TO_RESET_SESSION": "Do you want to reset the session?", + "ALL_SURVEY_DATA_WILL_BE_LOST": "All survey answers will be lost!", + "ENABLEUNCOMPLETESAVE": "Enable incomplete save", + "SUBMIT": "Submit", + "PROJECT_NOT_AVAILABLE": "Project is not available. Please contact the administrator", + "COMPLETE": "Complete", + "SESSIONS_PROJECT": "Go to Sessions" + }, + "mwForm": { + "form": { + "name": "Title", + "name.placeholder": "Form title", + "description": "Description" + }, + "buttons": { + "addPage": "Add page", + "moveDown": "Move down", + "moveUp": "Move up", + "removePage": "Remove page", + "remove": "Remove", + "addElement": "Add element", + "questionReady": "Ready", + "next": "Next", + "back": "Back", + "submit": "Submit", + "begin": "Begin", + "fold": "Fold", + "unfold": "Unfold", + "edit": "Edit", + "clone": "Clone", + "view": "View" + }, + "page": { + "tab": { + "heading": "Page {{page}} of {{allPages}}" + }, + "elements": { + "empty": "Empty page" + }, + "pageWithNameCheckbox": "named", + "name": "Page name" + }, + "pageFlow": { + "afterPage": "After page {{page}}:", + "afterQuestionAnswer": "Go to page based on answer", + "goToPage": "Go to page {{page.number}}", + "goToNextPage": "Continue to next page", + "submitForm": "Submit form" + }, + "elements": { + "question": "Question", + "image": "Image", + "paragraph": "Paragraph" + }, + "question": { + "types": { + "text": { + "name": "Short text" + }, + "textarea": { + "name": "Long text" + }, + "radio": { + "name": "Radio" + }, + "select": { + "name": "Select" + }, + "checkbox": { + "name": "Checkboxes" + }, + "grid": { + "name": "Grid" + }, + "priority": { + "name": "Priority" + }, + "division": { + "name": "Division" + }, + "number": { + "name": "Number" + }, + "date": { + "name": "Date" + }, + "datetime": { + "name": "Datetime" + }, + "time": { + "name": "Time" + }, + "email": { + "name": "Email" + }, + "range": { + "name": "Range" + }, + "url": { + "name": "URL" + } + }, + "text": "Question text", + "type": "Question type", + "required": "Required", + "preview": { + "text": "Short answer text", + "textarea": "Long answer text", + "otherAnswer": "Other" + }, + "division": { + "quantity": "Quantity", + "unit": "Unit label", + "assignedSumLabel": "Assigned", + "fromRequiredLabel": "from required" + }, + "priority": { + "sorted": "Sorted", + "available": "Available", + "clickToAddItem": "Click to add item" + }, + "grid": { + "cellInputType": "Cell input type", + "cellInputTypes": { + "radio": "Radio", + "checkbox": "Checkbox", + "text": "Text", + "number": "Number", + "date": "Date", + "time": "Time" + }, + "rowLabel": "Row {{row}}", + "clickToAddRow": "Click to add row", + "columnLabel": "Column {{col}}", + "clickToAddColumn": "Click to add column" + }, + "range": { + "from": "Range from", + "to": "to" + }, + "number": { + "min": "Min", + "max": "Max" + }, + "orLabel": "or ", + "otherLabel": "Other: ", + "userAnswer": "User answer", + "buttons": { + "addOption": "Click to add option", + "addOther": "Add 'Other'" + } + }, + "image": { + "selectImageButton": "Select image", + "caption": "Image caption" + }, + "paragraph": { + "placeholder": "Enter paragraph text" + }, + "confirmationPage": { + "title": "Confirmation page", + "customMessage": "Custom confirmation message", + "defaultMessage": "Your response has been saved", + "errorMessage": "Error! Your response has not been saved", + "pendingMessage": "Your response is being saved" + } + } +} diff --git a/public/app/main/apps/mail/i18n/bs.json b/public/app/main/apps/mail/i18n/bs.json new file mode 100644 index 0000000..22a7db6 --- /dev/null +++ b/public/app/main/apps/mail/i18n/bs.json @@ -0,0 +1,346 @@ +{ + "MAIL": { + "ADVANCED": "Advanced", + "DOWNLOAD_WITH_ATTACHMENTS": "Download with attachments", + "DOWNLOAD_WITHOUT_ATTACHMENTS": "Download without attachments", + "DOWNLOAD": "Download", + "LOGIN_TIME": "Login time", + "PAUSE_TIME": "Pause time", + "DOWNLOAD_INTERACTION": "Download", + "YOU_ARE_REGISTERED_AS_A": "You are registered as a", + "TRANSFER": "Transfer", + "QUEUETRANSFER": "Queue Transfer", + "QUEUETRANSFERTIMEOUT": "Queue Transfer Timeout", + "AGENTTRANSFER": "Agent Transfer", + "AGENTTRANSFERTIMEOUT": "Agent Transfer Timeout", + "TAG": "Tag", + "EDIT_TAG": "Edit Tag", + "WAITFORTHEASSIGNEDAGENT": "Wait for the assigned agent", + "NOTIFICATION": "Notification", + "NOTIFICATIONSOUND": "Sound", + "NOTIFICATIONSHAKE": "Shake", + "NOTIFICATIONTEMPLATE": "Template", + "SYSTEM": "System", + "EDIT_SYSTEM": "Edit System", + "COMMAND": "Command", + "VARIABLE": "Variable", + "SEND_AS": "Send as", + "NEW_MAILSUBSTATUS": "New Sub Status", + "ADD_MAILSUBSTATUS": "Add Sub Status", + "MAILSUBSTATUSES": "Email Sub Statuses", + "EDIT_MAILSUBSTATUS": "Edit", + "DELETE_MAILSUBSTATUS": "Delete", + "FONT_FAMILY": "Font Family", + "FONT_SIZE": "Font Size", + "MARK_AS_UNREAD": "Mark as unread", + "ACCEPTED": "Accepted", + "CANNEDANSWERS": "Canned Answers", + "MAILCANNEDANSWERS": "Canned Answers", + "NO_MAILCANNEDANSWER_AVAILABLE": "No Canned Answers Available", + "NEW_MAILCANNEDANSWER": "New Canned Answer", + "ADD_MAILCANNEDANSWER": "Add Canned Answer", + "EDIT_MAILCANNEDANSWER": "Edit Canned Answer", + "DELETE_MAILCANNEDANSWER": "Delete Canned Answer", + "SHOW_ORIGINAL_MESSAGE": "Show original message", + "PENDING": "Pending", + "SEND_AS_PENDING": "Send as Pending", + "SEND_AND_CLOSE": "Send and Close", + "CANNED_ANSWER_NOT_FOUND": "No Canned Answers were found", + "CANNED_ANSWER_SEARCH": "Enter a text to search a Canned Answer", + "SPYINTERACTION": "Spy", + "ADD_NOTE": "Add note", + "NOTE": "Note", + "TAGS": "Tags", + "NO_AGENT_ONLINE": "No Agent Online", + "GOTOREALTIME_MAILQUEUE": "Go To Realtime Mail Queue", + "PARTIALPAUSE": "Parital Pause", + "BUSY": "Busy", + "TIMER": "Timer", + "IDLE": "Idle", + "CAPACITY": "Capacity", + "UNPAUSE": "End Pause", + "DEFAULT_PAUSE": "Default pause", + "LOGOUT": "Logout", + "AGENTADD_QUEUE": "Add agent to Email queue", + "VOICE": "Voice", + "CHAT": "Chat", + "SMS": "Sms", + "OPENCHANNEL": "Open channel", + "FAX": "Fax", + "REALTIME": "Realtime", + "AGENTS": "Agents", + "QUEUES": "Queues", + "ACCOUNTS": "Accounts", + "FULLNAME": "Full Name", + "INTERNAL": "Internal", + "PHONE_STATE": "Phone State", + "PHONE_STATUS": "Phone Status", + "PAUSE": "Pause", + "LOGGED_IN": "Logged In", + "PAUSED": "Paused", + "READY": "Ready", + "WAITING": "Waiting", + "TOTAL": "Total", + "IN": "In", + "OUT": "Out", + "IMAP_STATUS": "IMAP Status", + "SMTP_STATUS": "SMTP Status", + "DISABLED": "Disabled", + "CONNECTED": "Connected", + "NEVER_VERIFIED": "Never Verified", + "ERROR": "Error", + "EDIT_ACCOUNT": "Edit Account", + "VERIFY_SMTP": "Verify SMTP", + "VERIFIED": "Verified", + "VERIFYSMTP_MAILACCOUNT": "Verify SMTP", + "GOTOREALTIME_MAILACCOUNT": "Go to Realtime Email Account", + "GOTO_MAILACCOUNT": "Go to Realtime Email Account", + "TEXT": "Text", + "TIMES": "Number of times per interaction", + "REPLY_TYPE": "Reply Type", + "EDIT_AUTOREPLY": "Edit Auto Reply", + "AUTOREPLY": "Auto Reply", + "SHOW_AUTOREPLY": "Show Auto Reply", + "SHOW_DETAILS": "Show details", + "HIDE_DETAILS": "Hide details", + "TO": "To", + "FROM": "From", + "DATE": "Date", + "CC": "Cc", + "REPLY": "Reply", + "REPLY_ALL": "Reply All", + "FORWARD": "Forward", + "SUBJECT": "Subject", + "BCC": "Bcc", + "SEND": "Send", + "ATTACHMENT": "Attachment", + "ATTACHMENTS": "Attachments", + "NAME": "Name", + "MAILQUEUES": "Email Queues", + "SEARCH_FOR_ANYONE": "Search", + "STRATEGY": "Strategy", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause to use if mandatory disposition is enabled", + "ERRORS": { + "QUEUETRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "QUEUETRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "QUEUETRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "AGENTTRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENTTRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AGENTTRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "TAG_REQUIRED": "Mandatory Field", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "WAITFORTHEASSIGNEDAGENT_REQUIRED": "Mandatory Field", + "AGENT_TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENT_TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "NAME_MUST_VALID_PATTERN": "Wrong format", + "COMMAND_REQUIRED": "Mandatory Field", + "FONT_SIZE_REQUIRED": "Mandatory Field", + "FONT_SIZE_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "FONT_SIZE_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "TEXT_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "VALUE_REQUIRED": "Mandatory Field", + "TEXT_REQUIRED": "Mandatory Field", + "REPLY_TYPE_REQUIRED": "Mandatory Field", + "NAME_REQUIRED": "Mandatory Field", + "AGENT_TIMEOUT_REQUIRED": "Mandatory Field", + "EMAIL_ADDRESS_REQUIRED": "Mandatory Field", + "EMAIL_ADDRESS_MUST_VALID": "Wrong format", + "HOST_REQUIRED": "Mandatory Field", + "USERNAME_REQUIRED": "Mandatory Field", + "PORT_REQUIRED": "Mandatory Field", + "CONNTIMEOUT_REQUIRED": "Mandatory Field", + "AUTHTIMEOUT_REQUIRED": "Mandatory Field", + "ACCEPTURL_MUST_VALID_URL": "Wrong format", + "TIMEOUT_REQUIRED": "Mandatory Field", + "REJECTURL_MUST_VALID_URL": "Wrong format", + "CLOSEURL_MUST_VALID_URL": "Wrong format", + "AGENT_REQUIRED": "Mandatory Field", + "TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "DISPOSITION_REQUIRED": "Mandatory Field", + "CONDITION_REQUIRED": "Mandatory Field", + "TRUEPRIORITY_REQUIRED": "Mandatory Field", + "FALSEPRIORITY_REQUIRED": "Mandatory Field", + "TRUEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "FALSEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "PRIORITY_REQUIRED": "Mandatory Field", + "PRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "QUEUE_REQUIRED": "Mandatory Field", + "LIST_REQUIRED": "Mandatory Field", + "PASSWORD_REQUIRED": "Mandatory Field", + "SERVICE_REQUIRED": "Mandatory Field", + "IMAP_HOST_REQUIRED": "Mandatory Field", + "IMAP_PORT_REQUIRED": "Mandatory Field", + "SMTP_HOST_REQUIRED": "Mandatory Field", + "SMTP_PORT_REQUIRED": "Mandatory Field", + "CONFIRM_NOT_MATCH": "The passwords inserted don't match", + "KEY_MAX_LENGTH": "Key must have a maximum length equal to {{max}}", + "KEY_REQUIRED": "Mandatory Field", + "MANDATORYDISPOSITIONPAUSEID_REQUIRED": "Mandatory field", + "FIELD_REQUIRED": "Mandatory field" + }, + "AGENT_TIMEOUT": "Agent Timeout", + "DESCRIPTION": "Description", + "ADD_MAILQUEUE": "Add Email Queue", + "EDIT_MAILQUEUE": "Edit Email Queue", + "DELETE_MAILQUEUE": "Delete Email Queue", + "SETTINGS": "Settings", + "GENERAL": "General", + "SAVE": "Save", + "MAILACCOUNTS": "Email Accounts", + "EMAIL_ADDRESS": "Email Address", + "ADD_MAILACCOUNT": "Add Email Account", + "EDIT_MAILACCOUNT": "Edit Email Account", + "DELETE_MAILACCOUNT": "Delete Email Account", + "DISPOSITIONS": "Dispositions", + "WEBHOOKS": "WebHooks", + "ACTIONS": "Actions", + "OTHERS": "Others", + "LIST": "List", + "TEMPLATE": "Template", + "FIDELITY": "Fidelity", + "SERVICE": "Service", + "CREATED_AT": "Created At", + "ACCEPT": "Accept", + "ACCEPTMETHOD": "Accept Method", + "ACCEPTURL": "Accept URL", + "REJECT": "Reject", + "REJECTMETHOD": "Reject Method", + "REJECTURL": "Reject URL", + "CLOSE": "Close", + "CLOSEMETHOD": "Close Method", + "CLOSEURL": "Close URL", + "WHITELABEL": "White Label", + "SIGNATURE": "Signature", + "IMAP": "IMAP", + "HOST": "Host", + "USERNAME": "Username", + "PORT": "Port", + "MAILBOX": "Mailbox", + "FILTER": "Filter", + "CONNTIMEOUT": "Connection Timeout [sec]", + "AUTHTIMEOUT": "Authentication Timeout [sec]", + "DELETE": "Delete Email From Server", + "SSL": "SSL", + "KEEPALIVE": "Keepalive", + "POLLING": "Polling", + "SMTP": "SMTP", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "BACK": "Back", + "MAIL": "Email", + "ID": "Id", + "TIMEOUT": "Timeout", + "PASSWORD": "Password", + "NO_MAILDISPOSITION_AVAILABLE": "No Email Dispositions available", + "ADD_MAILDISPOSITION": "Add Email Disposition", + "NEW_MAILDISPOSITION": "New Email Disposition", + "EDIT_MAILDISPOSITION": "Edit Email Disposition", + "DELETE_MAILDISPOSITION": "Delete Email Disposition", + "MAILDISPOSITIONS": "Email Dispositions", + "NEW_MAILQUEUE": "New Email Queue", + "NEW_MAILACCOUNT": "New Email Account", + "NO_AVAILABLE_INFO": "No availables info", + "ALL_TEAMS": "All Teams", + "SELECTED_TEAMS": "Selected Teams", + "HELP": { + "FONT_FAMILY": "Default Font Family", + "FONT_SIZE": "Default Font Size", + "NAME": "Only numbers, letters and specific characters (._) are supported", + "USERNAME": "Username used for authentication", + "PASSWORD": "Password used for authentication", + "SECURE": "If true, the connection will use TLS when connecting to server", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause to use when mandatory disposition is enabled", + "MARK_AS_UNREAD": "Enable/Disable agent to mark as unread the last message of an interaction", + "CLOUD_PROVIDER": "Cloud Provider used for authentication" + }, + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "TEAMADD_MAILQUEUE": "Add Team to Email Queue", + "AGENTADD_MAILQUEUE": "Add Agent to Email Queue", + "ALL_AGENTS": "All Agents", + "SELECTED_AGENTS": "Selected Agents", + "AGENT": "Agent", + "EDIT_AGENT": "Edit Agent", + "EDIT_CLOSE": "Edit Close", + "DISPOSITION": "Disposition", + "GOTOIF": "GotoIf", + "EDIT_GOTOIF": "Edit GotoIf", + "CONDITION": "Condition", + "TRUEPRIORITY": "True Priority", + "FALSEPRIORITY": "False Priority", + "GOTOP": "GotoP", + "EDIT_GOTOP": "Edit GotoP", + "PRIORITY": "Priority", + "NOOP": "Noop", + "EDIT_NOOP": "Edit Noop", + "VALUE": "Value", + "QUEUE": "Queue", + "EDIT_QUEUE": "Edit Queue", + "INTERACTIONS": "Interactions", + "STARTEDAT": "Started At", + "LASTMESSAGE": "Last message", + "CONTACT": "Contact", + "CLOSEDAT": "Closed At", + "NOTES": "Notes", + "NO_INTERACTION_AVAILABLE": "No interactions available", + "ACTIVE": "Active", + "SECURE": "Secure", + "AUTHENTICATION": "Authentication", + "SMTP_HOST": "SMTP Host", + "SMTP_PORT": "SMTP Port", + "IMAP_HOST": "IMAP Host", + "IMAP_PORT": "IMAP Port", + "CONFIRM_PASSWORD": "Confirm Password", + "SELECT_STATUS": "Select Status", + "OPENED": "Open", + "CLOSED": "Closed", + "ALL": "All", + "SELECT_ACCOUNT": "Select Account", + "STATUS": "Status", + "ACCOUNT": "Account", + "OPEN": "Open", + "KEY": "Key", + "SMTPSERVICE": "SMTP Service", + "UNKNOWN": "Unknown", + "UNREGISTERED": "Unregistered", + "UNAVAILABLE": "Unavailable", + "NOT_INUSE": "Not in use", + "REACHABLE": "Reachable", + "IN_USE": "In use", + "AGENTSADD_QUEUE": "Add agents to Email Queue", + "INFO": "Info", + "INTERACTIONS_MAILACCOUNT": "Go to Interactions", + "REFRESH_INTERACTIONS": "Refresh Interactions", + "DELETE_INTERACTION": "Delete Interaction", + "AGENTADD_MAILACCOUNT": "Add Agent to Email Account", + "TEAMS_ASSOCIATION": "Teams Association", + "TOOLTIP_SCREENRECORDING_ON": "Screen Recording in progress", + "TOOLTIP_SCREENRECORDING_OFF": "Screen Recording available", + "DOWNLOAD_WITH_ATTACHMENT": "Download with attachment", + "DOWNLOAD_WITHOUT_ATTACHMENT": "Download without attachment", + "MODERN_AUTHENTICATION": "Modern Authentication", + "CLOUD_PROVIDER": "Cloud Provider", + "CUSTOM": "Custom", + "CREDENTIALS": "Credentials", + "NOTIFICATIONS": { + "ACCOUNT_CREATED_SUCCESS_TITLE": "Account successfully created", + "ACCOUNT_SAVED_SUCCESS_TITLE": "Account successfully saved", + "ACCOUNT_DELETE_TITLE": "Are you sure want to delete the account?", + "ACCOUNT_DELETE_MESSAGE": "{{ name }} will be deleted", + "ACCOUNT_DELETED_SUCCESS_TITLE": "Account successfully deleted", + "ACCOUNT_SERVICE_DELETE": "You cannot delete a service account", + "ACCOUNTS_DELETE_TITLE": "Are you sure want to delete the selected accounts?", + "ACCOUNTS_DELETE_MESSAGE": "{{ total }} accounts will be deleted", + "ACCOUNTS_DELETED_SUCCESS_TITLE": "Accounts successfully deleted", + "SMTP_CONNECTION_SUCCESS_TITLE": "Successfully connected to the SMTP server", + "SMTP_CONNECTION_FAIL_TITLE": "Unable to connect to the SMTP server", + "UNKNOWN_SMTP_SERVER": "Unknown STMP server" + } + } +} diff --git a/public/app/main/apps/marketplace/i18n/bs.json b/public/app/main/apps/marketplace/i18n/bs.json new file mode 100644 index 0000000..e80fbe2 --- /dev/null +++ b/public/app/main/apps/marketplace/i18n/bs.json @@ -0,0 +1,51 @@ +{ + "MARKETPLACE": { + "MARKETPLACE": "App Zone", + "PLUGINS": "Plugins", + "BACK": "Back", + "SEARCH_FOR_ANYONE": "Search", + "SELECTED": "Selected", + "SELECT_ALL": "Select all", + "SELECT_NONE": "Select none", + "NAME": "Name", + "DESCRIPTION": "Description", + "ACTIVE": "Active", + "TYPE": "Type", + "ICON": "Icon", + "ADMINURL": "Admin url", + "AGENTURL": "Agent url", + "SCRIPTNAME": "Script name", + "SCRIPTPATH": "Script path", + "SIDEBAR": "Sidebar", + "VERSION": "Version", + "NO_AVAILABLE_INFO": "No available info", + "MORE": "More", + "INSTALL_PLUGIN": "Install plugin", + "EDIT_PLUGIN": "Edit plugin", + "STOP_PLUGIN": "Stop plugin", + "RESTART_PLUGIN": "Restart plugin", + "DOWNLOAD_PLUGIN": "Download plugin", + "UNINSTALL_PLUGIN": "Uninstall plugin", + "DELETE_PLUGIN": "Remove plugin", + "CANCEL": "Cancel", + "FINISH": "Finish", + "DELETE": "Delete", + "SAVE": "Save", + "INSTALLING": "Installing", + "DROP_TO_UPLOAD": "Drop To Upload", + "DROP_TO_UPLOAD_MESSAGE": "Drop your file here to upload. Only ZIP - Max. 2MB", + "UPLOAD_PLUGIN": "Upload plugin", + "UPLOADING": "Uploading", + "CREATED_AT": "Created at", + "GENERAL": "General", + "SETTINGS": "Settings", + "EDITOR": "Editor", + "ERRORS": { + "URL_REQUIRED": "Mandatory field" + }, + "HELP": {}, + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of" + } +} diff --git a/public/app/main/apps/motiondialer/i18n/bs.json b/public/app/main/apps/motiondialer/i18n/bs.json new file mode 100644 index 0000000..6b63309 --- /dev/null +++ b/public/app/main/apps/motiondialer/i18n/bs.json @@ -0,0 +1,701 @@ +{ + "MOTIONDIALER": { + "SECOND_LEVEL_DISPOSITION": "Second Level Disposition", + "THIRD_LEVEL_DISPOSITION": "Third Level Disposition", + "ONE_CALL_EVERY": "One call every", + "CURRENT_INTERVAL": "Current Interval", + "PREVIOUS_INTERVAL": "Previous Interval", + "PREDICTIVE_IS_RUNNING": "Predictive is running", + "PREDICTIVE_IS_NOT_RUNNING": "Predictive is not running", + "DATA_COLLECTION_IN_PROGRESSIVE": "Data collection in Progressive", + "SHOW_PREDICTIVE_QUEUE_CAMPAIGN_INFO": "Show Predictive Info", + "AVG_TALK_TIME": "Avg Talk Time", + "ANSWERED_CALLS": "Answered Calls", + "TOTAL_CALLS": "Total Calls", + "THRESHOLDS": "Thresholds", + "PREDICTIVEMAXTHRESHOLD": "Predictive Max Threshold [%]", + "PREDICTIVEMINTHRESHOLD": "Predictive Min Threshold [%]", + "REFRESH_SCHEDULED_CALLS": "Refresh Scheduled Calls", + "RECALLINQUEUE": "Recall in queue", + "SELECT_DATE": "Select Date", + "SELECT_TYPE": "Select Type", + "SELECT_CAMPAIGN": "Select Campaign", + "SCHEDULED_CALLS": "Scheduled Calls", + "LOGIN_TIME": "Login time", + "PAUSE_TIME": "Pause time", + "PREVIEW_RECALL_ME_REMINDER": "Recall Me Reminder", + "CUTDIGIT": "Cut Digits", + "RANDOMLASTDIGITCALLERIDNUMBER": "Random Outgoing CallerId Number", + "CLONE_IVRCAMPAIGN": "Clone Campaign", + "CLONE_QUEUECAMPAIGN": "Clone Queue Campaign", + "ABANDONEDCALLS": "Abandoned Queue Calls", + "HOPPERWIDGET": "Summary", + "RESETLIST_IVRCAMPAIGN": "Reset Lists", + "RESETLIST_QUEUECAMPAIGN": "Reset Lists", + "RESET": "Reset", + "RESETLIST": "Reset Lists", + "SELECTALL": "Select All", + "UNSELECTALL": "Un-Select All", + "NO_AVAILABLE_INFO": "No available info", + "TIMEOUT": "Timeout", + "CALLYSQUAREPROJECTPREVIEW": "Cally Square Project Preview", + "CALLYSQUAREPROJECTPREVIEW2": "Cally Square Project After Preview", + "RUNIFHANGUPAGENT": "Run Cally Square Project After even if the agent hangs up the call", + "CALLYSQUAREPROJECT2": "Cally Square Project After Queue", + "NO_AGENT_ONLINE": "No Agent Online", + "PARTIALPAUSE": "Parital Pause", + "ALL": "All", + "IDLE": "Idle", + "TIMER": "Timer", + "MOVE_HOPPERFINAL": "Restore contact", + "RESTORECONTACTS": "Restore Contacts", + "NO_SUCH_NUMBER": "No Such Number", + "ANSWERING_MACHINE": "Answering machine", + "DIALORDERBYSCHEDULEDAT": "Order By scheduledat", + "ASC": "ASC", + "DESC": "DESC", + "RECALLAGENT": "Recall Agent", + "DIALRECALLINQUEUE": "Recall In Queue", + "DIALRECALLMETIMEOUT": "Recall Me Timeout [min]", + "RECALLME": "Recall Me", + "RECALLFAILEDTIMEOUT": "Recall Failed", + "PREVIEW_CAMPAIGN": "Preview Campaigns", + "PREVIEW_CAMPAIGNS": "Preview Campaigns", + "AMD": "Asterisk Answering Machine Detection (AMD)", + "AMDTOTALANALYSISTIME": "Total Analysis Time", + "AMDACTIVE": "AMD", + "AMDINITIALSILENCE": "Initial Silence", + "AMDGREETING": "Greeting", + "AMDAFTERGREETINGSILENCE": "Silence after Greeting", + "AMDSILENCETHRESHOLD": "Silence Threshold", + "AMDMINWORDLENGTH": "Min Word Length", + "AMDBETWEENWORDSSILENCE": "Silence Between Words", + "AMDMAXIMUMWORDLENGTH": "Maximum Word Length", + "AMDMAXIMUMNUMBEROFWORDS": "Maximum Number Of Words", + "GOTO_QUEUECAMPAIGN": "Go To Realtime Queue Campaigns", + "GOTOREALTIME_QUEUECAMPAIGN": "Go To Realtime Queue Campaigns", + "GOTO_IVRCAMPAIGN": "Go To Realtime IVR Campaigns", + "GOTOREALTIME_IVRCAMPAIGN": "Go To Realtime IVR Campaigns", + "LOGOUT": "Logout", + "EDIT_CAMPAIGN": "Edit Campaign", + "LIMITED": "Limited", + "IVR_CAMPAIGNS": "IVR Campaigns", + "MOTIONDIALER": "Motion Bull", + "QUEUECAMPAIGNS": "Queue Campaigns", + "IVRCAMPAIGNS": "IVR Campaigns", + "MANAGED": "Managed", + "AVAILABLE_CONTACTS_FINISHED": "Available contacts finished", + "HISTORY": "History", + "SCHEDULEDAT": "Scheduled At", + "HOPPERBLACKS": "Hopper Blacklist", + "NO_HOPPERBLACK_AVAILABLE": "No items available", + "HOPPERFINALS": "Hopper Final", + "NO_HOPPERFINAL_AVAILABLE": "No items available", + "HOPPERHISTORIES": "Call history", + "NO_HOPPERHISTORY_AVAILABLE": "No items available", + "DELETE_HOPPERHISTORY": "Delete", + "DELETE_HOPPERFINAL": "Delete", + "CONTACTID": "Contact ID", + "STARTTIME": "Start Time", + "RESPONSETIME": "Response Time", + "ENDTIME": "End Time", + "STATUS": "Status", + "HOPPERS": "Hopper", + "NO_HOPPER_AVAILABLE": "No items available", + "EDIT_HOPPER": "Edit Hopper", + "DELETE_HOPPER": "Delete Hopper", + "FINAL": "Final", + "BLACKLIST": "Blacklist", + "NAME": "Name", + "VOICEQUEUES": "Voice Queues", + "SEARCH_FOR_ANYONE": "Search", + "BACK": "Back", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "DELETE_VOICEDISPOSITION": "Delete Voice Disposition", + "EDIT_VOICEDISPOSITION": "Edit Voice Disposition", + "EDIT_VOICEQUEUE": "Edit Voice Queue", + "DELETE_VOICEQUEUE": "Delete Voice Queue", + "MOHSOUNDS": "Moh Sounds", + "STRATEGY": "Strategy", + "DESCRIPTION": "Description", + "INTERVAL": "Time Interval", + "ADD_VOICEQUEUE": "Add Voice Queue", + "NEW_QUEUECAMPAIGN": "New Queue Campaign", + "ACTIVE": "Active", + "METHOD": "Method", + "POWERLEVEL": "Power Level", + "DROPRATE": "Drop Rate", + "AGENTBUSYFACTOR": "Agent Busy Factor", + "PREDICTIVEOPTIMIZATION": "Predictive Optimization", + "PREDICTIVEOPTIMIZATIONPERCENTAGE": "Predictive Optimization Percentage", + "PREDICTIVEINTERVAL": "Predictive Interval", + "ADD_QUEUECAMPAIGN": "Add Queue Campaign", + "CAMPAIGN": "Campaign", + "MAXCONCURRENTCALLS": "Max Concurrent Calls", + "CONCURRENTCALLS": "Max Concurrent Calls", + "ORIGINATE": "Originate", + "ORIGINATECALLERIDNAME": "Caller ID Name", + "ORIGINATECALLERIDNUMBER": "Caller ID Number", + "ORIGINATETIMEOUT": "Originate Timeout", + "QUEUEOPTIONS": "Queue Options", + "QUEUETIMEOUT": "Queue Timeout", + "CALLYSQUAREPROJECT": "Cally Square Project", + "RETRYANDFREQUENCY": "Retry Settings", + "GLOBAL": "Global", + "GLOBALMAXRETRY": "Max Retries", + "CONGESTION": "Congestion", + "CONGESTIONMAXRETRY": "Max Retries", + "CONGESTIONRETRYTIME": "Retry Time [min]", + "BUSYMAXRETRY": "Max Retries", + "BUSYRETRYTIME": "Retry Time [min]", + "NOANSWER": "No Answer", + "NOANSWERMAXRETRY": "Max Retries", + "NOANSWERRETRYTIME": "Retry Time [min]", + "NOSUCHNUMBER": "No such number", + "NOSUCHNUMBERMAXRETRY": "Max Retries", + "NOSUCHNUMBERRETRYTIME": "Retry Time [min]", + "DROP": "Drop", + "DROPMAXRETRY": "Max Retries", + "DROPRETRYTIME": "Retry Time [min]", + "ABANDONEDMAXRETRY": "Max Retries", + "ABANDONEDRETRYTIME": "Retry Time [min]", + "MACHINE": "Machine", + "MACHINEMAXRETRY": "Max Retries", + "MACHINERETRYTIME": "Retry Time [min]", + "AGENTREJECT": "Agent Reject", + "AGENTREJECTMAXRETRY": "Max Retries", + "AGENTREJECTRETRYTIME": "Retry Time [min]", + "CALLADDITIONALPHONEAFTERMIN": "Call additional phone after [min]", + "ADDITIONALPHONES": "Additional phones", + "QUEUE_PARAMS": "Queue Parameters", + "ORIGINATED": "Originated", + "MESSAGE": "Message", + "DROPPED": "Dropped", + "CREATED_AT": "Created At", + "LEGEND": { + "CUSTOM_APPLICATION": "(*) - Custom application." + }, + "ERRORS": { + "AGENT_REQUIRED": "Mandatory field", + "CUTDIGIT_REQUIRED": "Mandatory field", + "CUTDIGIT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "CUTDIGIT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "RANDOMLASTDIGITCALLERIDNUMBER_REQUIRED": "Mandatory field", + "RANDOMLASTDIGITCALLERIDNUMBER_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "RANDOMLASTDIGITCALLERIDNUMBER_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AGENTTIMEOUT_REQUIRED": "Mandatory field", + "INTERVAL_REQUIRED": "Mandatory field", + "EMAIL_REQUIRED": "Mandatory field", + "DIALRECALLMETIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "DIALRECALLMETIMEOUT_REQUIRED": "Mandatory field", + "NAME_MUST_VALID_PATTERN": "Wrong format", + "PREFIX_MUST_VALID_PATTERN": "Wrong format", + "NAME_REQUIRED": "Mandatory field", + "TIMEOUT_REQUIRED": "Mandatory field", + "PHONENUMBER_REQUIRED": "Mandatory field", + "CONTEXT_REQUIRED": "Mandatory field", + "DESTINATIONPATTERN_REQUIRED": "Mandatory field", + "FULLNAME_REQUIRED": "Mandatory field", + "EMAIL_REQUUIRED": "Mandatory field", + "EMAIL_MUST_VALID": "Wrong format", + "MAILBOX_REQUIRED": "Mandatory Field", + "PASSWORD_REQUIRED": "Mandatory field", + "CONFIRM_NOT_MATCH": "The passwords don't match", + "TIMEZONE_REQUIRED": "Mandatory field", + "PREFIX_REQUIRED": "Mandatory field", + "OPTIONS_REQUIRED": "Mandatory field", + "AFTERCALLWORKDURATION_REQUIRED": "Mandatory field", + "TECHNOLOGY/RESOURCE_REQUIRED": "Mandatory field", + "PHONE_REQUIRED": "Mandatory field", + "VALUE_REQUIRED": "Mandatory field", + "EXTENSION_REQUIRED": "Mandatory field", + "PRIORITY_REQUIRED": "Mandatory field", + "GLOBALMAXRETRY_REQUIRED": "Mandatory field", + "CONGESTIONMAXRETRY_REQUIRED": "Mandatory field", + "CONGESTIONRETRYTIME_REQUIRED": "Mandatory field", + "BUSYMAXRETRY_REQUIRED": "Mandatory field", + "BUSYRETRYTIME_REQUIRED": "Mandatory field", + "NOANSWERMAXRETRY_REQUIRED": "Mandatory field", + "NOANSWERRETRYTIME_REQUIRED": "Mandatory field", + "QUEUETIMEOUT_REQUIRED": "Mandatory field", + "ORIGINATETIMEOUT_REQUIRED": "Mandatory field", + "GLOBALINTERVAL_REQUIRED": "Mandatory field", + "MAXCONCURRENTCALLS_REQUIRED": "Mandatory field", + "CONCURRENTCALLS_REQUIRED": "Mandatory field", + "NOSUCHNUMBERMAXRETRY_REQUIRED": "Mandatory field", + "NOSUCHNUMBERRETRYTIME_REQUIRED": "Mandatory field", + "DROPMAXRETRY_REQUIRED": "Mandatory field", + "DROPRETRYTIME_REQUIRED": "Mandatory field", + "ABANDONEDMAXRETRY_REQUIRED": "Mandatory field", + "ABANDONEDRETRYTIME_REQUIRED": "Mandatory field", + "MACHINEMAXRETRY_REQUIRED": "Mandatory field", + "MACHINERETRYTIME_REQUIRED": "Mandatory field", + "AGENTREJECTMAXRETRY_REQUIRED": "Mandatory field", + "AGENTREJECTRETRYTIME_REQUIRED": "Mandatory field", + "POWERLEVEL_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "PREDICTIVEOPTIMIZATIONPERCENTAGE_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "PREDICTIVEINTERVAL_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MAXCONCURRENTCALLS_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "ORIGINATETIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "QUEUETIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AGENTTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "RETRY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "WRAPUPTIME_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "WEIGHT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "GLOBALMAXRETRY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "CONGESTIONMAXRETRY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "CONGESTIONRETRYTIME_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "BUSYMAXRETRY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "BUSYRETRYTIME_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "NOANSWERMAXRETRY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "NOANSWERRETRYTIME_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "CONCURRENTCALLS_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "POWERLEVEL_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "PREDICTIVEOPTIMIZATIONPERCENTAGE_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "PREDICTIVEINTERVAL_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "MAXCONCURRENTCALLS_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "ORIGINATETIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "QUEUETIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "GLOBALMAXRETRY_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "CONGESTIONMAXRETRY_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "CONGESTIONRETRYTIME_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "BUSYMAXRETRY_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "BUSYRETRYTIME_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "NOANSWERMAXRETRY_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "NOANSWERRETRYTIME_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "NOSUCHNUMBERMAXRETRY_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "NOSUCHNUMBERRETRYTIME_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "DROPMAXRETRY_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "DROPRETRYTIME_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "ABANDONEDMAXRETRY_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "ABANDONEDRETRYTIME_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "MACHINEMAXRETRY_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "MACHINERETRYTIME_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENTREJECTMAXRETRY_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENTREJECTRETRYTIME_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "CONCURRENTCALLS_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "MANDATORYDISPOSITIONPAUSEID_REQUIRED": "Mandatory field", + "CALLYSQUAREPROJECT_REQUIRED": "Mandatory field", + "TRUNK_REQUIRED": "Mandatory field", + "CALLADDITIONALPHONEAFTERMIN_REQUIRED": "Mandatory field", + "CALLADDITIONALPHONEAFTERMIN_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "Call add.phone after min. should be greater than or equal to" + }, + "GENERAL": "General", + "AGENTTIMEOUT": "Agent Timeout", + "MAXLENGTH": "Maximum Length", + "RETRY": "Retry", + "WRAPUPTIME": "Wrapup Time", + "WEIGHT": "Weight", + "JOINWHENEMPTY": "Join when empty", + "LEAVEWHENEMPTY": "Leave when empty", + "HELP": { + "PREDICTIVEMAXTHRESHOLD": "If the percentage of agents available in the time window, compared to the agents available at the time of prediction, exceeds the configured maximum limit, the predictive recalculates the prediction. ", + "PREDICTIVEMINTHRESHOLD": "If the percentage of agents available in the time window, compared to the agents available at the time of prediction, exceeds the configured minimum limit, the predictive recalculates the prediction.", + "RANDOMLASTDIGITCALLERIDNUMBER": "If greater than 0, it generates randomly the corresponding last digits of the Outgoing Caller Id Number", + "TIMEOUT": "Number of seconds to ring agent in queue", + "CALLYSQUAREPROJECTPREVIEW": "Selecting an IVR project, the dialer will forward the call to the IVR when an agent answers (the IVR will be directed to the agent)", + "CALLYSQUAREPROJECTPREVIEW2": "Selecting an IVR project, the dialer will forward the call to the IVR when an client hangup or unreachable (the IVR will be directed to the agent)", + "RUNIFHANGUPAGENT": "Run Cally Square Project After even if the agent hangs up the call", + "CALLYSQUAREPROJECT2": "Selecting an IVR project, the dialer will forward the call to the IVR after the queue (if the queue ends by timeout)", + "DIALORDERBYSCHEDULEDAT": "Get contacts from hopper (descending or ascending).", + "DIALRECALLINQUEUE": "Reschedule call for agents in the Queue", + "DIALRECALLMETIMEOUT": "Time interval (in minutes) for Recall Me period of validity", + "PRIORITY": "Priority in the list", + "TIMEZONE": "Specify timezone", + "PREVIEW_RECALL_ME_REMINDER": "If enabled, the system will send a notification to the agent n minutes (according to time interval set in general settings) before generating the recall me", + "AMDMAXIMUMWORDLENGTH": "Maximum duration allowed of a single Voice utterance", + "AMDMINWORDLENGTH": "Minimum duration of a Voice to be considered a word", + "AMDSILENCETHRESHOLD": "If the average level of noise in a sample does not reach this value, from a scale of 0 to 32767, then we will consider it as silence", + "AMDTOTALANALYSISTIME": "Maximum time allowed for the algorithm to decide on whether the audio represents a HUMAN or a MACHINE", + "AMDAFTERGREETINGSILENCE": "Silence after detecting a greeting. If exceeded, then the result is detection as a HUMAN", + "AMDGREETING": "Maximum length of a greeting. If exceeded, then the result is detection as a MACHINE", + "AMDINITIALSILENCE": "Maximum silence duration before the greeting. If exceeded, then the result is detection as a MACHINE", + "AMDACTIVE": "Activate or disactivate answering machines detection attempts", + "AMDBETWEENWORDSSILENCE": "Minimum duration of silence after a word to consider the audio that follows as a new word", + "AMDMAXIMUMNUMBEROFWORDS": "Maximum number of words in the greeting. If REACHED, then the result is detection as a MACHINE", + "CALLYSQUAREPROJECT": "Selecting an IVR project, the dialer will forward the call to the IVR before the queue", + "PREFIX": "Telephone prefix", + "ACTIVE": "Active", + "AGENTTIMEOUT": "How long (in seconds) to ring an agent’s device", + "MAXLENGTH": "Maximum number of callers allowed to be waiting in a queue (0=unlimited)", + "RETRY": "How long (in seconds) to wait before calling the next agent in the queue when the agent timeout is expired", + "WRAPUPTIME": "How long (in seconds) to keep an agent unavailable in a queue after completing a call", + "WEIGHT": "Used to determine priority if the agents are associated with more than one queue", + "JOINWHENEMPTY": "If a caller is added to the queue, when no agents are available", + "LEAVEWHENEMPTY": "If a caller is expelled from the queue when no agents are available", + "ANNOUNCEFREQUENCY": "How often to announce the caller’s position and/or estimated hold time in the queue (0=disable)", + "MINANNOUNCEFREQUENCY": "Minimum announcement frequency (useful when the caller’s position changes frequently)", + "PERIODICANNOUNCEFREQUENCY": "Frequency of periodic announcements to the caller", + "ANNOUNCEPOSITIONLIMIT": "Used if you’ve defined announce-position as either 'limit' or 'more'", + "AFTERCALLWORKDURATION": "Pause length triggered by the After Call Work option", + "MEMBERDELAY": "Inserts a delay prior to the caller and agent in queue get connected", + "MUSICONHOLD": "Sets the music class to use for a particular queue", + "ANNOUNCETOAGENT": "Plays an announcement to the agent answering the call (e.g. to let him know which queue the caller is coming from)", + "RANDOMPERIODICANNOUNCE": "If yes, it plays the periodic announcements in random order", + "ANNOUNCEHOLDTIME": "Plays the estimated hold time along with the periodic announcements (Yes/No/Once)", + "ANNOUNCECALLERPOSITION": "Used to define if the caller’s position in the queue should be announced: No=never; Yes=always; Limit=only if it is within the limit defined by announce-position-limit; More= only if it is beyond the value defined by announce-position-limit", + "REPORTHOLDTIMEAGENT": "Enables reporting caller’s hold time to the agent in queue prior to connection", + "PERIODICANNOUNCE": "Set of periodic announcements to be played (in the order)", + "HOLDTIMEANNOUNCE": "Choose a Sound defined in Tools. Default=“Hold time”. Undefined=no announcement", + "YOUARENEXTANNOUNCE": "Choose a Sound defined in Tools. Default=“You are now first in line”. Undefined=no announcement", + "THEREAREANNOUNCE": "Choose a Sound defined in Tools. Default=“There are”. Undefined=no announcement", + "WAITINGCALLSANNOUNCE": "Choose a Sound defined in Tools. Default=“calls waiting”. Undefined=no announcement", + "ESTIMATEDHOLDTIMEANNOUNCE": "Choose a Sound defined in Tools. Default=“The current estimated hold time is”. Undefined=no announcement", + "MINUTESANNOUNCE": "Choose a Sound defined in Tools. Default=“minutes”. Undefined=no announcement", + "MINUTEANNOUNCE": "Choose a Sound defined in Tools. Default=“minute”. Undefined=no announcement", + "SECONDSANNOUNCE": "Choose a Sound defined in Tools. Default=“seconds”. Undefined=no announcement", + "THANKYOUANNOUNCE": "Choose a Sound defined in Tools. Default=“Thank you for your patience”. Undefined=no announcement", + "AFTERCALLWORK": "If enabled, the agent will be set on Pause after completing a call", + "AUTOPAUSE": "Enables/disables the automatic pause of agents who fail to answer a call. If enabled, it causes the agent to be paused in all queues he belongs to", + "RINGINUSE": "To avoid/allow sending calls to members whose status is In Use", + "TIMEOUTRESTART": "If yes, this resets the timeout for an agent to answer when either a BUSY or CONGESTION status is received from the channel", + "MONITORFORMAT": "Specifies the file format to use when recording. If monitor-format is inactive, calls will not be recorded", + "CONTEXT": "Allows a caller to exit the queue by pressing a single DTMF digit. If a context is specified and the caller enters a number, that digit will attempt to be matched in the context specified, and dialplan execution will continue there", + "SETINTERFACEVARIABLES": "If set to yes, just prior to the caller being connected with a queue agent some variables will be set (for more information see wiki docs:click here)", + "SETQUEUEVARIABLES": "If set to yes, just prior to the caller being connected with a queue agent and leaving the queue, some variables will be set (for more information, see wiki docs:click here)", + "SETQUEUEENTRYVARIABLES": "If set to yes, just prior to the caller being connected with a queue agent some variables will be set (for more information, see wiki docs:click here)", + "RECORDING": "Enable call recording", + "VOICEMAIL_CONTEXT": "The context of the relative extension", + "METHOD": "Outbound dialer method", + "POWERLEVEL": "Number of contacts to call for any available agent", + "PREDICTIVEOPTIMIZATION": "A factor to optimize in the predictive algorithm", + "PREDICTIVEOPTIMIZATIONPERCENTAGE": "Percentage based on the selected predictive optimization factor", + "PREDICTIVEINTERVAL": "Time interval (in minutes) considered by the predictive algorithm to calculate the amount of calls to generate to optimize the result", + "MAXCONCURRENTCALLS": "Maximum number of concurrent calls that will be originated by the outbound dialer for this campaign (0=unlimited)", + "CONCURRENTCALLS": "Maximum number of concurrent calls that will be originated by the outbound dialer for this campaign", + "ORIGINATECALLERIDNAME": "Outgoing Caller Id Name", + "ORIGINATECALLERIDNUMBER": "Outgoing Caller Id Number", + "ORIGINATETIMEOUT": "Time (in seconds) for the outbound call to establish a connection, otherwise the status is set to No Answer ", + "QUEUETIMEOUT": "Time (in seconds) a call will wait in the queue before it is dropped (Min 1 and Max 999)", + "GLOBALMAXRETRY": "Maximum number of times a contact is called before considering it closed", + "CONGESTIONMAXRETRY": "Maximum number of times a contact is called before considering it closed, when the call failed for congestion", + "CONGESTIONRETRYTIME": "Time in minutes before trying to call again a failed contact due to congestion", + "BUSYMAXRETRY": "Maximum number of times a contact is called before considering it closed, when the call failed for busy", + "BUSYRETRYTIME": "Time in minutes before trying to call again a failed contact due to busy", + "NOANSWERMAXRETRY": "Maximum number of times a contact is called before considering it closed, when the call failed for no answer", + "NOANSWERRETRYTIME": "Time in minutes before trying to call again a failed contact due to no answer", + "NOSUCHNUMBERMAXRETRY": "Maximum number of times a contact is called before considering it closed, when the call failed for no such number", + "NOSUCHNUMBERRETRYTIME": "Time in minutes before trying to call again a failed contact due to no such number", + "DROPMAXRETRY": "Maximum number of times a contact is called before considering it closed, when the call failed for drop", + "DROPRETRYTIME": "Time in minutes before trying to call again a failed contact due to drop", + "ABANDONEDMAXRETRY": "Maximum number of times a contact is called before considering it closed, when the call failed for abandon", + "ABANDONEDRETRYTIME": "Time in minutes before trying to call again a failed contact due to abandon", + "MACHINEMAXRETRY": "Maximum number of times a contact is called before considering it closed, when the call failed for machine", + "MACHINERETRYTIME": "Time in minutes before trying to call again a failed contact due to machine", + "AGENTREJECTMAXRETRY": "Maximum number of times a contact is called before considering it closed, when the call failed for agent reject", + "AGENTREJECTRETRYTIME": "Time in minutes before trying to call again a failed contact due to agent reject", + "CALLADDITIONALPHONEAFTERMIN": "", + "GLOBALINTERVAL": "Global time interval during which the dialer is allowed to call contacts. We decline responsibility: pay attention when you modify this field, because you may fail to comply with the national Autodialer Laws and Regulations", + "NAME": "Only numbers, letters and specific characters (._) are supported", + "MANDATORYDISPOSITIONPAUSEID": "Pause status to set during mandatory disposition", + "PREVIEW_AUTO_RECALL_ME": "If enabled, the system will automatically generate the Recall Me calls; otherwise, the agent must do it manually" + }, + "MUSICONHOLD": "Music On Hold", + "ANNOUNCETOAGENT": "Announce To Agent", + "ANNOUNCEMENTS": "Announcements", + "ADVANCEDPREVIEW": "Advanced", + "ADVANCED": "Advanced", + "ADVANCE": "Advanced", + "ANNOUNCEFREQUENCY": "Announce Frequency", + "MINANNOUNCEFREQUENCY": "Minimum Announce Frequency", + "PERIODICANNOUNCEFREQUENCY": "Periodic Announce Frequency", + "RANDOMPERIODICANNOUNCE": "Random Periodic Announce", + "ANNOUNCEHOLDTIME": "Announce Hold Time", + "ANNOUNCECALLERPOSITION": "Announce Caller Position", + "ANNOUNCEPOSITIONLIMIT": "Announce Position Limit", + "REPORTHOLDTIMEAGENT": "Report Agent Hold Time", + "PERIODICANNOUNCE": "Periodic Announce", + "HOLDTIMEANNOUNCE": "Hold Time Announce", + "YOUARENEXTANNOUNCE": "'You are next' Announce", + "THEREAREANNOUNCE": "'There are' Announce", + "WAITINGCALLSANNOUNCE": "Waiting Calls Announce", + "ESTIMATEDHOLDTIMEANNOUNCE": "Estimated Hold Time Announce", + "MINUTESANNOUNCE": "Minutes Announce", + "MINUTEANNOUNCE": "Minute Announce", + "SECONDSANNOUNCE": "Seconds Announce", + "THANKYOUANNOUNCE": "'Thank You' Announce", + "AUTOPAUSE": "Auto Pause", + "AFTERCALLWORK": "After Call Work", + "AFTERCALLWORKDURATION": "After Call Work Duration", + "RINGINUSE": "Ring In Use", + "MEMBERDELAY": "Member Delay", + "TIMEOUTRESTART": "Timeout Restart", + "MONITORFORMAT": "Recording Format", + "SETINTERFACEVARIABLES": "Set Interface Variables", + "SETQUEUEVARIABLES": "Set Queue Variables", + "SETQUEUEENTRYVARIABLES": "Set Queue Entry Variables", + "CONTEXT": "Context", + "SAVE": "Save", + "SETTINGS": "Settings", + "INBOUNDROUTES": "Inbound Routes", + "PHONENUMBER": "Phone Number", + "ADD_INBOUNDROUTE": "Add Inbound Route", + "EDIT_INBOUNDROUTE": "Edit Inbound Route", + "DELETE_INBOUNDROUTE": "Delete Inbound Route", + "ACTIONS": "Actions", + "OUTBOUNDROUTES": "Outbound Routes", + "DESTINATIONPATTERN": "Destination Pattern", + "ADD_OUTBOUNDROUTE": "Add Outbound Route", + "EDIT_OUTBOUNDROUTE": "Edit Outbound Route", + "DELETE_OUTBOUNDROUTE": "Delete Outbound Route", + "CUTDIGITS": "Cut Digits", + "RECORDING": "Recording", + "RECORDINGFORMAT": "Recording format", + "INTERNALROUTES": "Internal Routes", + "ADD_INTERNALROUTE": "Add Internal Route", + "EDIT_INTERNALROUTE": "Edit Internal Route", + "DELETE_INTERNALROUTE": "Delete Internal Route", + "CONTEXTS": "Contexts", + "ADD_CONTEXT": "Add Context", + "EDIT_CONTEXT": "Edit Context", + "DELETE_CONTEXT": "Delete Context", + "VOICEMAILS": "Voicemails", + "ADD_VOICEMAIL": "Add Voicemail", + "EDIT_VOICEMAIL": "Edit Voicemail", + "DELETE_VOICEMAIL": "Delete Voicemail", + "FULLNAME": "Full Name", + "EMAIL": "Email", + "MAILBOX": "Mailbox", + "PASSWORD": "Password", + "CONFIRM_PASSWORD": "Confirm Password", + "TIMEZONE": "Timezone", + "ATTACH": "Attach", + "ENVELOPE": "Envelope", + "DELETE": "Delete", + "EMAILBODY": "Email Body", + "EMAILSUBJECT": "Email Subject", + "MAXSECONDS": "Max Seconds", + "MAXMESSAGES": "Max Messages", + "MESSAGES": "Messages", + "SORT": "Sort", + "ADD_MUSICONHOLD": "Add Music On Hold", + "MUSICONHOLDS": "Music On Hold", + "EDIT_MUSICONHOLD": "Edit Music On Hold", + "DELETE_MUSICONHOLD": "Delete Music On Hold", + "DIRECTORY": "Directory", + "AUDIOFILES": "Audio Files", + "RECORDINGS": "Recordings", + "CHANSPY": "ChanSpy", + "PREFIX": "Prefix", + "OPTIONS": "Options", + "AUTH": "Auth", + "ADD_CHANSPY": "Add ChanSpy", + "EDIT_CHANSPY": "Edit ChanSpy", + "DELETE_CHANSPY": "Delete ChanSpy", + "AGENTS": "Agents", + "TELEPHONES": "Telephones", + "QUEUES": "Queues", + "QUEUE_CALLS": "Queue Calls", + "QUEUE_PARAMETERS": "Queue Parameters", + "ABANDONED_CALLS": "Abandoned Calls", + "OUTBOUND_CALLS": "Outbound Calls", + "AGI": "AGI", + "DIAL": "Dial", + "INTERNALDIAL": "Internal Dial", + "EXTERNALDIAL": "External Dial", + "RINGGROUP": "Ring Group", + "PLAYBACK": "Playback", + "QUEUE": "Queue", + "SET": "Set", + "VOICEMAIL": "Voicemail", + "GOTO": "GoTo", + "HANGUP": "Hangup", + "CUSTOM": "Custom", + "PROJECT": "Cally-Square Project", + "TECHNOLOGY/RESOURCE": "Technology/Resource", + "URL": "URL", + "EDIT_APP": "Edit Application", + "EDIT_INTERVAL": "Edit Interval", + "DELETE_APP": "Delete Application", + "INTERVALS": "Intervals", + "USER": "User", + "TRUNK": "Trunk", + "PHONE": "Phone", + "AUDIO_FILES": "Audio Files", + "ANNOUNCE_OVERRIDES": "Announce Overrides", + "MACRO": "Macro", + "GOSUB": "GoSub", + "RULE": "Rule", + "POSITION": "Position", + "ANSWER": "Answer", + "VALUE": "Value", + "MAILBOX@CONTEXT": "Mailbox@Context", + "EXTENSION": "Extension", + "PRIORITY": "Priority", + "HANGUP_CAUSE": "Hangup Cause", + "OUTBOUNDDIAL": "Outbound Dial", + "CALLER_ID": "Caller ID", + "NO_MESSAGE_AVAILABLE": "No messages available", + "NO_SOUND_AVAILABLE": "No sounds available", + "VOICERECORDINGS": "Voice Recordings", + "CHANSPIES": "ChanSpy", + "VOICE": "Voice", + "REALTIME": "Realtime", + "ID": "Id", + "VOICEMAIL_CONTEXT": "Context", + "NO_MOHSOUND_AVAILABLE": "No Music On Hold available", + "FILE": "File", + "ADD_MOHSOUND": "Add Music On Hold sound", + "DOWNLOAD_MOHSOUND": "Download Music On Hold sound", + "DELETE_MOHSOUND": "Delete Music On Hold sound", + "UNIQUEID": "Unique ID", + "AGENT": "Agent", + "TYPE": "Type", + "RATING": "Rating", + "AUDIO": "Audio", + "DATE": "Date", + "NEW_VOICEQUEUE": "New Voice Queue", + "NEW_INBOUNDROUTE": "New Inbound Route", + "NEW_OUTBOUNDROUTE": "New Outbound Route", + "NEW_INTERNALROUTE": "New Internal Route", + "NEW_CONTEXT": "New Context", + "NEW_VOICEMAIL": "New Voicemail", + "NEW_MUSICONHOLD": "New Music On Hold", + "NEW_CHANSPY": "New ChanSpy", + "PENALTY": "Penalty", + "ADD_TEAM_TO_VOICEQUEUE": "Add Team to Voice Queue", + "ADD_AGENT_TO_VOICEQUEUE": "Add Agent to Voice Queue", + "EDIT_DIAL": "Edit Dial", + "EDIT_AGI": "Edit AGI", + "EDIT_INTERNALDIAL": "Edit Internal Dial", + "EDIT_EXTERNALDIAL": "Edit External Dial", + "EDIT_RINGGROUP": "Edit Ring Group", + "EDIT_PLAYBACK": "Edit Playback", + "EDIT_QUEUE": "Edit Queue", + "EDIT_SET": "Edit Set", + "EDIT_GOTO": "Edit GoTo", + "EDIT_HANGUP": "Edit Hangup", + "EDIT_CUSTOM": "Edit Custom", + "DURATION": "Duration", + "RECEIVED_AT": "Received At", + "YES": "Yes", + "NO": "No", + "HANGUPCAUSE_1": "1 = Unallocated number", + "HANGUPCAUSE_16": "16 = Normal call clearing", + "HANGUPCAUSE_17": "17 = User busy", + "HANGUPCAUSE_18": "18 = No user responding (telehone device not connected)", + "HANGUPCAUSE_21": "21 = Call rejected", + "HANGUPCAUSE_22": "22 = Number changed", + "HANGUPCAUSE_27": "27 = Destination out of order", + "HANGUPCAUSE_38": "38 = Network out of order", + "HANGUPCAUSE_41": "41 = Temporary failure", + "RANDOM": "Random", + "ALPHABETICAL": "Alphabetical", + "NO_APPS_AVAILABLE": "No applications available", + "DOWNLOAD_VOICERECORDING": "Download Voice Recording", + "DELETE_VOICERECORDING": "Delete Voice Recording", + "INTERNAL": "Internal", + "PHONE_STATE": "Phone State", + "PHONE_STATUS": "Phone Status", + "REGISTERED": "Registered", + "UNREGISTERED": "Unregistered", + "LAGGED": "Lagged", + "REACHABLE": "Reachable", + "UNREACHABLE": "Unreachable", + "UNKNOWN": "Unknown", + "NOT_INUSE": "Not in use", + "INUSE": "In Use", + "BUSY": "Busy", + "INVALID": "Invalid", + "UNAVAILABLE": "Unavailable", + "RINGING": "Ringing", + "ONHOLD": "On Hold", + "RING": "Ring", + "UP": "Up", + "INFO": "Info", + "TRUNKS": "Trunks", + "REGISTRY": "Registry", + "NO_REGISTRY": "No registry", + "LOGGED_IN": "Logged in (SIP connected)", + "PAUSED": "Paused", + "DISPOSITION": "Disposition", + "WAITING": "Waiting", + "TALKING": "Talking", + "DID": "DID", + "CALLER": "Caller", + "TOTAL": "Total", + "ANSWERED": "Answered", + "ABANDONED": "Abandoned", + "UNMANAGED": "Unmanaged", + "REDIRECT_TO_NUMBER": "Redirect to a number", + "REDIRECT_TO_AGENT": "Redirect to an agent", + "CLOSING": "Closing", + "AVG_HOLD_TIME": "Avg Hold Time", + "AVG_DURATION": "Avg Duration", + "AVG_BILLABLE": "Avg Billable", + "SOURCE": "Source", + "DESTINATION": "Destination", + "REJECTED": "Rejected", + "FAILED": "Failed", + "CALLED": "Called", + "CONNECTED": "Connected", + "NO_RATING": "No rating", + "EDIT_VOICERECORDING": "Edit Voice Recording", + "APPLICATION_NAME": "Application Name", + "ARGUMENTS": "Arguments", + "EDIT_QUEUECAMPAIGN": "Edit Campaign", + "LISTADD_QUEUECAMPAIGN": "Add List", + "BLACKLISTADD_QUEUECAMPAIGN": "Add Blacklist", + "TEAMADD_QUEUECAMPAIGN": "Add Team", + "AGENTADD_QUEUECAMPAIGN": "Add Agent", + "DELETE_QUEUECAMPAIGN": "Delete Campaign", + "DELETE_IVRCAMPAIGN": "Delete Campaign", + "EDIT_IVRCAMPAIGN": "Edit Campaign", + "NEW_IVRCAMPAIGN": "New IVR Campaign", + "ADD_IVRCAMPAIGN": "Add IVR Campaign", + "LISTADD_IVRCAMPAIGN": "Add List", + "BLACKLISTADD_IVRCAMPAIGN": "Add Blacklist", + "ENABLED": "Enabled", + "READY": "Ready", + "PAUSE": "Pause", + "UNPAUSE": "End Pause", + "DEFAULT_PAUSE": "Default Pause", + "AGENTADD_QUEUE": "Add Agent to queue campaign", + "AGENTSADD_QUEUE": "Add Agents to queue campaign", + "ALL_TEAMS": "All Teams", + "SELECTED_TEAMS": "Selected Teams", + "ALL_LISTS": "All Lists", + "SELECTED_LISTS": "Selected Lists", + "ALL_AGENTS": "All Agents", + "SELECTED_AGENTS": "Selected Agents", + "WAITING_FOR_AGENT": "Waiting for Agent", + "TOTAL_OFFERED": "Total Offered", + "RUNNING": "Running", + "TRUNK_IS_NOT_REACHABLE": "Trunk is Not Reachable", + "AGENTS_NOT_LOGGED": "Agent not logged", + "NOT_ACTIVE": "Not Active", + "IS_DISACTIVED": "Deactivated", + "BACKUPTRUNK": "Backup Trunk", + "GLOBALINTERVAL": "Global Interval", + "RESCHEDULED_CONTACTS": "Rescheduled contacts", + "INTERVAL_IS_OVERTIME": "Out of Interval", + "GLOBAL_INTERVAL_IS_OVERTIME": "Out of Interval (Global)", + "INTERVAL_IS_NULL": "Interval is Null", + "TIMEZONE_UNKNOW": "Timezone Unknow", + "INTERVAL_IS_EMPTY": "Interval is Empty", + "TOTAL_MANAGED": "Total Managed", + "OPEN": "Open", + "FRESH": "Fresh", + "CLOSED": "Closed", + "ALWAYS": "Always", + "NEVER": "Never", + "ONLY_IF_OPEN": "Only If Open", + "CHECKDUPLICATE": "Check Duplicate", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "CHAT": "Chat", + "MAIL": "Email", + "SMS": "SMS", + "OPENCHANNEL": "Open Channel", + "FAX": "Fax", + "TEAMS_ASSOCIATION": "Teams Association", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Mandatory disposition pause status", + "TOOLTIP_SCREENRECORDING_ON": "Screen Recording in progress", + "TOOLTIP_SCREENRECORDING_OFF": "Screen Recording available", + "PREVIEW_AUTO_RECALL_ME": "Automate Recall Me calls" + } +} diff --git a/public/app/main/apps/openchannel/i18n/bs.json b/public/app/main/apps/openchannel/i18n/bs.json new file mode 100644 index 0000000..49fbeed --- /dev/null +++ b/public/app/main/apps/openchannel/i18n/bs.json @@ -0,0 +1,271 @@ +{ + "OPENCHANNEL": { + "EDIT_DIALOGFLOWV2": "Edit Dialogflow V2", + "DIALOGFLOWV2": "Dialogflow V2", + "PRIVATEKEY": "Private Key", + "CLIENTEMAIL": "Client Email", + "PROJECTID": "Project ID", + "AMAZONLEX": "AmazonLex", + "EDIT_AMAZONLEX": "Edit Lex configuration", + "ACCESSKEYID": "Access key ID", + "SECRETACCESSKEY": "Access key secret", + "LEXREGION": "Region", + "BOTNAME": "Bot name", + "WELCOMEMESSAGE": "Welcome message", + "DIALOGFLOW": "Dialogflow", + "EDIT_DIALOGFLOW": "Edit Dialogflow configuration", + "LANGUAGE": "Language", + "LOGIN_TIME": "Login time", + "PAUSE_TIME": "Pause time", + "DOWNLOAD_INTERACTION": "Download", + "TRANSFER": "Transfer", + "QUEUETRANSFER": "Queue Transfer", + "QUEUETRANSFERTIMEOUT": "Queue Transfer Timeout", + "AGENTTRANSFER": "Agent Transfer", + "AGENTTRANSFERTIMEOUT": "Agent Transfer Timeout", + "TAG": "Tag", + "EDIT_TAG": "Edit Tag", + "ADVANCED": "Advanced", + "PROXY": "Proxy", + "TOKEN": "Token", + "ADD_NOTE": "Add note", + "NOTE": "Note", + "WAITFORTHEASSIGNEDAGENT": "Wait for the assigned agent", + "INSERT_MESSAGE_HERE": "Insert your text message here", + "NOTIFICATION": "Notification", + "NOTIFICATIONSOUND": "Sound", + "NOTIFICATIONSHAKE": "Shake", + "NOTIFICATIONTEMPLATE": "Template", + "SYSTEM": "System", + "EDIT_SYSTEM": "Edit System", + "COMMAND": "Command", + "VARIABLE": "Variable", + "DELETE": "Delete", + "CANNEDANSWERS": "Canned Answers", + "OPENCHANNELCANNEDANSWERS": "Canned Answers", + "NO_OPENCHANNELCANNEDANSWER_AVAILABLE": "No Canned Answers Available", + "NEW_OPENCHANNELCANNEDANSWER": "New Canned Answer", + "ADD_OPENCHANNELCANNEDANSWER": "Add Canned Answer", + "EDIT_OPENCHANNELCANNEDANSWER": "Edit", + "DELETE_OPENCHANNELCANNEDANSWER": "Delete", + "DELIVERYREPORTURL": "Delivery Report URL", + "TAGS": "Tags", + "SPYINTERACTION": "Spy", + "NO_AGENT_ONLINE": "No Agent Online", + "GOTOREALTIME_OPENCHANNELQUEUE": "Go To Realtime Open Channel Queue", + "PARTIALPAUSE": "Parital Pause", + "BUSY": "Busy", + "TIMER": "Timer", + "IDLE": "Idle", + "CAPACITY": "Capacity", + "REALTIME": "Realtime", + "TEXT": "Text", + "TIMES": "Number of times per interaction", + "EDIT_AUTOREPLY": "Edit Auto Reply", + "AUTOREPLY": "Auto Reply", + "NAME": "Name", + "OPENCHANNELQUEUES": "Open Channel Queues", + "SEARCH_FOR_ANYONE": "Search", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause to use if mandatory disposition is enabled", + "ERRORS": { + "PROJECTID_REQUIRED": "Mandatory Field", + "CLIENTEMAIL_REQUIRED": "Mandatory Field", + "PRIVATEKEY_REQUIRED": "Mandatory Field", + "ACCESSKEYID_REQUIRED": "Access key ID is required", + "SECRETACCESSKEY_REQUIRED": "Access key secret is required", + "BOTNAME_REQUIRED": "Bot name is required", + "QUEUETRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "QUEUETRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "QUEUETRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "AGENTTRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENTTRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AGENTTRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "TAG_REQUIRED": "Mandatory Field", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "WAITFORTHEASSIGNEDAGENT_REQUIRED": "Mandatory Field", + "AGENT_TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENT_TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "NAME_MUST_VALID_PATTERN": "Wrong format", + "KEY_REQUIRED": "Mandatory Field", + "LIST_REQUIRED": "Mandatory Field", + "COMMAND_REQUIRED": "Mandatory Field", + "TEXT_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "VALUE_REQUIRED": "Mandatory Field", + "TEXT_REQUIRED": "The field text is required", + "NAME_REQUIRED": "Mandatory field", + "AGENT_TIMEOUT_REQUIRED": "Mandatory field", + "MOTIONADDRESS_REQUIRED": "Mandatory field", + "MOTIONADDRESS_MUST_VALID_URL": "Wrong format", + "ACCEPTURL_MUST_VALID_URL": "Wrong format", + "TIMEOUT_REQUIRED": "Mandatory field", + "REJECTURL_MUST_VALID_URL": "Wrong format", + "CLOSEURL_MUST_VALID_URL": "Wrong format", + "REPLYURI_REQUIRED": "Mandatory field", + "REPLYURI_MUST_VALID_URL": "Wrong format", + "PRIORITY_REQUIRED": "Mandatory field", + "CONDITION_REQUIRED": "Mandatory field", + "TRUEPRIORITY_REQUIRED": "Mandatory field", + "FALSEPRIORITY_REQUIRED": "Mandatory field", + "AGENT_REQUIRED": "Mandatory field", + "TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "PRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "TRUEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "FALSEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "DISPOSITION_REQUIRED": "Mandatory field", + "QUEUE_REQUIRED": "Mandatory field", + "KEY_MAX_LENGTH": "Key must have a maximum length equal to {{max}}", + "MANDATORYDISPOSITIONPAUSEID_REQUIRED": "Mandatory field" + }, + "STRATEGY": "Strategy", + "AGENT": "Agent", + "GOTO": "Goto", + "GOTOIF": "Gotoif", + "NOOP": "Noop", + "QUEUE": "Queue", + "EDIT_AGENT": "Edit Agent", + "EDIT_GOTO": "Edit Goto", + "EDIT_NOOP": "Edit Noop", + "EDIT_GOTOIF": "Edit Gotoif", + "EDIT_QUEUE": "Edit Queue", + "CONDITION": "Condition", + "TRUEPRIORITY": "True Priority", + "FALSEPRIORITY": "False Priority", + "VALUE": "Value", + "PRIORITY": "Priority", + "AGENT_TIMEOUT": "Agent Timeout", + "DESCRIPTION": "Description", + "ADD_OPENCHANNELQUEUE": "Add Open Channel Queue", + "EDIT_OPENCHANNELQUEUE": "Edit Open Channel Queue", + "DELETE_OPENCHANNELQUEUE": "Delete Open Channel Queue", + "PENALTY": "Penalty", + "TEAMADD_OPENCHANNELQUEUE": "Add Team To Open Channel Queue", + "AGENTADD_OPENCHANNELQUEUE": "Add Agent To Open Channel Queue", + "ALL_AGENTS": "All Agents", + "SELECTED_AGENTS": "Selected Agents", + "CREATED_AT": "Created At", + "SAVE": "Save", + "SETTINGS": "Settings", + "GENERAL": "General", + "OPENCHANNELACCOUNTS": "Open Channel Accounts", + "MOTIONADDRESS": "Motion Address", + "ADD_OPENCHANNELACCOUNT": "Add Open Channel Account", + "EDIT_OPENCHANNELACCOUNT": "Edit Open Channel Account", + "DELETE_OPENCHANNELACCOUNT": "Delete Open Channel Account", + "API": "API", + "DISPOSITIONS": "Dispositions", + "WEBHOOKS": "WebHooks", + "ACTIONS": "Actions", + "LIST": "List", + "FIDELITY": "Fidelity", + "ACCEPT": "Accept", + "ACCEPTMETHOD": "Accept Method", + "ACCEPTURL": "Accept URL", + "REJECT": "Reject", + "REJECTMETHOD": "Reject Method", + "REJECTURL": "Reject URL", + "CLOSE": "Close", + "CLOSEMETHOD": "Close Method", + "CLOSEURL": "Close URL", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "BACK": "Back", + "OPENCHANNEL": "Open Channel", + "ID": "Id", + "TIMEOUT": "Timeout", + "OPENCHANNELDISPOSITIONS": "Open Channel Dispositions", + "NO_OPENCHANNELDISPOSITION_AVAILABLE": "No Open Channel Dispositions available", + "NEW_OPENCHANNELDISPOSITION": "New Open Channel Disposition", + "ADD_OPENCHANNELDISPOSITION": "Add Open Channel Disposition", + "EDIT_OPENCHANNELDISPOSITION": "Edit Open Channel Disposition", + "DELETE_OPENCHANNELDISPOSITION": "Delete Open Channel Disposition", + "NEW_OPENCHANNELQUEUE": "New Open channel Queue", + "NEW_OPENCHANNELACCOUNT": "New Open channel Account", + "NO_AVAILABLE_INFO": "No available info", + "ALL_TEAMS": "All Teams", + "SELECTED_TEAMS": "Selected Teams", + "REPLYURI": "Reply URL", + "RECEIVEURI": "Receive URL", + "HELP": { + "WELCOMEMESSAGE": "This is the first response message sent to new interactions.", + "TOKEN": "Add this property as query string in your Web Service URL. For more details see the doc here", + "RECEIVEURI": "Auto-generated API string to be used in order to receive messages inside your open channel from the external application (using POST method). Click the clipboard button to copy it ", + "REPLYURI": "The URL the open channel will call when sending or replying to a message. For more details see the doc here", + "NAME": "Only numbers, letters and specific characters (._) are supported", + "LIST": "Contact Manager List used to associate contacts", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause to use if mandatory disposition is enabled" + }, + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "CONTACT": "Contact", + "STARTEDAT": "Started At", + "LASTMESSAGE": "Last message", + "STATUS": "Status", + "CLOSED": "Closed", + "OPENED": "Open", + "OPEN": "Open", + "ACCOUNT": "Account", + "INTERACTION": "Interaction", + "INTERACTIONS": "Interactions", + "ALL": "All", + "SELECT_STATUS": "Select a status", + "FILTER": "Filter", + "FILTERS": "Filters", + "CLOSEDAT": "Closed At", + "DISPOSITION": "Disposition", + "NOTES": "Notes", + "NO_INTERACTION_AVAILABLE": "No interactions available", + "SELECT_ACCOUNT": "Select an account", + "GOTOP": "Gotop", + "EDIT_GOTOP": "Edit Gotop", + "EDIT_CLOSE": "Edit Close", + "INFO": "Info", + "KEY": "Key", + "UNKNOWN": "Unknown", + "UNREGISTERED": "Unregistered", + "UNAVAILABLE": "Unavailable", + "NOT_INUSE": "Not in use", + "REACHABLE": "Reachable", + "IN_USE": "In use", + "AGENTS": "Agents", + "QUEUES": "Queues", + "FULLNAME": "Fullname", + "INTERNAL": "Internal", + "PHONE_STATE": "Phone State", + "PHONE_STATUS": "Phone Status", + "PAUSE": "Pause", + "LOGOUT": "Logout", + "AGENTADD_QUEUE": "Add agent to Open Channel queue", + "UNPAUSE": "End Pause", + "DEFAULT_PAUSE": "Default pause", + "LOGGED_IN": "Logged in", + "PAUSED": "Paused", + "READY": "Ready", + "WAITING": "Waiting", + "VOICE": "Voice", + "CHAT": "Chat", + "MAIL": "Email", + "SMS": "SMS", + "FAX": "Fax", + "AGENTSADD_QUEUE": "Add agents to Open Channel queue", + "INTERACTIONS_OPENCHANNELACCOUNT": "Go to Interactions", + "REFRESH_INTERACTIONS": "Refresh Interactions", + "DELETE_INTERACTION": "Delete Interaction", + "AGENTADD_OPENCHANNELACCOUNT": "Add Agent to Openchannel Account", + "CANNED_ANSWER_SEARCH": "Enter a text to seach a Canned Answer", + "CANNED_ANSWER_NOT_FOUND": "No Canned Answer were found", + "SEND": "Send", + "TO": "To", + "MAPKEY": "Map Key", + "TEAMS_ASSOCIATION": "Teams Association", + "TOOLTIP_SCREENRECORDING_ON": "Screen Recording in progress", + "TOOLTIP_SCREENRECORDING_OFF": "Screen Recording available", + "DOWNLOAD_WITH_ATTACHMENTS": "Download with attachments", + "DOWNLOAD_WITHOUT_ATTACHMENTS": "Download without attachments" + } +} diff --git a/public/app/main/apps/plugins/i18n/bs.json b/public/app/main/apps/plugins/i18n/bs.json new file mode 100644 index 0000000..be8be0f --- /dev/null +++ b/public/app/main/apps/plugins/i18n/bs.json @@ -0,0 +1,7 @@ +{ + "PLUGINS": { + "PLUGINS": "Plugins", + "ERRORS": {}, + "HELP": {} + } +} diff --git a/public/app/main/apps/settings/i18n/bs.json b/public/app/main/apps/settings/i18n/bs.json new file mode 100644 index 0000000..6a12726 --- /dev/null +++ b/public/app/main/apps/settings/i18n/bs.json @@ -0,0 +1,309 @@ +{ + "SETTINGS": { + "RTLSUPPORT": "RTL Support", + "PREFERRED": "Preferred Logo", + "DEFAULT_PREFERRED": "Default Preferred Logo", + "FAVICON": "Favicon", + "DEFAULT_FAVICON": "Default Favicon", + "MOTIONBARREMEMBERME": "Remember Me", + "CHATTIMEOUT": "Chat closing interaction timeout", + "VIRTUAL": "Chat", + "VOICE": "Voice", + "SESSIONS": "Sessions", + "ADDONS": "Add-ons", + "REPORT": "Report", + "SPLIT": "Split report", + "SPLITSIZECSV": "Split report size [CSV records]", + "SPLITSIZEPDF": "Split report size [PDF records]", + "SPLITSIZEXLSX": "Split report size [XLSX records]", + "ENABLEEMAILPREVIEW": "Enable Email Preview", + "COPY_LICENSE": "Copy token to clipboard", + "DOWNLOAD_LICENSE_LOG_FILE": "Download license log file", + "LICENSE_LOG_FILE": "License log file", + "LICENSE_LOG_FILE_DOWNLOADED": "License log file downloaded!", + "CLIPBOARD": "Clipboard", + "COPIED_TO_CLIPBOARD": "Token copied to clipboard", + "JAWS": "Jaws", + "MOTIONBAR": "Motionbar", + "MOTIONBARAUTOUPDATER": "Auto Updater", + "MOTIONBARAUTOUPDATERURL": "Auto Updater URL", + "SMTP_SSL": "SMTP SSL", + "CALL_RECORDING_ENCRYPTION": "Voice Recording Encryption", + "TURNADDR": "TURN Address", + "TURN_USERNAME": "TURN Username", + "TURN_PASSWORD": "TURN Password", + "WEBRTC": "WebRTC", + "CALLYSQUARE": "Cally Square", + "PREVIEW_RECALLME_REMINDER_INTERVAL": "Preview Recallme Reminder Interval", + "ENABLED": "Enabled", + "DISABLED": "Disabled", + "UNLIMITED_CHANNELS": "Unlimited Channels", + "RELOAD": "Reload", + "VERIFY": "Verify", + "INTERFACE": "Interface", + "UPDATING": "Updating", + "REMOTE_VERSION": "Remote Version", + "NO_NEW_VERSION_AVAILABLE": "No new version available", + "TOP_N_PROCESSES": "Top {{value}} processes", + "SYSTEM": "System", + "FILE_SYSTEM": "File System", + "PROCESSES": "Processes", + "MOUNT_POINT": "Mount", + "AVG_LOAD": "AVG Load", + "TOTAL": "Total", + "USED": "Used", + "FREE": "Free", + "NAME": "Name", + "STATE": "State", + "CHAT": "Chat", + "MAIL": "Email", + "MESSAGING": "Sms", + "WHATSAPP": "WhatsApp Connector", + "FAX": "Fax", + "OPENCHANNEL": "Open Channel", + "AGENTS": "Agents", + "USERS": "Users", + "TELEPHONES": "Telephones", + "STAFF": "Staff", + "CHANNELS": "Channels", + "MODULES": "Modules", + "CM": "Contacts Manager", + "DIALER": "Dialer", + "JSCRIPTY": "Jscripty", + "CUSTOM": "Customization", + "VIDEO": "Video", + "SCREENRECORDING": "Screen Recording", + "UPDATE": "Update", + "OTHERS": "Others", + "SETTINGS": "Settings", + "GENERAL": "General", + "SMTP": "SMTP", + "NETWORKS": "Networks", + "UPDATES": "Updates", + "LICENSE": "License", + "ID": "Id", + "MIN_INTERNAL": "Min Internal", + "MIN_MAILBOX": "Min Mailbox", + "INSTALLED_AT": "Installed At", + "SEARCH_FOR_ANYONE": "Search", + "EDIT_GENERAL": "Edit General", + "SECURE_PASSWORD": "Secure Password", + "LOGO": "Logo", + "DEFAULT_LOGO": "Default Logo", + "DEFAULT_LOGIN_LOGO": "Default Login Logo", + "WHITELABEL": "White Label", + "DEFAULT_HEADER_WHITELABEL": "Default Header White Label", + "HEADER_WHITELABEL": "Header White Label", + "CREATED_AT": "Created At", + "SAVE": "Save", + "SMTP_SERVICE": "Service", + "SMTP_HOST": "Host", + "SMTP_USERNAME": "Username", + "DESCRIPTION": "Description", + "SMTP_PASSWORD": "Password", + "SMTP_PORT": "Port", + "SMTP_SECURE": "Secure", + "TYPE": "Type", + "ADDRESS": "Address", + "USERNAME": "Username", + "NEW_NETWORK": "New Network", + "ADD_NETWORK": "Add Network", + "IMAPGENERALSETTINGS": "IMAP", + "LOGINMAILFREQUENCY": "Login Mail Frequency (sec)", + "DEFAULTSCREENRECORDINGPATH": "Screen Recording path", + "APPZONE": "App Zone", + "EDIT_NETWORK": "Edit Network", + "DELETE_NETWORK": "Delete Network", + "BACK": "Back", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "EXPIRATION_DATE": "Expiration Date", + "REQUEST_LICENSE": "Request License", + "EMAIL": "Email", + "SEND": "Send", + "PLAN": "Plan", + "MONTH_TO_MONTH": "Month to month", + "MOTION_PROCESS_MANAGEMENT": "Motion Process Management", + "USEFUL_COMMANDS": "Useful Commands", + "COMMAND": "Command", + "PM2_LIST": "List all processes", + "PM2_START": "Start a process by id or name", + "PM2_STOP": "Stop a process by id or name or insert 'all' to stop all the active processes", + "PM2_RESTART": "Restart a process by id or name", + "PM2_LOGS": "Stream all processes log files, unless a specific process id or name is provided", + "PASSWORD": "Password", + "NO_AVAILABLE_INFO": "No available info", + "STUNADDR": "STUN Address", + "CHANGELOG": "Changelog", + "CURRENT_VERSION": "Current version", + "CUSTOMIZATIONS": "Customizations", + "LOCALNETADDRESS": "Localnet Address", + "NEW_VERSION": "New Version", + "TRIAL_VERSION": "Trial Version", + "TOKEN": "Token", + "NEW_TOKEN_DETECTED": "New Token Detected", + "EXPIRATION_GRAY_PERIOD": "Gray Period Expiration", + "NEW_TOKEN": "New Token", + "PRICES": "Prices", + "UPDATE_LICENSE": "Update License", + "LOGOLOGIN": "Login Logo", + "EXPIRATION_REASON": "Expiration Reason", + "GLOBAL": "Global", + "SMTP_AUTHENTICATION": "Authentication", + "LICENSE_REQUEST_SENT": "Thank you! The Licensing Team will check your account asap in order to approve your request: you will receive an email when the changes become effective. Please refer to license@xcally.com for further informations.", + "ACCOUNTNAME": "Account Name", + "EMAILADDRESS": "Email Address", + "EXPIRATION_REASON_MESSAGE_DISABLED": "Your license has been disabled.", + "EXPIRATION_REASON_MESSAGE_CHANGED": "Your machine unique id has been updated due to a change to your system.", + "EXPIRATION_CHANGED_ADVISE": "Contact xCALLY Motion License Team sending both your old and your new uuid.", + "OLD_TOKEN": "Old Token", + "SEND_EMAIL_TO": "Send Email to", + "JIRA_ERROR_MESSAGE": "Error during license request. Please contact our license team at license@xcally.com with your request", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "PAGE_TITLE": "Page Title", + "DEFAULT_PAGE_TITLE": "Default Page Title", + "PERPETUAL": "Perpetual", + "SECURITY_SUITE": "Security Suite", + "ANNUALLY": "Annually", + "AGENTOMNIDESKTOPINTERFACE": "Agent Omni Desktop Interface", + "MESSAGESALIGNMENT": "Messages Alignment", + "ENTER_LICENSE": "Enter your license", + "UPDATE_LICENSE_MANUALLY": "Do you want to update your license manually?", + "SECURITY": "Security", + "ALLOWEDLOGINATTEMPTS": "Allowed login attempts before locking the user/agent", + "BLOCKDURATION": "Minutes to wait before automatic unlock", + "AI": "A.I. Tools", + "AITOOLS": "A.I. Tools", + "SERVICE": "Service", + "NEW_CLOUDPROVIDER": "New Account", + "ADD_CLOUDPROVIDER": "Add Account", + "DELETE": "Delete", + "SECRETACCESSKEY": "Secret Access Key", + "ACCESSKEY": "Access Key ID", + "EDIT_CLOUDPROVIDER": "Edit Account", + "DELETE_CLOUDPROVIDER": "Delete Account", + "LANGUAGE": "Language", + "BUCKET": "Bucket", + "TRANSCRIBE": "Transcribe", + "TRANSCRIBEREGION": "Transcribe Region", + "TRANSCRIBEACCOUNT": "Transcribe Account", + "SENTIMENTANALYSIS": "Sentiment Analysis", + "SENTIMENTREGION": "Sentiment Analysis Region", + "SENTIMENTACCOUNT": "Sentiment Analysis Account", + "SSO": "SSO", + "GOOGLE_SSO_ENABLED": "Google SSO Enabled", + "ENFORCE_PASSWORD_HISTORY": "Enforce Password History", + "PASSWORD_HISTORY_LIMIT": "Password History Limit", + "PRIVACY_POLICY_EMAIL": "Privacy Policy for Email Addresses", + "PRIVACY_POLICY_NAME": "Privacy Policy for Names", + "PRIVACY_POLICY_NUMBER": "Privacy Policy for Numbers", + "SEARCH_ON_ENTER_KEY": "Search on Enter key", + "CHAT_INTERACTIONS_RELOAD_TIMEOUT": "Chat interactions reload timeout", + "MAIL_INTERACTIONS_RELOAD_TIMEOUT": "Email interactions reload timeout", + "OPENCHANNEL_INTERACTIONS_RELOAD_TIMEOUT": "Open Channel interactions reload timeout", + "SMS_INTERACTIONS_RELOAD_TIMEOUT": "SMS interactions reload timeout", + "WHATSAPP_INTERACTIONS_RELOAD_TIMEOUT": "WhatsApp Connector interactions reload timeout", + "STOP_RECORDING_ON_VOICE_CALL_TRANSFER": "Stop recording on voice call transfer", + "DISABLED_COOKIE": "Cookies banner", + "AD_SSO_ENABLED": "Active Directory SSO Enabled", + "CLOUD_PROVIDERS": "Cloud Providers", + "APPLICATION_ID": "Application Id", + "TENANT_ID": "Tenant Id", + "CLIENT_SECRET": "Client Secret", + "NEW_CLIENT_SECRET": "New Client Secret", + "REDIRECT_URI": "Redirect URI", + "REMOTE_URI": "Remote URI", + "AUTHENTICATE": "Authenticate", + "AUTHENTICATE_TO_MICROSOFT_IDENTITY_PLATFORM": "Authenticate to Microsoft Identity Platform", + "MICROSOFT_AUTHENTICATION_SUCCESS": "Authentication to the Microsoft Identity Platform completed successfully", + "MICROSOFT_AUTHENTICATION_FAIL": "Something went wrong while authenticating to the Microsoft Identity Platform", + "UPDATE_CLIENT_SECRET": "Update Client Secret", + "HELP": { + "DEFAULTSCREENRECORDINGPATH": "Enter the path where to store screen recording files on the Agent computer (leave empty for default Video Folder path)", + "RTLSUPPORT": "Enables the RTL Support for Arabic, Persian and Hebrew languages", + "ADDRESS": "External (public) ip address", + "LOCALNETADDRESS": "Local ip address/subnet", + "SMTP_SECURE": "If true, the connection to the server will use TLS", + "SMTP_USERNAME": "Username used for authentication", + "SMTP_PASSWORD": "Password used for authentication", + "EMAILADDRESS": "The message origin Email address (from)", + "SECURITY_SUITE": "Enables the secure password format, the mandatory password reset after the first login and the password expiration after 90 days", + "MOTIONBARREMEMBERME": "Enable/Disable the Remember Me feature in Motion Phonebar", + "LOGINMAILFREQUENCY": "Please remember to restart the EMAIL service each time this parameter has been changed", + "USERNAME": "Username", + "PASSWORD": "Password", + "PREVIEW_RECALLME_REMINDER_INTERVAL": "Time interval in minutes before which notification will be sent to agent informing him about preview recall to be made", + "ENFORCE_PASSWORD_HISTORY": "Enables the validation against previously used passwords", + "PASSWORD_HISTORY_LIMIT": "Number of last used unique passwords to check", + "PRIVACY_POLICY": "Number of characters that will be replaced with an asterisk (*) (0 = all characters)", + "SEARCH_ON_ENTER_KEY": "Start searching only after the agent hits the Enter key", + "INTERACTIONS_RELOAD_TIMEOUT": "Time interval in seconds after which interactions are reloaded (0 = real-time update)", + "CLIENT_SECRET": "The secret will no longer be visible once the configuration is saved. Store it safely if you want to use it elsewhere.", + "LIMIT_TABS": "Maximum number of possible interaction tabs open" + }, + "ERRORS": { + "CHATTIMEOUT_REQUIRED": "Mandatory field", + "CHATTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MOTIONBARAUTOUPDATERURL_MUST_VALID_URL": "Wrong format", + "MOTIONBARAUTOUPDATERURL_REQUIRED": "Mandatory field", + "ADDRESS_REQUIRED": "Mandatory field", + "MIN_INTERNAL_REQUIRED": "Mandatory field", + "MIN_MAILBOX_REQUIRED": "Mandatory field", + "NAME_REQUIRED": "Mandatory field", + "HEADER_WHITELABEL_REQUIRED": "Mandatory field", + "LOCALNETADDRESS_REQUIRED": "Mandatory field", + "LOCALNETADDRESS_MUST_VALID_PATTERN": "Wrong format", + "ADDRESS_MUST_VALID_PATTERN": "Wrong format", + "ACCOUNTNAME_REQUIRED": "Mandatory field", + "EMAIL_MUST_VALID": "Wrong format", + "SMTP_USERNAME_REQUIRED": "Mandatory field", + "PASSWORD_REQUIRED": "Mandatory field", + "SMTP_HOST_REQUIRED": "Mandatory field", + "SMTP_PORT_REQUIRED": "Mandatory field", + "PREVIEW_RECALLME_REMINDER_INTERVAL_REQUIRED": "Mandatory field", + "MIN_INTERNAL_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MIN_MAILBOX_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "PAGE_TITLE_REQUIRED": "Mandatory field", + "EMAIL_REQUIRED": "Mandatory field", + "PLAN_REQUIRED": "Mandatory field", + "LICENSE_REQUIRED": "Mandatory field", + "LOGINMAILFREQUENCY_REQUIRED": "Mandatory field", + "LOGINMAILFREQUENCY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "ALLOWEDLOGINATTEMPTS_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "BLOCKDURATION_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "ALLOWEDLOGINATTEMPTS_REQUIRED": "Mandatory field", + "BLOCKDURATION_REQUIRED": "Mandatory field", + "SERVICE_REQUIRED": "Mandatory field", + "SECRETACCESSKEY_REQUIRED": "Mandatory field", + "ACCESSKEY_REQUIRED": "Mandatory field", + "LANGUAGE_REQUIRED": "Mandatory field", + "BUCKET_REQUIRED": "Mandatory field", + "TRANSCRIBEREGION_REQUIRED": "Mandatory field", + "TRANSCRIBEACCOUNT_REQUIRED": "Mandatory field", + "SENTIMENTREGION_REQUIRED": "Mandatory field", + "SENTIMENTACCOUNT_REQUIRED": "Mandatory field", + "USERNAME_REQUIRED": "Mandatory field", + "FIELD_REQUIRED": "Mandatory field", + "WRONG_FORMAT": "Wrong format", + "PREVIEW_RECALLME_REMINDER_INTERVAL_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to" + }, + "NOTIFICATIONS": { + "MICROSOFT_AUTHENTICATION_SUCCESS": "Authentication to the Microsoft Identity Platform completed successfully", + "MICROSOFT_AUTHENTICATION_FAIL": "Something went wrong while authenticating to the Microsoft Identity Platform", + "CLOUD_PROVIDER_CREATED_SUCCESS_TITLE": "Cloud Provider successfully created", + "CLOUD_PROVIDER_SAVED_SUCCESS_TITLE": "Cloud Provider successfully saved", + "CLOUD_PROVIDER_DELETE_TITLE": "Are you sure want to delete the cloud provider?", + "CLOUD_PROVIDER_DELETE_MESSAGE": "{{ name }} will be deleted", + "CLOUD_PROVIDER_DELETED_SUCCESS_TITLE": "Cloud Provider successfully deleted", + "CLOUD_PROVIDERS_DELETE_TITLE": "Are you sure want to delete the selected cloud providers?", + "CLOUD_PROVIDERS_DELETE_MESSAGE": "{{ total }} cloud providers will be deleted", + "CLOUD_PROVIDERS_DELETED_SUCCESS_TITLE": "Cloud Providers successfully deleted", + "SMTP_SAVED_SUCCESS_TITLE": "SMTP configuration successfully saved", + "CLOUD_PROVIDER_SECRET_UPDATE_SUCCESS_TITLE": "Client Secret successfully updated" + }, + "LIMIT_TABS": "Limit of interaction tab" + } +} diff --git a/public/app/main/apps/sms/i18n/bs.json b/public/app/main/apps/sms/i18n/bs.json new file mode 100644 index 0000000..9f9a57b --- /dev/null +++ b/public/app/main/apps/sms/i18n/bs.json @@ -0,0 +1,297 @@ +{ + "SMS": { + "EDIT_DIALOGFLOWV2": "Edit Dialogflow V2", + "DIALOGFLOWV2": "Dialogflow V2", + "PRIVATEKEY": "Private Key", + "CLIENTEMAIL": "Client Email", + "PROJECTID": "Project ID", + "AMAZONLEX": "AmazonLex", + "EDIT_AMAZONLEX": "Edit Lex configuration", + "ACCESSKEYID": "Access key ID", + "SECRETACCESSKEY": "Access key secret", + "LEXREGION": "Region", + "BOTNAME": "Bot name", + "WELCOMEMESSAGE": "Welcome message", + "LOGIN_TIME": "Login time", + "PAUSE_TIME": "Pause time", + "DOWNLOAD_INTERACTION": "Download", + "TRANSFER": "Transfer", + "QUEUETRANSFER": "Queue Transfer", + "QUEUETRANSFERTIMEOUT": "Queue Transfer Timeout", + "AGENTTRANSFER": "Agent Transfer", + "AGENTTRANSFERTIMEOUT": "Agent Transfer Timeout", + "TAG": "Tag", + "EDIT_TAG": "Edit Tag", + "WAITFORTHEASSIGNEDAGENT": "Wait for the assigned agent", + "NOTIFICATION": "Notification", + "NOTIFICATIONSOUND": "Sound", + "NOTIFICATIONSHAKE": "Shake", + "NOTIFICATIONTEMPLATE": "Template", + "SYSTEM": "System", + "EDIT_SYSTEM": "Edit System", + "COMMAND": "Command", + "VARIABLE": "Variable", + "AUTHID": "Auth ID", + "NO_SMSDISPOSITIONS_AVAILABLE": "No Sms Disposition Available", + "CANNEDANSWERS": "Canned Answers", + "SMSCANNEDANSWERS": "Canned Answers", + "NO_SMSCANNEDANSWER_AVAILABLE": "No Canned Answers Available", + "NEW_SMSCANNEDANSWER": "New Canned Answer", + "ADD_SMSCANNEDANSWER": "Add Canned Answer", + "EDIT_SMSCANNEDANSWER": "Edit", + "DELETE_SMSCANNEDANSWER": "Delete", + "DELIVERYREPORTURL": "Delivery Report URL", + "DELETE": "Delete", + "SENDERSTRING": "Sender String", + "DELIVERYREPORT": "Delivery Report", + "METHOD": "Method", + "ADD_NOTE": "Add note", + "NOTE": "Note", + "SPYINTERACTION": "Spy", + "AUTOREPLY": "Auto Reply", + "EDIT_AUTOREPLY": "Edit Auto Reply", + "TIMES": "Number of times per interaction", + "TEXT": "Text", + "INSERT_MESSAGE_HERE": "Insert your text message here", + "CANNED_ANSWER_NOT_FOUND": "No Canned Answers were found", + "CANNED_ANSWER_SEARCH": "Enter a text to search a Canned Answer", + "SEND": "Send", + "TO": "To", + "MESSAGE": "Message", + "TAGS": "Tags", + "NO_AGENT_ONLINE": "No Agent Online", + "GOTOREALTIME_SMSQUEUE": "Go To Realtime Sms Queue", + "PARTIALPAUSE": "Parital Pause", + "BUSY": "Busy", + "TIMER": "Timer", + "IDLE": "Idle", + "CAPACITY": "Capacity", + "PROXY": "Proxy", + "ADVANCED": "Advanced", + "MOTIONPROXY": "Proxy Or Motion Domain", + "REALTIME": "Realtime", + "KEY": "Key", + "NAME": "Name", + "SMSQUEUES": "SMS Queues", + "SEARCH_FOR_ANYONE": "Search", + "STRATEGY": "Strategy", + "BASEURL": "Base URL", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause to use when mandatory disposition is enabled", + "ERRORS": { + "PROJECTID_REQUIRED": "Mandatory Field", + "CLIENTEMAIL_REQUIRED": "Mandatory Field", + "PRIVATEKEY_REQUIRED": "Mandatory Field", + "ACCESSKEYID_REQUIRED": "Access key ID is required", + "SECRETACCESSKEY_REQUIRED": "Access key secret is required", + "BOTNAME_REQUIRED": "Bot name is required", + "QUEUETRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "QUEUETRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "QUEUETRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "AGENTTRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENTTRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AGENTTRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "TAG_REQUIRED": "Mandatory Field", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "WAITFORTHEASSIGNEDAGENT_REQUIRED": "Mandatory Field", + "AGENT_TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "AGENT_TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "NAME_MUST_VALID_PATTERN": "Wrong format", + "COMMAND_REQUIRED": "Mandatory Field", + "AUTHID_REQUIRED": "Mandatory Field", + "TEXT_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "TEXT_REQUIRED": "Mandatory Field", + "VALUE_REQUIRED": "Mandatory Field", + "SENDERSTRING_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "SENDERSTRING_MUST_VALID_PATTERN": "Wrong format", + "METHOD_REQUIRED": "Mandatory Field", + "MOTIONPROXY_REQUIRED": "Mandatory Field", + "MOTIONPROXY_MUST_VALID_URL": "Wrong format", + "KEY_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "KEY_REQUIRED": "Mandatory Field", + "NAME_REQUIRED": "Mandatory Field", + "AGENT_TIMEOUT_REQUIRED": "Mandatory Field", + "PHONE_REQUIRED": "Mandatory Field", + "SID_REQUIRED": "Mandatory Field", + "TOKEN_REQUIRED": "Mandatory Field", + "USERNAME_REQUIRED": "Mandatory Field", + "PASSWORD_REQUIRED": "Mandatory Field", + "MOTIONADDRESS_REQUIRED": "Mandatory Field", + "MOTIONADDRESS_MUST_VALID_URL": "Wrong format", + "ACCEPTURL_MUST_VALID_URL": "Wrong format", + "TIMEOUT_REQUIRED": "Mandatory Field", + "REJECTURL_MUST_VALID_URL": "Wrong format", + "CLOSEURL_MUST_VALID_URL": "Wrong format", + "TYPE_REQUIRED": "Mandatory Field", + "LIST_REQUIRED": "Mandatory Field", + "PRIORITY_REQUIRED": "Mandatory Field", + "CONDITION_REQUIRED": "Mandatory Field", + "TRUEPRIORITY_REQUIRED": "Mandatory Field", + "FALSEPRIORITY_REQUIRED": "Mandatory Field", + "AGENT_REQUIRED": "Mandatory Field", + "QUEUE_REQUIRED": "Mandatory Field", + "DISPOSITION_REQUIRED": "Mandatory Field", + "ACCOUNTSID_REQUIRED": "Mandatory Field", + "AUTHTOKEN_REQUIRED": "Mandatory Field", + "BASEURL_REQUIRED": "Mandatory Field", + "APIKEY_REQUIRED": "Mandatory Field", + "APPLICATIONID_REQUIRED": "Mandatory Field", + "ACCOUNTID_REQUIRED": "Mandatory Field", + "MANDATORYDISPOSITIONPAUSEID_REQUIRED": "Mandatory field" + }, + "AGENT_TIMEOUT": "Agent Timeout", + "DESCRIPTION": "Description", + "ADD_SMSQUEUE": "Add SMS Queue", + "EDIT_SMSQUEUE": "Edit SMS Queue", + "DELETE_SMSQUEUE": "Delete SMS Queue", + "SETTINGS": "Settings", + "GENERAL": "General", + "CREATED_AT": "Created At", + "SAVE": "Save", + "SMSACCOUNTS": "SMS Accounts", + "TYPE": "Type", + "PHONE": "Phone", + "SID": "SID", + "TOKEN": "Token", + "SMSTYPE": "SMS Type", + "USERNAME": "Username", + "PASSWORD": "Password", + "MOTIONADDRESS": "Motion Address", + "ADD_SMSACCOUNT": "Add SMS Account", + "EDIT_SMSACCOUNT": "Edit SMS Account", + "DELETE_SMSACCOUNT": "Delete SMS Account", + "LIST": "List", + "FIDELITY": "Fidelity", + "API": "API", + "DISPOSITIONS": "Dispositions", + "WEBHOOKS": "WebHooks", + "ACTIONS": "Actions", + "ACCEPT": "Accept", + "ACCEPTMETHOD": "Accept Method", + "ACCEPTURL": "Accept URL", + "REJECT": "Reject", + "REJECTMETHOD": "Reject Method", + "REJECTURL": "Reject URL", + "CLOSE": "Close", + "CLOSEMETHOD": "Close Method", + "CLOSEURL": "Close URL", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "BACK": "Back", + "SMS": "SMS", + "ID": "Id", + "APIKEY": "ApiKey", + "APPLICATIONID": "Application ID", + "ACCOUNTID": "Account ID", + "CONFIRM_PASSWORD": "Confirm Password", + "SMSDISPOSITIONS": "SMS Dispositions", + "NO_SMSDISPOSITION_AVAILABLE": "No SMS Dispositions available", + "NEW_SMSDISPOSITION": "New SMS Disposition", + "ADD_SMSDISPOSITION": "Add SMS Disposition", + "EDIT_SMSDISPOSITION": "Edit SMS Disposition", + "DELETE_SMSDISPOSITION": "Delete SMS Disposition", + "NEW_SMSQUEUE": "New SMS Queue", + "NEW_SMSACCOUNT": "New SMS Account", + "NO_AVAILABLE_INFO": "No available info", + "ALL_TEAMS": "All Teams", + "SELECTED_TEAMS": "Selected Teams", + "DIALOGFLOW": "DialogFlow", + "EDIT_DIALOGFLOW": "Edit DialogFlow configuration", + "LANGUAGE": "Language", + "HELP": { + "WELCOMEMESSAGE": "This is the first response message sent to new interactions", + "MOTIONPROXY": "The field must have the following format: ://[:]. Example: https://X.Y.Z.W", + "NAME": "Only numbers, letters and specific characters (._) are supported", + "LIST": "Contact Manager list used to associate contacts", + "RECEIVEURL": "This is the auto-generated API string you need to use to receive the messages inside your account from your SMS provider (POST method must be used): click the clipboard button to copy it", + "DELIVERYREPORTURL": "This is the auto-generated API string you need to use to receive the delivery report of sent messages from your SMS provider (POST method must be used): click the clipboard button to copy it", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause to use when mandatory disposition is enabled" + }, + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "TEAMADD_SMSQUEUE": "Add Team To SMS Queue", + "AGENTADD_SMSQUEUE": "Add Agent To SMS Queue", + "ALL_AGENTS": "All Agents", + "SELECTED_AGENTS": "Selected Agents", + "RECEIVEURL": "Receive URL", + "INTERACTION": "Interaction", + "INTERACTIONS": "Interactions", + "NO_INTERACTION_AVAILABLE": "No interactions available", + "CONTACT": "Contact", + "STARTEDAT": "Started At", + "LASTMESSAGE": "Last message", + "AGENT": "Agent", + "CLOSEDAT": "Closed At", + "DISPOSITION": "Disposition", + "NOTES": "Notes", + "GOTO": "Goto", + "GOTOIF": "Gotoif", + "NOOP": "Noop", + "QUEUE": "Queue", + "TIMEOUT": "Timeout", + "VALUE": "Value", + "EDIT_AGENT": "Edit Agent", + "EDIT_GOTO": "Edit Goto", + "EDIT_NOOP": "Edit Noop", + "EDIT_GOTOIF": "Edit Gotoif", + "EDIT_QUEUE": "Edit Queue", + "CONDITION": "Condition", + "TRUEPRIORITY": "True Priority", + "FALSEPRIORITY": "False Priority", + "PRIORITY": "Priority", + "GOTOP": "Gotop", + "EDIT_GOTOP": "Edit Gotop", + "EDIT_CLOSE": "Edit Close", + "FILTER": "Filter", + "SELECT_STATUS": "Select a status", + "ALL": "All", + "SELECT_ACCOUNT": "Select an account", + "OPENED": "Open", + "CLOSED": "Closed", + "STATUS": "Status", + "ACCOUNT": "Account", + "OPEN": "Open", + "INFO": "Info", + "ACCOUNTSID": "Account SID", + "AUTHTOKEN": "Auth Token", + "UNKNOWN": "Unknown", + "UNREGISTERED": "Unregistered", + "UNAVAILABLE": "Unavailable", + "NOT_INUSE": "Not in use", + "REACHABLE": "Reachable", + "IN_USE": "In use", + "AGENTS": "Agents", + "QUEUES": "Queues", + "FULLNAME": "Fullname", + "INTERNAL": "Internal", + "PHONE_STATE": "Phone State", + "PHONE_STATUS": "Phone Status", + "PAUSE": "Pause", + "LOGOUT": "Logout", + "AGENTADD_QUEUE": "Add agent to SMS queue", + "UNPAUSE": "End Pause", + "DEFAULT_PAUSE": "Default pause", + "LOGGED_IN": "Logged in", + "PAUSED": "Paused", + "READY": "Ready", + "WAITING": "Waiting", + "VOICE": "Voice", + "CHAT": "Chat", + "MAIL": "Email", + "OPENCHANNEL": "Open channel", + "FAX": "Fax", + "AGENTSADD_QUEUE": "Add agents to SMS queue", + "INTERACTIONS_SMSACCOUNT": "Go to Interactions", + "REFRESH_INTERACTIONS": "Refresh Interactions", + "DELETE_INTERACTION": "Delete Interaction", + "AGENTADD_SMSACCOUNT": "Add Agent to SMS Account", + "TEAMS_ASSOCIATION": "Teams Association", + "DOWNLOAD_WITH_ATTACHMENT": "Download with attachment", + "DOWNLOAD_WITHOUT_ATTACHMENT": "Download without attachment" + } +} diff --git a/public/app/main/apps/staff/i18n/bs.json b/public/app/main/apps/staff/i18n/bs.json new file mode 100644 index 0000000..16c4dd6 --- /dev/null +++ b/public/app/main/apps/staff/i18n/bs.json @@ -0,0 +1,424 @@ +{ + "STAFF": { + "MANAGE_API_KEY": "API Key Manager", + "GENERATE": "Generate", + "REGENERATE": "Regenerate", + "REMOVE": "Remove", + "APIKEYMANAGER_USER": "API Key Manager", + "APIKEY": "API Key", + "VIDEOSUPPORT": "Video support", + "HOTDESK": "Hot desk", + "ENABLEVIDEOECORDING": "Enable Video Recording", + "ENABLESCREENRECORDINGBYAGENT": "Enable Screen Recording by Agent", + "ENABLEAUTOMATICSCREENRECORDING": "Enable Automatic Screen Recording", + "OLD_PASSWORD": "Old Password", + "ENABLEJAWSINTEGRATION": "Enable Jaws Integration", + "ALIAS": "Alias", + "NO_PASSWORD_CHANGE": "No Password Change", + "SECURITY_SUITE": "Security Suite", + "AUTO_ANSWER": "Auto answer", + "CHAT_AUTOANSWER": "Chat auto answer", + "CHAT_AUTOANSWERDELAY": "Chat auto answer delay [s]", + "EMAIL_AUTOANSWER": "Email auto answer", + "EMAIL_AUTOANSWERDELAY": "Email auto answer delay [s]", + "SMS_AUTOANSWER": "Sms auto answer", + "SMS_AUTOANSWERDELAY": "Sms auto answer delay [s]", + "OPENCHANNEL_AUTOANSWER": "Openchannel auto answer", + "OPENCHANNEL_AUTOANSWERDELAY": "Openchannel auto answer delay [s]", + "FAX_AUTOANSWER": "Fax auto answer", + "FAX_AUTOANSWERDELAY": "Fax auto answer delay [s]", + "WHATSAPP_AUTOANSWER": "Whatsapp connector auto answer", + "WHATSAPP_AUTOANSWERDELAY": "Whatsapp connector auto answer delay [s]", + "LAST_PASSWORD_RESET_AT": "Last Password Reset At", + "SIP_WEBRTC": "Sip", + "SETTINGS_WEBRTC": "Settings", + "WEBRTC": "WebRTC", + "DTLSCERTFILE": "TLS certificate", + "DTLSPRIVATEKEY": "TLS certificate's private key", + "CONTEXT": "Context", + "RINGINUSE": "Ring In Use", + "USERS": "Users", + "AGENTS": "Agents", + "TOGGLE_SIDENAV": "Toggle sidenav", + "SEARCH_FOR_ANYONE": "Search", + "BACK": "Back", + "MULTI_SELECT_TOGGLE": "multi select toggle", + "SELECT_ALL": "Select all", + "SELECT_NONE": "Select None", + "SELECTED": "Selected", + "DELETE_SELECTED": "Delete selected", + "EXPORT_SELECTED": "Export selected", + "ALL_USERS": "All users", + "ALL_AGENTS": "All agents", + "SORT": "sort", + "NAME": "Name", + "FULLNAME": "Full Name", + "A_TO_Z": "(A to Z)", + "Z_TO_A": "(Z to A)", + "MORE": "More", + "DELETE_USER": "Delete User", + "EDIT_USER": "Edit User", + "DELETE_AGENT": "Delete Agent", + "EDIT_AGENT": "Edit Agent", + "DELETE": "Delete", + "SAVE": "SAVE", + "ADD_USER": "ADD USER", + "ADD_AGENT": "ADD AGENT", + "NO_RESULTS": "No results..", + "CLOSE_DIALOG": "Close dialog", + "NAME_REQUIRED": "Name (required)", + "USERNAME": "Username", + "SHOW_ALL_FIELDS": "Show All Fields", + "PHONE_NUMBER": "Phone number", + "EMAIL": "Email", + "PASSWORD": "Password", + "ERRORS": { + "CONFIRM_REQUIRED": "Mandatory field", + "ALLOWCODECS_REQUIRED": "Mandatory field", + "ENCRYPTION": "SRTP (Secure Realtime Protocol) Encryption", + "DTLSCERTFILE_REQUIRED": "Mandatory field", + "DTLSPRIVATEKEY_REQUIRED": "Mandatory field", + "FULLNAME_REQUIRED": "Mandatory field", + "USERNAME_REQUIRED": "Mandatory field", + "EMAIL_REQUIRED": "Mandatory field", + "PASSWORD_REQUIRED": "Mandatory field", + "CONFIRM_NOT_MATCH": "The passwords don't match", + "EMAIL_MUST_VALID": "Wrong format", + "ACCOUNTNAME_REQUIRED": "Mandatory field", + "NAME_REQUIRED": "Mandatory field", + "HOST_REQUIRED": "Mandatory field", + "CHATCAPACITY_REQUIRED": "Mandatory field", + "MAILCAPACITY_REQUIRED": "Mandatory field", + "FAXCAPACITY_REQUIRED": "Mandatory field", + "SMSCAPACITY_REQUIRED": "Mandatory field", + "WHATSAPPCAPACITY_REQUIRED": "Mandatory field", + "OPENCHANNELCAPACITY_REQUIRED": "Mandatory field", + "SIPEXPIRES_REQUIRED": "Mandatory field", + "SIPPORT_REQUIRED": "Mandatory field", + "UNCONDITIONALNUMBER_REQUIRED": "Mandatory field", + "NOREPLYNUMBER_REQUIRED": "Mandatory field", + "BUSYNUMBER_REQUIRED": "Mandatory field", + "USERNAME_MUST_VALID_PATTERN": "Wrong format {{regex}}", + "REMOTECONTROLPORT_REQUIRED": "Mandatory field", + "CHATCAPACITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MAILCAPACITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "FAXCAPACITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "OPENCHANNELCAPACITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AUTOANSWERDELAY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AUTOANSWERDELAY_REQUIRED": "Mandatory field", + "MONITOREXTENSION_REQUIRED": "Mandatory field", + "SECURE_PASSWORD_PATTERN": "The password must be at least 8 characters long and have 1 lowercase character, 1 uppercase character, 1 number and 1 special character ~!@#$%^&-_=+[{]}.", + "CRUDPERMISSIONS_REQUIRED": "Mandatory field", + "USERPROFILE_REQUIRED": "Mandatory field", + "PASSWORD_OLDPASSWORD_MATCH": "New password must be different from previous one" + }, + "ACCOUNT": "Account", + "VOICE": "Voice", + "CREATED_AT": "Created At", + "ROLE": "Role", + "PERSONAL_INFO": "Personal Info", + "DESCRIPTION": "Description", + "CHANGE_AVATAR": "Change Avatar", + "GENERAL": "General", + "INTERNAL": "Internal", + "TRANSPORT": "Transport", + "ALLOWCODECS": "Allowed Codecs", + "DISABLED": "Deactivated", + "BLOCKED": "Locked", + "AD_SSO_ENABLED": "Active Directory SSO", + "AUTHENTICATION": "Authentication", + "HELP": { + "DISABLED": "select to deactivate / unselect to reactivate", + "BLOCKED": "Lock / Unlock access", + "APIKEY": "Please use 'API key manager' button on toolbar to manage this key", + "LAST_PASSWORD_RESET_AT": "Last date and time the password has been changed. If Secure Suite General Setting is enabled, the password will expire after 90 days.", + "DTLSCERTFILE": "Link to the valid TLS certificate(.crt file). Default value: '/etc/pki/tls/certs/motion.crt'.", + "DTLSPRIVATEKEY": "Link to the certificate's private key(.key file). Default value: '/etc/pki/tls/private/motion.key'.", + "ALLOWCODECS": "Allowed Codecs in order of preference", + "TRANSPORT": "Set the default transports in order of preference", + "HOST": "How to find the client - IP or host name. If you want the phone to register itself, use the keyword dynamic instead of Host IP", + "NAT": "Changes the behaviour of Asterisk for clients behind a firewall. If any of the comma-separated options is 'no', Asterisk will ignore other settings and set nat=no", + "SIPEXPIRES": "Default: 160", + "SIPPORT": "Default: 5160", + "TYPE": "Determines the SIP role within asterisk. User: used to authenticate incoming - Peer: for outgoing calls - Friend: covers both characteristics of the above", + "CHATCAPACITY": "Maximum number of concurrent channel interactions per agent (0=unlimited)", + "MAILCAPACITY": "Maximum number of concurrent channel interactions per agent (0=unlimited)", + "FAXCAPACITY": "Maximum number of concurrent channel interactions per agent (0=unlimited)", + "SMSCAPACITY": "Maximum number of concurrent channel interactions per agent (0=unlimited)", + "WHATSAPPCAPACITY": "Maximum number of concurrent channel interactions per agent (0=unlimited)", + "OPENCHANNELCAPACITY": "Maximum number of concurrent channel interactions per agent (0=unlimited)", + "CALLGROUP": "The agent's callgroup", + "PICKUPGROUP": "The groups in which the agent can answer calls", + "USERNAME": "Only numbers, letters and specific characters (._) are supported", + "ENCRYPTION": "SRTP (Secure Realtime Protocol) Encryption", + "SAVE_PERMISSIONS": "Every section containing any pending changes will be saved", + "CUSTOM_DASHBOARDS_PERMISSIONS": "Custom Dashboards permissions are managed in the Tools module", + "ENABLEAUTOMATICSCREENRECORDING": "The functionality is available only for voice channel", + "MASK_SENSITIVE_DATA": "Mask any sensitive data throughout the application (e.g. phone numbers and email addresses)", + "WSS_PORT": "Default: 8089", + "AD_SSO_ENABLED": "Login in with your Active Directory credentials" + }, + "NEW_PASSWORD": "New Password", + "CONFIRM_PASSWORD": "Confirm Password", + "CHANGE_PASSWORD": "Change Password", + "CHANGEPASSWORD_AGENT": "Change Password", + "CHANGEPASSWORD_USER": "Change Password", + "CHANGEPASSWORD_TELEPHONE": "Change Password", + "LOGININPAUSE": "Login In Pause", + "HOST": "Host", + "NAT": "NAT", + "CHANSPY": "ChanSpy", + "OTHER_CHANNELS": "Other Channels", + "CHATCAPACITY": "Chat Capacity", + "MAILCAPACITY": "Email Capacity", + "FAXCAPACITY": "Fax Capacity", + "SMSCAPACITY": "Sms Capacity", + "WHATSAPPCAPACITY": "WhatsApp Connector Capacity", + "OPENCHANNELCAPACITY": "Open Channel Capacity", + "MOTIONBAR": "Motion Bar", + "SETTINGS": "Settings", + "AUTOANSWER": "Auto Answer", + "ENABLESETTINGS": "Enable Settings", + "CALL_FORWARDING": "Call Forwarding", + "UNCONDITIONAL": "Unconditional", + "UNCONDITIONALNUMBER": "Unconditional Number", + "NOREPLY": "No Reply", + "NOREPLYNUMBER": "No Reply Number", + "BUSY": "Busy", + "BUSYNUMBER": "Busy Number", + "REMOTE_CONTROL": "Remote Control", + "REMOTECONTROL": "Remote Control", + "REMOTECONTROLPORT": "Remote Control Port", + "SIP": "SIP", + "SIPEXPIRES": "SIP Expires [sec]", + "SIPPORT": "SIP Port", + "PENALTY": "Penalty", + "ACCOUNTNAME": "Account Name", + "ADD_TELEPHONE": "Add Telephone", + "EDIT_TELEPHONE": "Edit Telephone", + "DELETE_TELEPHONE": "Delete Telephone", + "TEAMS": "Teams", + "DELETE_TEAM": "Delete Team", + "AGENTADD_TEAM": "Add Agents to Team", + "EDIT_TEAM": "Edit Team", + "TYPE": "Type", + "TELEPHONES": "Telephones", + "CALLERID": "Caller ID", + "ENABLERECORDING": "Enable Recording", + "STAFF": "Staff", + "ID": "Id", + "NEW_USER": "New User", + "NEW_AGENT": "New Agent", + "NEW_TELEPHONE": "New Telephone", + "NEW_TEAM": "New Team", + "ADD_TEAM": "Add Team", + "JOIN_QUEUE": "Join Queue", + "CAPACITY": "Capacity", + "AUTOINTERNAL": "Auto generate internal number", + "ADD_AGENT_TO_TEAM": "Add Agent to Team", + "TEAMADD_AGENT": "Add Agent to Team", + "NO_AVAILABLE_INFO": "No available info", + "PERMISSIONS": "Permissions", + "ADD_AGENT_TO_QUEUE": "Add Agent to Queue", + "ALL_MODULES_AVAILABLE": "All modules available", + "CALLGROUP": "Call Group", + "PICKUPGROUP": "Pickup Group", + "ADD_AGENT_TO_QUEUE_CAMPAIGNS": "Add Agent to Queue Campaigns", + "ADD_AGENT_TO_VOICE_QUEUES": "Add Agent to Voice Queues", + "ADD_AGENT_TO_CHAT_QUEUES": "Add Agent to Chat Queues", + "ADD_AGENT_TO_MAIL_QUEUES": "Add Agent to Email Queues", + "ADD_AGENT_TO_SMS_QUEUES": "Add Agent to SMS Queues", + "ADD_AGENT_TO_WHATSAPP_QUEUES": "Add Agent to WhatsApp Queues", + "ADD_AGENT_TO_OPENCHANNEL_QUEUES": "Add Agent to Open Channel Queues", + "ADD_AGENT_TO_FAX_QUEUES": "Add Agent to Fax Queues", + "QUEUEADD_USER_VOICE_INBOUND": "Add User to Voice Queues", + "QUEUEADD_USER_CHAT_INBOUND": "Add User to Chat Queues", + "QUEUEADD_USER_MAIL_INBOUND": "Add User to Email Queues", + "QUEUEADD_USER_SMS_INBOUND": "Add User to SMS Queues", + "QUEUEADD_USER_WHATSAPP_INBOUND": "Add User to WhatsApp Queues", + "QUEUEADD_USER_OPENCHANNEL_INBOUND": "Add User to Open Channel Queues", + "QUEUEADD_USER_FAX_INBOUND": "Add User to Fax Queues", + "ALL_TEAMS": "All Teams", + "SELECTED_TEAMS": "Selected Teams", + "SELECTED_AGENTS": "Selected Agents", + "ALL_QUEUE_CAMPAIGNS": "All Queue Campaigns", + "SELECTED_QUEUE_CAMPAIGNS": "Selected Queue Campaigns", + "ALL_VOICE_QUEUES": "All Voice Queues", + "SELECTED_VOICE_QUEUES": "Selected Voice Queues", + "ALL_CHAT_QUEUES": "All Chat Queues", + "SELECTED_CHAT_QUEUES": "Selected Chat Queues", + "ALL_MAIL_QUEUES": "All Email Queues", + "SELECTED_MAIL_QUEUES": "Selected Email Queues", + "ALL_SMS_QUEUES": "All SMS Queues", + "SELECTED_SMS_QUEUES": "Selected SMS Queues", + "ALL_WHATSAPP_QUEUES": "All WhatsApp Queues", + "SELECTED_WHATSAPP_QUEUES": "Selected WhatsApp Queues", + "ALL_OPENCHANNEL_QUEUES": "All Open Channel Queues", + "SELECTED_OPENCHANNEL_QUEUES": "Selected Open Channel Queues", + "ALL_FAX_QUEUES": "All Fax Queues", + "SELECTED_FAX_QUEUES": "Selected Fax Queues", + "VOICEMAIL": "Voicemail", + "SHOWWEBCONTROL": "Typology", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "CALLFORWARDING": "Call Forwarding", + "DND": "Do not disturb during pause", + "UNANSWEREDCALLBADGE": "Show unanswered call badge", + "ENABLEDTMFTONE": "Enable Dtmf tones", + "AUTOANSWERDELAY": "Auto Answer Delay [s]", + "ENCRYPTION": "Encryption", + "CHANNELS": "Channels", + "CHAT": "Chat", + "SMS": "Sms", + "WHATSAPP": "WhatsApp Connector", + "OPENCHANNEL": "Open Channel", + "FAX": "Fax", + "QUEUEADD_USER_VOICE_OUTBOUND": "Add User to Queue Campaigns", + "MONITOREXTENSION": "Record calls to user extension", + "EDITPERMISSIONS": "Editing Permissions", + "READ_PERMISSION": "Read", + "EDIT_PERMISSION": "Edit", + "DELETE_PERMISSION": "Delete", + "GENERAL_PERMISSIONS": "General", + "ENABLEMESSENGER": "Enable Internal Messenger", + "OUTBOUNDPROXY": "Oubound Proxy", + "PHONE": "Phone", + "MOBILE": "Mobile", + "PREFIXREQUIRED": "Prefix Required", + "MANAGE_PERMISSIONS": "Manage Permissions", + "USERADD_VOICEQUEUES": "Add Voice Queue to User", + "ALL_VOICEQUEUES": "All Voice Queues", + "SELECTED_VOICEQUEUES": "Selected Voice Queues", + "USERADD_CHATQUEUES": "Add Chat Queue to User", + "ALL_CHATQUEUES": "All Chat Queues", + "SELECTED_CHATQUEUES": "Selected Email Queues", + "USERADD_MAILQUEUES": "Add Email Queue to User", + "ALL_MAILQUEUES": "All Email Queues", + "SELECTED_MAILQUEUES": "Selected Chat Queues", + "USERADD_SMSQUEUES": "Add SMS Queue to User", + "ALL_SMSQUEUES": "All SMS Queues", + "SELECTED_SMSQUEUES": "Selected SMS Queues", + "USERADD_WHATSAPPQUEUES": "Add Whataspp Queue to User", + "ALL_WHATSAPPQUEUES": "All Whataspp Queues", + "SELECTED_WHATSAPPQUEUES": "Selected WhatsApp Queues", + "USERADD_FAXQUEUES": "Add Fax Queue to User", + "ALL_FAXQUEUES": "All Fax Queues", + "SELECTED_FAXQUEUES": "Selected Fax Queues", + "USERADD_OPENCHANNELQUEUES": "Add Open Channel Queue to User", + "ALL_OPENCHANNELQUEUES": "All Open Channel Queues", + "SELECTED_OPENCHANNELQUEUES": "Selected Open Channel Queues", + "USERADD_PROJECTS": "Add Cally Square Project to User", + "ALL_PROJECTS": "All Cally Square Projects", + "SELECTED_PROJECTS": "Selected Cally Square Projects", + "USERADD_CHATWEBSITES": "Add Chat Website to User", + "ALL_CHATWEBSITES": "All Chat Websites", + "SELECTED_CHATWEBSITES": "Selected Chat Websites", + "USERADD_QUEUECAMPAIGNS": "Add Queue Campaign to User", + "ALL_QUEUECAMPAIGNS": "All Queue Campaigns", + "SELECTED_QUEUECAMPAIGNS": "Selected Queue Campaigns", + "USERADD_MAILACCOUNTS": "Add Email Account to User", + "ALL_MAILACCOUNTS": "All Email Accounts", + "SELECTED_MAILACCOUNTS": "Selected Email Accounts", + "USERADD_FAXACCOUNTS": "Add Fax Account to User", + "ALL_FAXACCOUNTS": "All Fax Accounts", + "SELECTED_FAXACCOUNTS": "Selected Fax Accounts", + "USERADD_SMSACCOUNTS": "Add SMS Account to User", + "ALL_SMSACCOUNTS": "All SMS Accounts", + "SELECTED_SMSACCOUNTS": "Selected SMS Accounts", + "USERADD_WHATSAPPACCOUNTS": "Add WhatsApp Account to User", + "ALL_WHATSAPPACCOUNTS": "All WhatsApp Accounts", + "SELECTED_WHATSAPPACCOUNTS": "Selected WhatsApp Accounts", + "USERADD_OPENCHANNELACCOUNTS": "Add Open Channel Account to User", + "ALL_OPENCHANNELACCOUNTS": "All Open Channel Accounts", + "SELECTED_OPENCHANNELACCOUNTS": "Selected Open Channel Accounts", + "USERPROFILES": "User Profiles", + "USERPROFILE": "User Profile", + "NEW_USERPROFILE": "New User Profile", + "ADD_USERPROFILE": "Add User Profile", + "EDIT_USERPROFILE": "Edit User Profile", + "CLONE_USERPROFILE": "Clone User Profile", + "DELETE_USERPROFILE": "Delete User Profile", + "CRUDPERMISSIONS": "Permission Type", + "SECTIONS": "Sections", + "MODULES": "Modules", + "SUMMARY": "Summary", + "REPORT_TYPE": "Report Type", + "PERMISSIONS_MANAGE": "Manage", + "PERMISSIONS_SECTION_TITLE": "{{sectionName}} Permissions", + "PERMISSIONS_AUTO_ASSOCIATION_INFO": "Automatically associate every current and future resource of this section to the User Profile", + "PERMISSIONS_PLACEHOLDER_SEARCH": "Search...", + "PERMISSIONS_SELECT_SECTION": "Select a section", + "PERMISSIONS_SELECT_REPORT_TYPE": "Select report type", + "PERMISSIONS_ALL_RESOURCES": "All resources", + "PERMISSIONS_SELECTED_RESOURCES": "Selected resources", + "PERMISSIONS_SECTION_HIDE": "Hide section to the User", + "PERMISSIONS_SECTION_SHOW": "Show section to the User", + "PERMISSIONS_WARNING_ENABLE_ALL": "All {{sectionName}} subsections and their resources will be enabled. Are you sure you want to continue?", + "PERMISSIONS_WARNING_CLOSE": "You have unsaved changes. Are you sure you want to exit without saving?", + "NOTIFICATIONS": { + "PERMISSIONS_ENABLED_ALL_SUCCESS_TITLE": "{{sectionName}} section enabled", + "PERMISSIONS_ENABLED_ALL_SUCCESS_MESSAGE": "All {{sectionName}} resources have been added to {{userProfileName}} User Profile", + "PERMISSIONS_ENABLED_ALL_SUCCESS_MESSAGE_NO_RESOURCES": "{{sectionName}} has been added to {{userProfileName}} User Profile", + "PERMISSIONS_DISABLED_ALL_SUCCESS_TITLE": "{{sectionName}} section disabled", + "PERMISSIONS_DISABLED_ALL_SUCCESS_MESSAGE": "All {{sectionName}} resources have been removed from {{userProfileName}} User Profile", + "PERMISSIONS_DISABLED_ALL_SUCCESS_MESSAGE_NO_RESOURCES": "{{sectionName}} has been removed from {{userProfileName}} User Profile", + "PERMISSIONS_SAVED_SUCCESS_TITLE": "{{sectionName}} section saved", + "PERMISSIONS_SAVED_SUCCESS_MESSAGE": "Permissions successfully updated!" + }, + "CONFIRM": "Confirm", + "CANCEL": "Cancel", + "CLOSE": "Close", + "QUEUES_ASSOCIATION": "{{channel}} Queues Association", + "TEAMS_ASSOCIATION": "Teams Association", + "PERMISSIONS_UNAUTHORIZED_REDIRECT_TITLE": "Unauthorized action", + "PERMISSIONS_UNAUTHORIZED_REDIRECT_MESSAGE": "You are not allowed to access the selected section", + "PERMISSIONS_UNAUTHORIZED_CREATION_MESSAGE": "You are not allowed to create the resource", + "MASK_SENSITIVE_DATA": "Mask Sensitive Data", + "WSS_PORT": "WSS Port", + "DOWNLOADS": "Downloads", + "DOWNLOAD_PERMISSIONS": "Download Permissions", + "VOICE_RECORDINGS": "Voice Recordings", + "OMNICHANNEL_INTERACTIONS": "Omnichannel Interactions", + "ATTACHMENTS": "Attachments", + "SCREEN_RECORDINGS": "Screen Recordings", + "JSCRIPTY_SESSIONS": "Jscripty Sessions", + "CONTACT_MANAGER_LISTS": "Contact Manager Lists", + "CALLYSQUARE_RECORDINGS": "Cally Square Recordings", + "IGNORE_AGENT_BREAK_STATUS_FOR_PREVIEW_CALLS": "Ignore agent break status for preview calls", + "SELECT_RECALLME_CAMPAIGN": "Select Recall Me Campaign", + "CLIENT_LOGS": "Client Logs", + "CLIENT_LOGS_DISABLED": "Client logs are disabled", + "CLIENT_LOGS_ENABLED": "Client logs are enabled", + "CLIENT_LOGS_LOGLEVEL_SELECT": "Select min logging level (severity)", + "CLIENT_LOGS_LOGLEVEL": "Log level: {{logLevel}}", + "CLIENT_LOGS_ENABLED_SINCE": "Enabled since: {{enabledSince}}", + "CLIENT_LOGS_ENABLED_MSG": "Client logs have been enabled for your user", + "CLIENT_LOGS_DISABLED_MSG": "Client logs have been disabled for your user", + "CLIENT_LOGS_ALL_ENABLED_WARNING": "Warning: this could severely affect server performances if many agents are logged in at the same time!", + "QUEUEADD_AGENT_VOICE_OUTBOUND": "Add Agent to Queue Campaigns", + "QUEUEADD_AGENT_VOICE_INBOUND": "Add Agent to Voice Queues", + "QUEUEADD_AGENT_CHAT_INBOUND": "Add Agent to Chat Queues", + "QUEUEADD_AGENT_MAIL_INBOUND": "Add Agent to Email Queues", + "QUEUEADD_AGENT_SMS_INBOUND": "Add Agent to SMS Queues", + "QUEUEADD_AGENT_WHATSAPP_INBOUND": "Add Agent to WhatsApp Queues", + "QUEUEADD_AGENT_OPENCHANNEL_INBOUND": "Add Agent to Open Channel Queues", + "QUEUEADD_AGENT_FAX_INBOUND": "Add Agent to Fax Queues", + "ALL_QUEUES_VOICE_OUTBOUND": "All Queue Campaigns", + "SELECTED_QUEUES_VOICE_OUTBOUND": "Selected Queue Campaigns", + "ALL_QUEUES_VOICE_INBOUND": "All Voice Queues", + "SELECTED_QUEUES_VOICE_INBOUND": "Selected Voice Queues", + "ALL_QUEUES_CHAT_INBOUND": "All Chat Queues", + "SELECTED_QUEUES_CHAT_INBOUND": "Selected Chat Queues", + "ALL_QUEUES_MAIL_INBOUND": "All Email Queues", + "SELECTED_QUEUES_MAIL_INBOUND": "Selected Email Queues", + "ALL_QUEUES_SMS_INBOUND": "All SMS Queues", + "SELECTED_QUEUES_SMS_INBOUND": "Selected SMS Queues", + "ALL_QUEUES_WHATSAPP_INBOUND": "All WhatsApp Queues", + "SELECTED_QUEUES_WHATSAPP_INBOUND": "Selected WhatsApp Queues", + "ALL_QUEUES_OPENCHANNEL_INBOUND": "All Open Channel Queues", + "SELECTED_QUEUES_OPENCHANNEL_INBOUND": "Selected Open Channel Queues", + "ALL_QUEUES_FAX_INBOUND": "All Fax Queues", + "SELECTED_QUEUES_FAX_INBOUND": "Selected Fax Queues" + } +} diff --git a/public/app/main/apps/tools/i18n/bs.json b/public/app/main/apps/tools/i18n/bs.json new file mode 100644 index 0000000..306ec24 --- /dev/null +++ b/public/app/main/apps/tools/i18n/bs.json @@ -0,0 +1,528 @@ +{ + "TOOLS": { + "VIDEOSUPPORT": "Video support", + "PREVIOUSCONTACT": "Previous", + "BOT": "Voicebot", + "CLONE_TRUNK": "Clone Trunk", + "DISPOSITIONS": "Dispositions", + "NEW_DISPOSITION": "New Disposition", + "ADD_DISPOSITION": "Add Disposition", + "EDIT_DISPOSITION": "Edit Disposition", + "DELETE_DISPOSITION": "Delete Disposition", + "RUN_SCHEDULE": "Run schedule", + "SENDIFEMPTY": "Send if empty", + "NEXTCONTACT": "Next", + "OUTBOUND_ROUTE": "Outbound Route", + "EDIT_DASHBOARDITEM": "Edit Dashboard Widget", + "FONTSIZE": "Font Size", + "TITLEFONTSIZE": "Font Title Size", + "CLONE_CUSTOMDASHBOARD": "Clone Custom Dashboard", + "LINK": "Link [https://]", + "BACKGROUND": "Background", + "FOREGROUND": "Foreground", + "IGNOREDIALERCONTACTID": "Ignore dialer contact Id", + "NONE": "None", + "TOTAL": "Total", + "ABANDONED": "Abandoned", + "WAITING": "Waiting", + "TALKING": "Talking", + "ANSWERED": "Answered", + "CONTACTITEMTYPE": "Contact item types", + "ORDER_BY": "Order by", + "RGBBACKGROUNDCOLOR": "RGB Background color", + "NEW_CONTACTITEMTYPE": "New contact item type", + "EDIT_CONTACTITEMTYPE": "Edit contact item type", + "DELETE_CONTACTITEMTYPE": "Delete contact item type", + "ORDER_BY_NUMERIC": "Order by field should be numeric value!", + "ADD_CONTACTITEMTYPE": "Add", + "UNMANAGED": "Unmanaged", + "CUSTOMTYPE": "Custom [path]", + "WEBREPORT": "Web Report", + "PIECHART": "Pie Chart", + "MULTIBARCHART": "Multibar Chart", + "MOVE_WIDGET": "Move Widget", + "USERADD_CUSTOMDASHBOARD": "Add User Permissions", + "GOTODASHBOARD_CUSTOMDASHBOARD": "Go to preview dashboard", + "GOTO_CUSTOMDASHBOARD": "Go to preview dashboard", + "METRIC": "Metric", + "FILTERVOICEQUEUES": "Filter Voice Queues", + "SERIE1": "Serie 1", + "SERIE2": "Serie 2", + "SERIE3": "Serie 3", + "REFRESH": "Refresh [s]", + "FORMAT": "Format", + "PATH": "Absolute Path", + "ALL_USERS": "All Users", + "SELECTED_USERS": "Selected Users", + "ADD_WIDGET": "Add Widget", + "COLOR": "Color", + "FAX": "Fax", + "INTERACTION": "Interaction", + "MESSAGE": "Message", + "T38PT_UDPTL": "T38pt Udptl", + "CALL": "Call", + "NAME": "Name", + "TRUNKS": "Trunks", + "SEARCH_FOR_ANYONE": "Search", + "SCRIPT": "Script", + "SCRIPT_INFO": "Info", + "SCRIPT_TYPE": "Type", + "EMAIL": "Email", + "FILTERFAXACCOUNTS": "Filter Fax Accounts", + "FILTERSMSACCOUNTS": "Filter Sms Accounts", + "FILTERCHATWEBSITES": "Filter Chat Websites", + "FILTERWHATSAPPACCOUNTS": "Filter Whatsapp Accounts", + "FILTEREMAILACCOUNTS": "Filter Email Accounts", + "FILTEROPENCHANNELACCOUNTS": "Filter OpenChannel Accounts", + "OPENED": "Opened", + "OPENED_TEXT": "Opened Interactions", + "MANAGED": "Managed", + "MANAGED_TEXT": "Managed Interactions", + "ERRORS": { + "INFO_REQUIRED": "Mandatory field", + "SCRIPT_REQUIRED": "Mandatory field", + "NAME_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "TITLE_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "REFRESH_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "REFRESH_REQUIRED": "Mandatory field", + "FONTSIZE_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "FONTSIZE_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "FONTSIZE_REQUIRED": "Mandatory field", + "PATH_REQUIRED": "Mandatory field", + "FORMAT_REQUIRED": "Mandatory field", + "REPORT_REQUIRED": "Mandatory field", + "TYPE_REQUIRED": "Mandatory field", + "VALUE_REQUIRED": "Mandatory field", + "ACCOUNT_REQUIRED": "Mandatory field", + "IGNOREDIALERCONTACTID_REQUIRED": "Ignore dialer contact Id field is required", + "FIELD_REQUIRED": "Mandatory field", + "NAME_REQUIRED": "Mandatory field", + "HOST_REQUIRED": "Mandatory field", + "DEFAULTUSER_REQUIRED": "Mandatory field", + "CALLERID_REQUIRED": "Mandatory field", + "KEY_REQUIRED": "Mandatory field", + "CONFIRM_NOT_MATCH": "The Passwords don't match", + "VALIDITYSTART_REQUIRED": "Mandatory field", + "VALIDITYEND_REQUIRED": "Mandatory field", + "MONTHDAY_REQUIRED": "Mandatory field", + "HOUR_REQUIRED": "Mandatory field", + "CONTENT_REQUIRED": "Mandatory field", + "URL_REQUIRED": "Mandatory field", + "URL_MUST_VALID_URL": "Wrong format", + "APPLICATION_REQUIRED": "Mandatory field", + "ARGUMENTS_REQUIRED": "Mandatory field", + "NAME_MUST_VALID_PATTERN": "Wrong format", + "POLLING_INTERVAL_REQUIRED": "Mandatory field", + "TITLE_REQUIRED": "Mandatory field", + "EMAILADDRESS_REQUIRED": "Mandatory field", + "EVENTVARIABLES_REQUIRED": "Mandatory field", + "INTEGRATION_REQUIRED": "Mandatory field", + "LIST_REQUIRED": "Mandatory field", + "TEMPLATE_REQUIRED": "Mandatory field", + "AUTOCREATECONTACT_REQUIRED": "Mandatory field", + "AUTOCREATE_FIELD_REQUIRED": "Mandatory field", + "OUTBOUNDROUTE_REQUIRED": "Mandatory field", + "QUEUE_REQUIRED": "Mandatory field", + "TIME_RANGE_TO_REQUIRED": "Mandatory field", + "WEEK_DAYS_TO_REQUIRED": "Mandatory field", + "MONTH_DAYS_TO_REQUIRED": "Mandatory field", + "MONTH_TO_REQUIRED": "Mandatory field", + "TIME_RANGE_FROM_INVALID": "Wrong Format", + "TIME_RANGE_TO_INVALID": "Wrong Format", + "ACTION_REQUIRED": "Mandatory field", + "CONFIGURATION_REQUIRED": "Mandatory field", + "PROJECT_REQUIRED": "Mandatory field", + "LOCATION_REQUIRED": "Mandatory field", + "OUTPUT_REQUIRED": "Mandatory field", + "REPORTTYPE_REQUIRED": "Mandatory field", + "REPORTFOLDER_REQUIRED": "Mandatory field", + "REPORTSUBFOLDER_REQUIRED": "Mandatory field", + "AGENT_REQUIRED": "Mandatory field", + "TIMEOUT_REQUIRED": "Mandatory field", + "TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "CHANNEL_REQUIRED": "Mandatory field" + }, + "HOST": "Host", + "SECRET": "Secret", + "DEFAULTUSER": "Default User", + "DESCRIPTION": "Description", + "ADD_TRUNK": "Add Trunk", + "HELP": { + "OPENED": "The total number of Active Interactions", + "MANAGED": "The total number of Completed Interactions", + "SCRIPT_INFO": "Insert a description for the script", + "SCRIPT_TYPE": "Insert a typology for the script (eg. curl, bash...)", + "INFO": "Insert title", + "SCRIPT": "Insert script", + "T38PT_UDPTL": "Es: yes,redundancy,maxdatagram=400", + "SECRET": "Authentication password", + "HOST": "The domain or host name", + "DEFAULTUSER": "Authentication username", + "CALLERID": "The Caller ID, in the format \"name\" ", + "REGISTRY": "The registry string, if required by provider, usually defaultuser:secret@host", + "FROMDOMAIN": "Set default From:domain in SIP messages when acting as a SIP ua (client). Some destinations may require mandatory identity name instead of only the IP address", + "FROMUSER": "How your provider knows you. This is which user to put instead of callerid when placing calls to peer (another SIP proxy). Valid only for type=peer.", + "OUTBOUNDPROXY": "IP_address or DNS SRV name (excluding the _sip._udp prefix): SRV name, hostname, or IP address of the outbound SIP Proxy. Send outbound signaling to this proxy, not directly to the devices. Valid only for type=peer.", + "PORT": "The SIP port number", + "CONTEXT": "The context for the trunk", + "TYPE": "Determine the SIP role within asterisk. User: used to authenticate incoming - Peer: for outgoing calls - Friend: covers both characteristics of the above.", + "DTMFMODE": "How DTMF (Dual-Tone Multi-Frequency) are sent. RFC2833: the default mode, the DTMF are sent with RTP but outside the audio stream. INBAND: The DTMF is sent in audio stream of the current conversation, becoming audible from the speakers. Requires a high CPU load. INFO: Although this method is very reliable, it is not supported by all PBX devices and many SIP Trunks.", + "NAT": "Change the behaviour of Asterisk for clients behind a firewall. If any of the comma-separated options is 'no', Asterisk will ignore any other settings and set nat=no.", + "QUALIFY": "Determine when the SIP is achievable", + "ALLOWCODECS": "Allowed codecs in order of preference", + "INSECURE": "Specify how to handle connections with peer, allowing insecure settings", + "CALL_LIMIT": "The limit number of the inbound and outbound concurrent calls", + "DIRECTMEDIA": "Asterisk by default tries to redirect the RTP media stream to go directly from the caller to the callee. Some devices do not support this (especially if one of them is behind a NAT). The default setting is YES. If you have all clients behind a NAT, or for some other reason want Asterisk to stay in the audio path, you may want to turn this off.", + "CALLCOUNTER": "Enable call counters on devices", + "ADD_PHONE_TO_URI": "Define if the provider requires ';user=phone' on URL", + "TRUST_REMOTE_PARTY_ID": "Define if Remote-Party-ID should be trusted", + "SEND_REMOTE_PARTY_ID_HEADER": "Define if Remote-Party-ID should be sent (defaults is no)", + "ENCRYPTION": "Whether to offer SRTP encrypted media (and only SRTP encrypted media) on outgoing calls to a peer. Calls will fail with HANGUPCAUSE=58 if the peer does not support SRTP. Defaults value is No", + "TRANSPORT": "Set the default transports, in order of preference", + "OTHERFIELDS": "Other fields to add in the trunks conf files. Follow default asterisk format (key=value), each field on a single row", + "EMAILADDRESS": "Add one or multiple addresses separated by commas (e.g. john.doe@xcally.com, jane.miller@xcally.com)", + "EMAILCCADDRESS": "Add one or multiple addresses separated by commas (e.g. john.doe@xcally.com, jane.miller@xcally.com)", + "EMAILBCCADDRESS": "Add one or multiple addresses separated by commas (e.g. john.doe@xcally.com, jane.miller@xcally.com)", + "NAME": "Only numbers, letters and specific characters (._) are supported", + "EVENTVARIABLES": "If enabled, it adds all the event variables to the url (recommended value=No. Set to Yes only for evaluation purposes) ", + "HEADERS": "Note: Headers section must be in RAW JSON format {\"key\":\"value\"} \nNote: If not filled out, the default value will be sent", + "BODY": "Note: the body must be in RAW JSON format {\"key\":\"value\"} \nNote: If not filled out, the default value will be sent", + "TIMEOUT": "Request timeout in seconds. The value must be between 1 and 10 and the default value is 5." + }, + "EDIT_TRUNK": "Edit Trunk", + "DELETE_TRUNK": "Delete Trunk", + "CREATED_AT": "Created At", + "SETTINGS": "Settings", + "ADVANCED": "Advanced", + "OTHER": "Other", + "ACTIVE": "Active", + "CONTEXT": "Context", + "CALLERID": "Caller ID", + "TYPE": "Type", + "DTMFMODE": "DTMF Mode", + "NAT": "NAT", + "QUALIFY": "Qualify", + "ALLOWCODECS": "Allowed Codecs", + "INSECURE": "Insecure", + "REGISTRY": "Registry", + "DIRECTMEDIA": "Direct Media", + "CALLCOUNTER": "Call Counter", + "FROMDOMAIN": "From Domain", + "FROMUSER": "From User", + "OUTBOUNDPROXY": "Outbound Proxy", + "ADD_PHONE_TO_URI": "Add Phone to URL", + "TRUST_REMOTE_PARTY_ID": "Trust Remote Party ID", + "SEND_REMOTE_PARTY_ID_HEADER": "Send Remote Party ID Header", + "ENCRYPTION": "Encryption", + "PORT": "Port", + "TRANSPORT": "Transport", + "SAVE": "Save", + "VARIABLES": "Variables", + "ADD_VARIABLE": "Add Variable", + "EDIT_VARIABLE": "Edit Variable", + "DELETE_VARIABLE": "Delete Variable", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "TAGS": "Tags", + "ADD_TAG": "Add Tag", + "EDIT_TAG": "Edit Tag", + "DELETE_TAG": "Delete Tag", + "PAUSES": "Pauses", + "ADD_PAUSE": "Add Pause", + "EDIT_PAUSE": "Edit Pause", + "DELETE_PAUSE": "Delete Pause", + "CANNEDANSWERS": "Canned Answers", + "ADD_CANNEDANSWER": "Add Canned Answer", + "EDIT_CANNEDANSWER": "Edit Canned Answer", + "DELETE_CANNEDANSWER": "Delete Canned Answer", + "KEY": "Key", + "VALUE": "Value", + "SOUNDS": "Sounds", + "EDIT_SOUND": "Edit Sound", + "DELETE_SOUND": "Delete Sound", + "CANCEL": "Cancel", + "FINISH": "Finish", + "DROP_TO_UPLOAD": "Drop To Upload", + "UPLOADING": "Uploading", + "TRIGGERS": "Triggers", + "EDIT_TRIGGER": "Edit Trigger", + "DELETE_TRIGGER": "Delete Trigger", + "ADD_TRIGGER": "Add Trigger", + "DELETE": "Delete", + "AUTOMATIONS": "Automations", + "EDIT_AUTOMATION": "Edit Automation", + "DELETE_AUTOMATION": "Delete Automation", + "ADD_AUTOMATION": "Add Automation", + "INTERVALS": "Intervals", + "EDIT_INTERVAL": "Edit Interval", + "DELETE_INTERVAL": "Delete Interval", + "ADD_INTERVAL": "Add Interval", + "TOOLS": "Tools", + "ID": "Id", + "AUDIO": "Audio", + "DOWNLOAD_SOUND": "Download Sound", + "UPLOAD_SOUND": "Tools", + "CHANNEL": "Channel", + "NEW_TRIGGER": "New Trigger", + "GENERAL": "General", + "STATUS": "Status", + "CONDITIONS&ACTIONS": "Conditions & Actions", + "ALLCONDITIONS": "Meet all these conditions:", + "ANYCONDITIONS": "Meet any of these conditions:", + "ACTIONS": "Actions:", + "NEW_AUTOMATION": "New Automation", + "TIMEOUT": "Timeout", + "PEERSTATUS": "Peer Status", + "CALL_LIMIT": "Calls Limit", + "OTHERFIELDS": "Other Fields", + "NEW_VARIABLE": "New Variable", + "NEW_TAG": "New Tag", + "NEW_PAUSE": "New Pause", + "NEW_CANNEDANSWER": "New Canned Answer", + "CONFIRM_PASSWORD": "Confirm Password", + "NEW_TRUNK": "New Trunk", + "FROM": "From", + "TO": "To", + "WEEKDAY": "Week Day", + "MONTHDAY": "Month Day", + "MONTH": "Month", + "ALWAYS": "Always", + "MON": "Monday", + "TUE": "Tuesday", + "WED": "Wednesday", + "THU": "Thursday", + "FRI": "Friday", + "SAT": "Saturday", + "SUN": "Sunday", + "JAN": "January", + "FEB": "February", + "MAR": "March", + "APR": "April", + "MAY": "May", + "JUN": "June", + "JUL": "July", + "AUG": "August", + "SEP": "September", + "OCT": "October", + "NOV": "November", + "DEC": "December", + "PASSWORD": "Password", + "CUSTOMDASHBOARDS": "Custom Dashboards", + "NEW_CUSTOMDASHBOARD": "New Custom Dashboard", + "ADD_CUSTOMDASHBOARD": "Add Custom Dashboard", + "EDIT_CUSTOMDASHBOARD": "Edit Custom Dashboard", + "DELETE_CUSTOMDASHBOARD": "Delete Custom Dashboard", + "SCHEDULER": "Scheduler", + "NEW_SCHEDULE": "New Schedule", + "ADD_SCHEDULE": "Add Schedule", + "EDIT_SCHEDULE": "Edit Schedule", + "DELETE_SCHEDULE": "Delete Schedule", + "SENDMAIL": "Send Email", + "CONFIGURATION": "Configuration", + "MAIL": "Email", + "REPORTTYPE": "Report Type", + "REPORT": "Report", + "OUTPUT": "Output", + "EXECUTEON": "Execute On", + "REPORTRANGE": "Report Range", + "VALIDITYSTART": "Start Time", + "VALIDITYEND": "End Time", + "EXECUTEEVERY": "Execute every", + "ACCOUNT": "Account", + "EMAILADDRESS": "Email Address", + "EMAILCCADDRESS": "Cc", + "EMAILBCCADDRESS": "Bcc", + "CURRENTDAY": "Current Day", + "DAILY": "Daily", + "WEEKLY": "Weekly", + "MONTHLY": "Monthly", + "PREVIOUS_DAY": "Previous Day", + "LAST_SEVEN_DAYS": "Last Seven Days", + "LAST_THIRTY_DAYS": "Last Thirthy Days", + "LAST_MONTH": "Last Month", + "WEEKDAYS": "Week Days", + "HOUR": "Hour", + "DEFAULT": "Default", + "CSV": "CSV", + "PDF": "PDF", + "15MIN": "15 minutes", + "30MIN": "30 minutes", + "1H": "1 hour", + "VOICE": "Voice", + "CHAT": "Chat", + "SMS": "SMS", + "OPENCHANNEL": "Open Channel", + "TEMPLATES": "Templates", + "EDIT_TEMPLATE": "Edit Template", + "DELETE_TEMPLATE": "Delete Template", + "NEW_TEMPLATE": "New Template", + "ADD_TEMPLATE": "Add Template", + "CONTENT": "Content", + "FIELD": "Field", + "NO_ANYCONDITION_AVAILABLE": "No Conditions available", + "NO_ALLCONDITION_AVAILABLE": "No Conditions available", + "NO_ACTION_AVAILABLE": "No Actions available", + "ACTION": "Action", + "EDIT_ANYCONDITION": "Edit Condition", + "DELETE_ANYCONDITION": "Delete Condition", + "NEW_ANYCONDITION": "New Condition", + "ADD_ANYCONDITION": "Add Condition", + "EDIT_ALLCONDITION": "Edit Condition", + "DELETE_ALLCONDITION": "Delete Condition", + "NEW_ALLCONDITION": "New Condition", + "ADD_ALLCONDITION": "Add Condition", + "EDIT_ACTION": "Edit Action", + "DELETE_ACTION": "Delete Action", + "NEW_ACTION": "New Action", + "ADD_ACTION": "Add Action", + "QUEUE": "Queue", + "CALL_STATUS": "Call Status", + "OUTBOUNDROUTE": "Outbound Route", + "MAIL_SUBSTATUS": "Email Substatus", + "OFFLINE_MESSAGE": "Offline Message", + "EQUALS": "Equals", + "NOT_EQUALS": "Not Equals", + "CONTACT_MANAGER": "Contacts Manager", + "INTEGRATIONS": "Integrations", + "MOTIONBAR": "Motion Bar", + "JSCRIPTY": "Jscripty", + "URL_FORWARD": "URL Forward", + "WEB_POPUP": "Web Popup", + "LIST": "List", + "INTEGRATION": "Integration", + "TEMPLATE": "Template", + "URL": "URL", + "APPLICATION": "Application", + "ARGUMENTS": "Arguments", + "NO_APPS_AVAILABLE": "No applications available", + "NEW_INTERVAL": "New Interval", + "OPERATOR": "Operator", + "NO_INTERVALS_AVAILABLE": "No intervals available", + "YES": "Yes", + "NO": "No", + "SUBJECT": "Subject", + "NO_AVAILABLE_INFO": "No available info", + "BROWSER": "Browser", + "INTERVAL": "Interval", + "INFO": "Info", + "TIME_RANGE": "Time Range", + "WEEK_DAYS": "Week Days", + "MONTH_DAYS": "Month Days", + "MONTHS": "Months", + "DROP_TO_UPLOAD_MESSAGE": "Drop audio files here to upload. Only MP3, WAV, GSM - Max. 15MB", + "POLLING_INTERVAL": "Polling Interval (seconds)", + "DASHBOARD": "Dashboard", + "NEW_DASHBOARDITEM": "New Dashboard Widget", + "COUNTER": "Counter", + "IFRAME": "IFrame", + "CLOCK": "Clock", + "ADD_DASHBOARDITEM": "Add Dashboard Widget", + "EDIT_WIDGET": "Edit Widget", + "DELETE_WIDGET": "Delete Widget", + "FLIP_WIDGET": "Flip Widget", + "TITLE": "Title", + "UPDATE": "Update", + "LAYOUT": "Layout", + "BACKGROUND_COLOR": "Background Color", + "FOREGROUND_COLOR": "Foreground Color", + "FOREGROUND_TITLE_COLOR": "Foreground Title Color", + "THEME": "Theme", + "LIGHT": "Light", + "DARK": "Dark", + "TIMEZONE": "TimeZone", + "DIGITAL_FORMAT": "Digital Date Format", + "TOOLS_QUERY": "Query", + "SELECT": "Select", + "WHERE": "Where", + "BACK": "Back", + "PROJECT": "Project", + "GOTOREALTIME_TRUNK": "Go To Realtime Trunk", + "GOTO_TRUNK": "Go To Trunk", + "CRON": "Cron", + "MINUTES": "Minutes", + "HOURLY": "Hourly", + "YEARLY": "Yearly", + "EVERY": "Every", + "MINUTE": "Minute", + "ON_SECOND": "On second", + "HOUR_ON_MINUTE": "Hour on minute", + "AND_SECOND": "And second", + "DAY_AT": "Day at", + "START_TIME": "Start Time", + "ON_THE": "On the", + "OF_EVERY": "Of every", + "MONTH_AT": "Month at", + "AT": "At", + "LAST": "Last", + "LASTUNIT": "Unit", + "MAILACCOUNT": "Email Account", + "OF": "of", + "PAST_THE_HOUR": "Past the hour", + "DAY": "Day", + "WEEK": "Week", + "YEAR": "Year", + "ON": "On", + "PAI": "P-Asserted-Identity", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "EVENTVARIABLES": "Event Variables", + "AUTOCREATECONTACT": "Create contact automatically", + "LOCATION": "Location", + "NEW_TAB": "New Tab", + "NEW_WINDOW": "New Window", + "MOTION_TAB": "New Agent Dashboard Tab", + "WINDOWWIDTH": "Window Width(px)", + "WINDOWHEIGHT": "Window Height(px)", + "BODY": "Body", + "REPORTFOLDER": "Report Folder", + "REPORTSUBFOLDER": "Report Subfolder", + "AGENT": "Agent", + "HEADERS": "Headers", + "WHATSAPP": "WhatsApp Connector", + "LEVEL": "Level", + "NOTIFICATIONS": { + "DISPOSITION_CREATED_SUCCESS_TITLE": "Disposition successfully created", + "DISPOSITION_SAVED_SUCCESS_TITLE": "Disposition successfully saved", + "DISPOSITION_DELETE_TITLE": "Are you sure want to delete the disposition?", + "DISPOSITION_DELETE_MESSAGE": "{{ name }} will be deleted", + "DISPOSITION_DELETE_MESSAGE_CHILDREN": "{{ name }} will be deleted with all its sub dispositions", + "DISPOSITION_DELETED_SUCCESS_TITLE": "Disposition successfully deleted", + "DISPOSITIONS_DELETE_TITLE": "Are you sure want to delete the selected dispositions?", + "DISPOSITIONS_DELETE_MESSAGE": "{{ total }} dispositions will be deleted", + "TRIGGER_CREATED_SUCCESS_TITLE": "Trigger successfully created", + "TRIGGER_SAVED_SUCCESS_TITLE": "Trigger successfully saved", + "TRIGGER_DELETE_TITLE": "Are you sure want to delete the trigger?", + "TRIGGER_DELETE_MESSAGE": "{{ name }} will be deleted", + "TRIGGER_DELETED_SUCCESS_TITLE": "Trigger successfully deleted", + "TRIGGERS_DELETE_TITLE": "Are you sure want to delete the selected triggers?", + "TRIGGERS_DELETE_MESSAGE": "{{ total }} triggers will be deleted", + "TRIGGERS_DELETED_SUCCESS_TITLE": "Triggers successfully deleted", + "ACTION_CREATED_SUCCESS_TITLE": "Action successfully created", + "ACTION_SAVED_SUCCESS_TITLE": "Action successfully saved", + "ACTION_DELETE_TITLE": "Are you sure want to delete the action?", + "ACTION_DELETED_SUCCESS_TITLE": "Action successfully deleted", + "ACTIONS_DELETE_TITLE": "Are you sure want to delete the selected actions?", + "ACTIONS_DELETE_MESSAGE": "{{ total }} actions will be deleted", + "ACTIONS_DELETED_SUCCESS_TITLE": "Actions successfully deleted", + "CONDITION_CREATED_SUCCESS_TITLE": "Condition successfully created", + "CONDITION_SAVED_SUCCESS_TITLE": "Condition successfully saved", + "CONDITION_DELETE_TITLE": "Are you sure want to delete the condition?", + "CONDITION_DELETED_SUCCESS_TITLE": "Condition successfully deleted", + "CONDITIONS_DELETE_TITLE": "Are you sure want to delete the selected conditions?", + "CONDITIONS_DELETE_MESSAGE": "{{ total }} conditions will be deleted", + "CONDITIONS_DELETED_SUCCESS_TITLE": "Conditions successfully deleted" + }, + "ALL_DISPOSITIONS": "All dispositions", + "SELECT_LEVEL": "Select a level", + "ALL": "All", + "FIRST_LEVEL_DISPOSITION": "First Level Disposition", + "SECOND_LEVEL_DISPOSITION": "Second Level Disposition", + "SEARCH_FIELDS": "Search fields", + "AUTOCREATE_FIELD": "Autocreate field", + "STANDARD": "Standard", + "GLOBALS": "Globals", + "MOTION_BAR": "Motion Bar" + } +} diff --git a/public/app/main/apps/video/i18n/bs.json b/public/app/main/apps/video/i18n/bs.json new file mode 100644 index 0000000..81b9c5c --- /dev/null +++ b/public/app/main/apps/video/i18n/bs.json @@ -0,0 +1,40 @@ +{ + "VIDEO": { + "VIDEO": "Video", + "SCREENRECORDINGS": "Screen Recordings", + "SEARCH_FOR_ANYONE": "Search", + "INTERACTIONID": "Interaction ID", + "CHANNEL": "Channel", + "AGENT": "Agent", + "RATING": "Rating", + "NO_RATING": "No Rating", + "RECORDSTARTTIME": "Record Start Time", + "RECORDENDTIME": "Record End Time", + "DURATION": "Duration", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "NO_AVAILABLE_INFO": "No Available Info", + "EDIT_SCREENRECORDING": "Rate Screen Recording", + "PLAY_SCREENRECORDING": "Play Screen Recording", + "DOWNLOAD_SCREENRECORDING": "Download Screen Recording", + "DELETE_SCREENRECORDING": "Delete Screen Recording", + "CANT_DOWNLOAD_THIS_FILE": "Can't download this file", + "WRONG_EXTENSION": "The file presents the wrong extension", + "FILE_NOT_FOUND": "File not found", + "SAVE": "Save", + "DELETE": "Delete", + "UPDATEDAT": "Last Update", + "PROPERTIES": "Properties", + "FORMAT": "Format", + "STARTEDAT": "Record Start Time", + "CLOSEDAT": "Record End Time", + "CREATEDAT": "Created at", + "ID": "Id", + "AGENTNAME": "Agent", + "CANT_PLAY_THIS_FILE": "Can't play this type of file", + "LEGEND": {}, + "ERRORS": {}, + "HELP": {} + } +} diff --git a/public/app/main/apps/voice/i18n/bs.json b/public/app/main/apps/voice/i18n/bs.json new file mode 100644 index 0000000..28d2655 --- /dev/null +++ b/public/app/main/apps/voice/i18n/bs.json @@ -0,0 +1,507 @@ +{ + "VOICE": { + "SECOND_LEVEL_DISPOSITION": "Second Level Disposition", + "THIRD_LEVEL_DISPOSITION": "Third Level Disposition", + "FAILUREREASON": "Failure reason", + "TEXT": "Text", + "DOWNLOADTRANSCRIBE_VOICERECORDING": "Download Transcript", + "INBOUND": "Inbound", + "OUTBOUND": "Outbound", + "DIALER": "Dialer", + "LOGIN_TIME": "Login time", + "PAUSE_TIME": "Pause time", + "ABANDONEDCALLS": "Abandoned Queue Calls", + "WAITING_FOR_AGENTS": "Waiting for agents", + "ACTIVE": "Active", + "NO_AGENT_ONLINE": "No Agent Online", + "PARTIALPAUSE": "Partial Pause", + "STATUS": "Status", + "TIMER": "Timer", + "ALIAS": "Alias", + "ALL": "All", + "IDLE": "Idle", + "EDIT_TRUNK": "Edit Trunk", + "GOTO_VOICEQUEUE": "Go To Realtime Voice Queues", + "GOTOREALTIME_VOICEQUEUE": "Go To Realtime Voice Queues", + "NAME": "Name", + "LOGOUT": "Logout", + "VOICEQUEUES": "Voice Queues", + "SEARCH_FOR_ANYONE": "Search", + "BACK": "Back", + "SELECTED": "Selected", + "SELECT_ALL": "Select All", + "SELECT_NONE": "Select None", + "DELETE_VOICEDISPOSITION": "Delete Voice Disposition", + "EDIT_VOICEDISPOSITION": "Edit Voice Disposition", + "EDIT_VOICEQUEUE": "Edit Voice Queue", + "DELETE_VOICEQUEUE": "Delete Voice Queue", + "MOHSOUNDS": "Moh Sounds", + "STRATEGY": "Strategy", + "DESCRIPTION": "Description", + "ADD_VOICEQUEUE": "Add Voice Queue", + "CREATED_AT": "Created At", + "CANT_PLAY_GSM_AUDIO_FILES": "Can't play gsm or wav49 audio files", + "APPLICATIONS_LIST": "Applications List", + "GENERAL": "General", + "TIMEOUT": "Timeout", + "MAXLENGTH": "Maximum Length", + "RETRY": "Retry", + "WRAPUPTIME": "Wrapup Time", + "WEIGHT": "Weight", + "JOINWHENEMPTY": "Join when empty", + "LEAVEWHENEMPTY": "Leave when empty", + "MUSICONHOLD": "Music On Hold", + "ANNOUNCETOAGENT": "Announce To Agent", + "ANNOUNCEMENTS": "Announcements", + "ADVANCED": "Advanced", + "ANNOUNCEFREQUENCY": "Announce Frequency", + "MINANNOUNCEFREQUENCY": "Minimum Announce Frequency", + "PERIODICANNOUNCEFREQUENCY": "Periodic Announce Frequency", + "RANDOMPERIODICANNOUNCE": "Random Periodic Announce", + "ANNOUNCEHOLDTIME": "Announce Hold Time", + "ANNOUNCECALLERPOSITION": "Announce Caller Position", + "ANNOUNCEPOSITIONLIMIT": "Announce Position Limit", + "REPORTHOLDTIMEAGENT": "Report Agent Hold Time", + "PERIODICANNOUNCE": "Periodic Announce", + "HOLDTIMEANNOUNCE": "Hold Time Announce", + "YOUARENEXTANNOUNCE": "'You are next' Announce", + "THEREAREANNOUNCE": "'There are' Announce", + "WAITINGCALLSANNOUNCE": "Waiting Calls Announce", + "ESTIMATEDHOLDTIMEANNOUNCE": "Estimated Hold Time Announce", + "MINUTESANNOUNCE": "Minutes Announce", + "MINUTEANNOUNCE": "Minute Announce", + "SECONDSANNOUNCE": "Seconds Announce", + "THANKYOUANNOUNCE": "'Thank You' Announce", + "AUTOPAUSE": "Auto Pause", + "AFTERCALLWORK": "After Call Work", + "AFTERCALLWORKDURATION": "After Call Work Duration", + "RINGINUSE": "Ring In Use", + "MEMBERDELAY": "Member Delay", + "TIMEOUTRESTART": "Timeout Restart", + "MONITORFORMAT": "Recording Format", + "SETINTERFACEVARIABLES": "Set Interface Variables", + "SETQUEUEVARIABLES": "Set Queue Variables", + "SETQUEUEENTRYVARIABLES": "Set Queue Entry Variables", + "VARIABLE": "Variable", + "CONTEXT": "Context", + "SAVE": "Save", + "SETTINGS": "Settings", + "INBOUNDROUTES": "Inbound Routes", + "PHONENUMBER": "Phone Number", + "ADD_INBOUNDROUTE": "Add Inbound Route", + "EDIT_INBOUNDROUTE": "Edit Inbound Route", + "DELETE_INBOUNDROUTE": "Delete Inbound Route", + "ACTIONS": "Actions", + "OUTBOUNDROUTES": "Outbound Routes", + "DESTINATIONPATTERN": "Destination Pattern", + "ADD_OUTBOUNDROUTE": "Add Outbound Route", + "EDIT_OUTBOUNDROUTE": "Edit Outbound Route", + "DELETE_OUTBOUNDROUTE": "Delete Outbound Route", + "CUTDIGITS": "Cut Digits", + "RECORDING": "Recording", + "RECORDINGFORMAT": "Recording format", + "INTERNALROUTES": "Internal Routes", + "ADD_INTERNALROUTE": "Add Internal Route", + "EDIT_INTERNALROUTE": "Edit Internal Route", + "DELETE_INTERNALROUTE": "Delete Internal Route", + "CONTEXTS": "Contexts", + "ADD_CONTEXT": "Add Context", + "EDIT_CONTEXT": "Edit Context", + "DELETE_CONTEXT": "Delete Context", + "VOICEMAILS": "Voicemails", + "ADD_VOICEMAIL": "Add Voicemail", + "EDIT_VOICEMAIL": "Edit Voicemail", + "DELETE_VOICEMAIL": "Delete Voicemail", + "FULLNAME": "Full Name", + "EMAIL": "Email", + "MAILBOX": "Mailbox", + "PASSWORD": "Password", + "CONFIRM_PASSWORD": "Confirm Password", + "TIMEZONE": "Timezone", + "ATTACH": "Attach", + "ENVELOPE": "Envelope", + "DELETE": "Delete", + "EMAILBODY": "Email Body", + "EMAILSUBJECT": "Email Subject", + "MAXSECONDS": "Max Seconds", + "MAXMESSAGES": "Max Messages", + "MESSAGES": "Messages", + "SORT": "Sort", + "ADD_MUSICONHOLD": "Add Music On Hold", + "MUSICONHOLDS": "Music On Hold", + "EDIT_MUSICONHOLD": "Edit Music On Hold", + "DELETE_MUSICONHOLD": "Delete Music On Hold", + "DIRECTORY": "Directory", + "AUDIOFILES": "Audio Files", + "RECORDINGS": "Recordings", + "CHANSPY": "ChanSpy", + "PREFIX": "Prefix", + "OPTIONS": "Options", + "AUTH": "Auth", + "ADD_CHANSPY": "Add ChanSpy", + "EDIT_CHANSPY": "Edit ChanSpy", + "DELETE_CHANSPY": "Delete ChanSpy", + "AGENTS": "Agents", + "TELEPHONES": "Telephones", + "QUEUES": "Queues", + "QUEUE_CALLS": "Queue Calls", + "QUEUE_PARAMETERS": "Queue Parameters", + "ABANDONED_CALLS": "Abandoned Calls", + "OUTBOUND_CALLS": "Outbound Calls", + "AGI": "Agi", + "DIAL": "Dial", + "CALLYSQUARE": "CallySquare", + "INTERNALDIAL": "Internal Dial", + "EXTERNALDIAL": "External Dial", + "RINGGROUP": "Ring Group", + "PLAYBACK": "Playback", + "QUEUE": "Queue", + "SET": "Set", + "VOICEMAIL": "Voicemail", + "GOTO": "GoTo", + "HANGUP": "Hangup", + "CUSTOM": "Custom", + "PROJECT": "Cally-Square Project", + "TECHNOLOGY/RESOURCE": "Technology/Resource", + "URL": "URL", + "EDIT_APP": "Edit Application", + "EDIT_INTERVAL": "Edit Interval", + "DELETE_APP": "Delete Application", + "INTERVALS": "Intervals", + "USER": "User", + "TRUNK": "Trunk", + "PHONE": "Phone", + "AUDIO_FILES": "Audio Files", + "ANNOUNCE_OVERRIDES": "Announce Overrides", + "MACRO": "Macro", + "GOSUB": "GoSub", + "RULE": "Rule", + "POSITION": "Position", + "ANSWER": "Answer", + "VALUE": "Value", + "MAILBOX@CONTEXT": "Mailbox@Context", + "EXTENSION": "Extension", + "PRIORITY": "Priority", + "HANGUP_CAUSE": "Hangup Cause", + "OUTBOUNDDIAL": "Outbound Dial", + "CALLER_ID": "Caller ID", + "NO_MESSAGE_AVAILABLE": "No messages available", + "NO_SOUND_AVAILABLE": "No sounds available", + "VOICERECORDINGS": "Voice Recordings", + "CHANSPIES": "ChanSpy", + "VOICE": "Voice", + "REALTIME": "Realtime", + "ID": "Id", + "VOICEMAIL_CONTEXT": "Context", + "NO_MOHSOUND_AVAILABLE": "No Music On Hold available", + "FILE": "File", + "ADD_MOHSOUND": "Add Music On Hold sound", + "DOWNLOAD_MOHSOUND": "Download Music On Hold sound", + "DELETE_MOHSOUND": "Delete Music On Hold sound", + "UNIQUEID": "Unique ID", + "AGENT": "Agent", + "TYPE": "Type", + "RATING": "Rating", + "AUDIO": "Audio", + "DATE": "Date", + "NEW_VOICEQUEUE": "New Voice Queue", + "NEW_INBOUNDROUTE": "New Inbound Route", + "NEW_OUTBOUNDROUTE": "New Outbound Route", + "NEW_INTERNALROUTE": "New Internal Route", + "NEW_CONTEXT": "New Context", + "NEW_VOICEMAIL": "New Voicemail", + "NEW_MUSICONHOLD": "New Music On Hold", + "NEW_CHANSPY": "New ChanSpy", + "PENALTY": "Penalty", + "ADD_TEAM_TO_VOICEQUEUE": "Add Team to Voice Queue", + "ADD_AGENT_TO_VOICEQUEUE": "Add Agent to Voice Queue", + "EDIT_DIAL": "Edit Dial", + "EDIT_AGI": "Edit AGI", + "EDIT_INTERNALDIAL": "Edit Internal Dial", + "EDIT_EXTERNALDIAL": "Edit External Dial", + "EDIT_RINGGROUP": "Edit Ring Group", + "EDIT_PLAYBACK": "Edit Playback", + "EDIT_QUEUE": "Edit Queue", + "EDIT_SET": "Edit Set", + "EDIT_GOTO": "Edit GoTo", + "EDIT_HANGUP": "Edit Hangup", + "EDIT_CUSTOM": "Edit Custom", + "DURATION": "Duration", + "RECEIVED_AT": "Received At", + "YES": "Yes", + "NO": "No", + "HANGUPCAUSE_1": "1 = Unallocated number", + "HANGUPCAUSE_16": "16 = Normal call clearing", + "HANGUPCAUSE_17": "17 = User busy", + "HANGUPCAUSE_18": "18 = No user responding (telehone device not connected)", + "HANGUPCAUSE_21": "21 = Call rejected", + "HANGUPCAUSE_22": "22 = Number changed", + "HANGUPCAUSE_27": "27 = Destination out of order", + "HANGUPCAUSE_38": "38 = Network out of order", + "HANGUPCAUSE_41": "41 = Temporary failure", + "RANDOM": "Random", + "ALPHABETICAL": "Alphabetical", + "NO_APPS_AVAILABLE": "No applications available", + "DOWNLOAD_VOICERECORDING": "Download Voice Recording", + "DELETE_VOICERECORDING": "Delete Voice Recording", + "INTERNAL": "Internal", + "PHONE_STATE": "Phone State", + "PHONE_STATUS": "Phone Status", + "TRUNK_STATUS": "Trunk Status", + "REGISTERED": "Registered", + "UNREGISTERED": "Unregistered", + "LAGGED": "Lagged", + "REACHABLE": "Reachable", + "UNREACHABLE": "Unreachable", + "UNKNOWN": "Unknown", + "NOT_INUSE": "Not In Use", + "INUSE": "In Use", + "BUSY": "Busy", + "INVALID": "Invalid", + "UNAVAILABLE": "Unavailable", + "RINGING": "Ringing", + "ONHOLD": "On Hold", + "RING": "Ring", + "UP": "Up", + "INFO": "Info", + "TRUNKS": "Trunks", + "REGISTRY": "Registry", + "NO_REGISTRY": "No Registry", + "LOGGED_IN": "Logged In (SIP Connected)", + "PAUSED": "Paused", + "WAITING": "Waiting", + "TALKING": "Talking", + "DID": "DID", + "CALLER": "Caller", + "TOTAL": "Total", + "ANSWERED": "Answered", + "ABANDONED": "Abandoned", + "UNMANAGED": "Unmanaged", + "AVG_HOLD_TIME": "Avg Hold Time", + "AVG_DURATION": "Av Duration", + "AVG_BILLABLE": "Avg Billable", + "SOURCE": "Source", + "DESTINATION": "Destination", + "REJECTED": "Rejected", + "FAILED": "Failed", + "CALLED": "Called", + "CONNECTED": "Connected", + "NO_RATING": "No rating", + "EDIT_VOICERECORDING": "Edit Voice Recording", + "APPLICATION_NAME": "Application Name", + "ARGUMENTS": "Arguments", + "NO_AVAILABLE_INFO": "No Available Info", + "ADD_AGENT_TO_QUEUE": "Add Agent To Queue", + "DEFAULT_PAUSE": "DEFAULT PAUSE", + "PAUSE": "Pause", + "UNPAUSE": "End Pause", + "REDIRECT_TO_NUMBER": "Redirect To Number", + "REDIRECT_TO_AGENT": "Redirect To Agent", + "AGENTADD_VOICEQUEUE": "Add Agent To Voice Queue", + "APPLICATION": "Application", + "FILES": "Files", + "FORMAT": "Format", + "MODE": "Mode", + "RECORD": "Record", + "TEAMADD_VOICEQUEUE": "Add Team To Voice Queue", + "NEW_MOHSOUND": "New Music On Hold sound", + "DOWNLOAD_MESSAGE": "Download", + "DELETE_MESSAGE": "Delete", + "QUEUE_PARAMS": "Queue Parameters", + "TOTAL_OFFERED": "Total Offered", + "READY": "Ready", + "AGENTADD_QUEUE": "Add Agent To Voice Queue", + "AGENTSADD_QUEUE": "Add Agents To Voice Queue", + "ALL_TEAMS": "All Teams", + "SELECTED_TEAMS": "Selected Teams", + "ALL_AGENTS": "All Agents", + "SELECTED_AGENTS": "Selected Agents", + "CLOSING": "Closing", + "TAGS": "Tags", + "WAITING_FOR_AGENT": "Waiting For Agents", + "EDIT_OUTBOUNDDIAL": "Edit Outbound Dial", + "ACCOUNTNAME": "Account Name", + "PAGE": "Page", + "ROWSPERPAGE": "Rows per page", + "OF": "of", + "DISPOSITION": "Disposition", + "CHAT": "Chat", + "MAIL": "Email", + "SMS": "SMS", + "OPENCHANNEL": "Open Channel", + "FAX": "Fax", + "CLEAR": "Clear", + "CALLS": "Calls", + "STARTEDAT": "Started At", + "ENDEDAT": "Ended At", + "TAG": "Tag", + "DETAILS": "Details", + "BILLABLESECONDS": "Billable seconds", + "ANSWEREDAT": "Answered At", + "NOTE": "Note", + "CLOSE": "Close", + "SELECT_DATE": "Select Start Date", + "SELECT_TYPE": "Select Type", + "VOICEPREFIXES": "Out Prefixes", + "NEW_VOICEPREFIX": "New Prefix", + "ADD_VOICEPREFIX": "Add Prefix", + "EDIT_VOICEPREFIX": "Edit Prefix", + "AGENTADD_VOICEPREFIX": "Add Agent to Prefix", + "TEAMADD_VOICEPREFIX": "Add Team to Prefix", + "DELETE_VOICEPREFIX": "Delete Prefix", + "OUTBOUNDROUTE": "Outbound Route", + "CALLERIDALL": "Caller Id", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Mandatory disposition pause status", + "SCREENRECORDING": "Manage Screen Recording", + "START_SCREENRECORDING": "Start Screen Recording", + "STOP_SCREENRECORDING": "Stop Screen Recording", + "TOOLTIP_SCREENRECORDING_ON": "Screen Recording in progress", + "TOOLTIP_SCREENRECORDING_OFF": "Screen Recording available", + "CANT_DOWNLOAD_THIS_FILE": "Can't download this file", + "WRONG_EXTENSION": "The file presents the wrong extension", + "FILE_NOT_FOUND": "File not found", + "TEAMS_ASSOCIATION": "Teams Association", + "TRANSCRIBE": "Transcribe", + "TRANSCRIPT": "Transcript", + "SENTIMENTANALYSIS": "Sentiment Analysis", + "TRANSCRIBESTATUS_COMPLETED": "Completed", + "TRANSCRIBESTATUS_IN_PROGRESS": "In progress", + "TRANSCRIBESTATUS_FAILED": "Failed", + "TRANSCRIBESTATUS_NEW": "New", + "TRANSCRIPTANALYSIS": "Transcript & Analysis", + "SENTIMENT_POSITIVE": "Positive", + "SENTIMENT_NEGATIVE": "Negative", + "SENTIMENT_NEUTRAL": "Neutral", + "SENTIMENT_MIXED": "Mixed", + "RUNTRANSCRIBE_VOICERECORDING": "Run Transcribe", + "RUNTRANSCRIBESENTIMENT_VOICERECORDING": "Run Transcribe&Sentiment", + "RUNSENTIMENT_VOICERECORDING": "Run Sentiment", + "SENTIMENT": "Sentiment", + "SERVICELEVEL": "Service level", + "MAXCAPACITY": "Max capacity", + "WORKING": "Working", + "LEGEND": { + "CUSTOM_APPLICATION": "(*) - Custom application" + }, + "ERRORS": { + "PROJECT_REQUIRED": "Mandatory field", + "TRUNK_REQUIRED": "Mandatory field", + "VARIABLE_REQUIRED": "Mandatory field", + "NAME_REQUIRED": "Mandatory field", + "APPLICATION_NAME_REQUIRED": "Mandatory field", + "TIMEOUT_REQUIRED": "Mandatory field", + "PHONENUMBER_REQUIRED": "Mandatory field", + "CONTEXT_REQUIRED": "Mandatory field", + "DESTINATIONPATTERN_REQUIRED": "Mandatory field", + "FULLNAME_REQUIRED": "Mandatory field", + "EMAIL_REQUIRED": "Mandatory field", + "EMAIL_MUST_VALID": "Wrong format", + "MAILBOX_REQUIRED": "Mandatory field", + "PASSWORD_REQUIRED": "Mandatory field", + "CONFIRM_NOT_MATCH": "The passwords don't match", + "TIMEZONE_REQUIRED": "Mandatory field", + "PREFIX_REQUIRED": "Mandatory field", + "OPTIONS_REQUIRED": "Mandatory field", + "AFTERCALLWORKDURATION_REQUIRED": "Mandatory field", + "TECHNOLOGY/RESOURCE_REQUIRED": "Mandatory field", + "PHONE_REQUIRED": "Mandatory field", + "VALUE_REQUIRED": "Mandatory field", + "EXTENSION_REQUIRED": "Mandatory field", + "PRIORITY_REQUIRED": "Mandatory field", + "APPLICATION_REQUIRED": "Mandatory field", + "OUTBOUNDROUTE_REQUIRED": "Mandatory field", + "TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MAXLENGTH_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "RETRY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "WRAPUPTIME_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "WEIGHT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "ANNOUNCEFREQUENCY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MINANNOUNCEFREQUENCY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "PERIODICANNOUNCEFREQUENCY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "AFTERCALLWORKDURATION_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MEMBERDELAY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "POSITION_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "CUTDIGITS_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MAXSECONDS_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MAXMESSAGES_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater than or equal to", + "MAXMESSAGES_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less than or equal to", + "NAME_MUST_VALID_PATTERN": "Wrong format", + "CALLERIDALL_MUST_VALID_PATTERN": "Wrong format", + "MANDATORYDISPOSITIONPAUSEID_REQUIRED": "Mandatory field", + "CALLER_ID_MUST_VALID_PATTERN": "Wrong format", + "PENALTY_REQUIRED": "You must specify a value for penalty" + }, + "HELP": { + "TIMEOUT": "How many seconds to ring a device", + "MAXLENGTH": "Maximum number of callers allowed to wait in a queue: zero means unlimited", + "RETRY": "Time in seconds to wait before calling the next agent in queue when the timeout is expired", + "WRAPUPTIME": "Time in seconds to keep a queue member unavailable after completing a call", + "WEIGHT": "Weight of a queue in order to define priority if members are associated with multiple queues", + "JOINWHENEMPTY": "Used to control whether a caller is passed to a queue when no members are available", + "LEAVEWHENEMPTY": "Used to control whether callers are made leave the queue when no members are available to take calls", + "ANNOUNCEFREQUENCY": "How often to announce the caller’s position and/or estimated hold time in the queue (zero to disable)", + "MINANNOUNCEFREQUENCY": "Minimum announcement frequency (useful when the caller’s position changes frequently)", + "PERIODICANNOUNCEFREQUENCY": "Frequency of periodic announcements to the caller", + "ANNOUNCEPOSITIONLIMIT": "Used if announce-position is defined as either 'limit' or 'more'", + "AFTERCALLWORKDURATION": "Pause length triggered by the After Call Work option", + "MEMBERDELAY": "Inserts a delay prior to the caller and agent in queue get connected", + "MUSICONHOLD": "Sets the music class to use for a particular queue", + "ANNOUNCETOAGENT": "Play an announcement to the agent answering the call (typically to let him know what queue the caller is coming from)", + "RANDOMPERIODICANNOUNCE": "If yes, the defined periodic announcements will be played random", + "ANNOUNCEHOLDTIME": "Plays the estimated hold time along with the periodic announcements (Yes/No/Once)", + "ANNOUNCECALLERPOSITION": "Used to define if the caller’s position in the queue should be announced: No=never; Yes=always; Limit=only if it is within the limit defined by announce-position-limit; More= only if it is beyond the value defined by announce-position-limit", + "REPORTHOLDTIMEAGENT": "Enables reporting caller’s hold time to the agent in queue prior to connection", + "PERIODICANNOUNCE": "Set of periodic announcements to be played (in the order)", + "HOLDTIMEANNOUNCE": "Choose a Sound defined in Tools. Default=“Hold time”. Undefined=no announcement", + "YOUARENEXTANNOUNCE": "Choose a Sound defined in Tools. Default=“You are now first in line”. Undefined=no announcement", + "THEREAREANNOUNCE": "Choose a Sound defined in Tools. Default=“There are”. Undefined=no announcement", + "WAITINGCALLSANNOUNCE": "Choose a Sound defined in Tools. Default=“calls waiting”. Undefined=no announcement", + "ESTIMATEDHOLDTIMEANNOUNCE": "Choose a Sound defined in Tools. Default=“The current estimated hold time is”. Undefined=no announcement", + "MINUTESANNOUNCE": "Choose a Sound defined in Tools. Default=“minutes”. Undefined=no announcement", + "MINUTEANNOUNCE": "Choose a Sound defined in Tools. Default=“minute”. Undefined=no announcement", + "SECONDSANNOUNCE": "Choose a Sound defined in Tools. Default=“seconds”. Undefined=no announcement", + "THANKYOUANNOUNCE": "Choose a Sound defined in Tools. Default=“Thank you for your patience”. Undefined=no announcement", + "AFTERCALLWORK": "If enabled, the agent will be set on Pause after completing a call", + "AUTOPAUSE": "Enables/disables the automatic pause of agents who fail to answer a call. If enabled it causes the agent to be paused in all queues he belongs to", + "RINGINUSE": "To avoid/allow sending calls to members whose status is In Use", + "TIMEOUTRESTART": "If yes, this resets the timeout for an agent to answer when either a BUSY or CONGESTION status is received from the channel", + "MONITORFORMAT": "Specifies the format of the recording file. If it set to 'inactive', calls will not be recorded", + "CONTEXT": "Allows a caller to exit the queue by pressing a single DTMF digit. If a context is specified and the caller enters a number, that digit will attempt to be matched in the context specified, and dialplan execution will continue there", + "SETINTERFACEVARIABLES": "If set to yes, just prior to the caller being connected with a queue agent some variables will be set (for more information see wiki docs)", + "SETQUEUEVARIABLES": "If set to yes, just prior to the caller being connected with a queue agent and leaving the queue, some variables will be set (for more information, see wiki docs)", + "SETQUEUEENTRYVARIABLES": "If set to yes, just prior to the caller being connected with a queue agent some variables will be set (for more information, see wiki docs)", + "RECORDING": "Enable call recording", + "VOICEMAIL_CONTEXT": "The context of the relative extension", + "NAME": "Only numbers, letters and specific characters (._) are supported", + "CALLERIDALL": "Supported format: \"CallerId\" <number>", + "CALLER_ID": "Supported format: \"CallerId\" <number>", + "MANDATORYDISPOSITIONPAUSEID": "Pause status to set during mandatory disposition", + "SERVICELEVEL": "Second settings for service level (default=0, no SL). Used for service level statistics (calls answered within service level time frame)", + "SAVE_ROUTES": "The routing has been modified. Remember to save if you don't want to lose your changes." + }, + "NOTIFICATIONS": { + "EXTENSION_CREATED_SUCCESS_TITLE": "Route successfully created", + "EXTENSION_SAVED_SUCCESS_TITLE": "Route successfully saved", + "EXTENSION_DELETE_TITLE": "Are you sure want to delete the route?", + "EXTENSION_DELETE_MESSAGE": "{{ name }} will be deleted", + "EXTENSION_DELETED_SUCCESS_TITLE": "Route successfully deleted", + "EXTENSIONS_DELETE_TITLE": "Are you sure want to delete the selected routes?", + "EXTENSIONS_DELETE_MESSAGE": "{{ total }} routes will be deleted", + "ROUTING_APPLICATION_DELETE_TITLE": "Are you sure want to delete the application?", + "ROUTING_APPLICATION_DELETE_MESSAGE": "{{ name }} will be deleted", + "ROUTING_APPLICATIONS_DELETE_TITLE": "Are you sure want to delete the selected applications?", + "ROUTING_APPLICATIONS_DELETE_MESSAGE": "{{ total }} applications will be deleted", + "CALLYSQUARE_PROJECTS_GET_ERROR": "Unable to retrieve any CallySquare project", + "TRUNKS_GET_ERROR": "Unable to retrieve any trunk", + "VOICE_CONTEXTS_GET_ERROR": "Unable to retrieve any voice context", + "QUEUES_GET_ERROR": "Unable to retrieve any queue", + "SOUNDS_GET_ERROR": "Unable to retrieve any sound", + "USERS_GET_ERROR": "Unable to retrieve any user", + "VARIABLES_GET_ERROR": "Unable to retrieve any variable", + "VOICEMAILS_GET_ERROR": "Unable to retrieve any voicemail", + "TAGS_GET_ERROR": "Unable to retrieve any tag", + "INTERVALS_GET_ERROR": "Unable to retrieve any interval" + } + } +} diff --git a/public/app/main/apps/whatsapp/i18n/bs.json b/public/app/main/apps/whatsapp/i18n/bs.json new file mode 100644 index 0000000..68808ad --- /dev/null +++ b/public/app/main/apps/whatsapp/i18n/bs.json @@ -0,0 +1,247 @@ +{ + "WHATSAPP": { + "EDIT_DIALOGFLOWV2": "Edit Dialogflow V2", + "DIALOGFLOWV2": "Dialogflow V2", + "PRIVATEKEY": "Private Key", + "CLIENTEMAIL": "Client Email", + "PROJECTID": "Project ID", + "ACCESSKEYID": "Access Key ID", + "ACCOUNTSID": "Account SID", + "ACTIONS": "Actions", + "ADD_NOTE": "Add note", + "ADD_WHATSAPPACCOUNT": "Add", + "ADD_WHATSAPPCANNEDANSWER": "Add Canned Answer", + "ADD_WHATSAPPDISPOSITION": "Add WhatsApp Disposition", + "ADD_WHATSAPPQUEUE": "Add WhatsApp queue", + "ADVANCED": "Advanced", + "AGENT": "Agent", + "AGENT_TIMEOUT": "Agent Timeout", + "AGENTADD_QUEUE": "Add Agent To WhatsApp Queue", + "AGENTADD_WHATSAPPACCOUNT": "Add Agent To WhatsApp Account", + "AGENTADD_WHATSAPPQUEUE": "Add Agent To WhatsApp Queue", + "AGENTS": "Agents", + "AGENTSADD_QUEUE": "Add agents to WhatsApp queue", + "AGENTTRANSFER": "Agent Transfer", + "AGENTTRANSFERTIMEOUT": "Agent Transfer Timeout", + "ALL": "All", + "ALL_AGENTS": "All Agents", + "ALL_TEAMS": "All Teams", + "AMAZONLEX": "AmazonLex", + "AUTHTOKEN": "Auth Token", + "AUTOREPLY": "Auto Reply", + "BACK": "Back", + "BASEURL": "Base URL", + "BOTNAME": "Bot Name", + "BUSY": "Busy", + "CANNED_ANSWER_NOT_FOUND": "No Canned Answers were found", + "CANNED_ANSWER_SEARCH": "Enter a text to search a Canned Answer", + "CANNEDANSWERS": "Canned Answers", + "CAPACITY": "Capacity", + "CLOSE": "Close", + "CLOSED": "Closed", + "CLOSEMETHOD": "Close Method", + "CLOSEURL": "Close URL", + "COMMAND": "Command", + "CONDITION": "Condition", + "CONTACT": "Contact", + "CREATED_AT": "Created at", + "DEFAULT_PAUSE": "DEFAULT PAUSE", + "DELETE": "Delete", + "DELETE_INTERACTION": "Delete Interaction", + "DELETE_SELECTED": "Delete selected", + "DELETE_WHATSAPPACCOUNT": "Delete WhatsApp Account", + "DELETE_WHATSAPPCANNEDANSWER": "Deleted", + "DELETE_WHATSAPPDISPOSITION": "Delete WhatsApp Disposition", + "DELETE_WHATSAPPQUEUE": "Delete WhatsApp Queue", + "DESCRIPTION": "Description", + "DIALOGFLOW": "DialogFlow", + "DISPOSITION": "Disposition", + "DISPOSITIONS": "Dispositions", + "DOWNLOAD_INTERACTION": "Download", + "DOWNLOAD_WITH_ATTACHMENTS": "Download With Attachments", + "DOWNLOAD_WITHOUT_ATTACHMENTS": "Download Without Attachments", + "EDIT_AGENT": "Edit Agent", + "EDIT_AMAZONLEX": "Edit Lex configuration", + "EDIT_AUTOREPLY": "Edit Auto Reply", + "EDIT_CLOSE": "Edit Close", + "EDIT_DIALOGFLOW": "Edit DialogFlow configuration", + "EDIT_GOTOIF": "Edit Gotoif", + "EDIT_GOTOP": "Edit Gotop", + "EDIT_NOOP": "Edit Noop", + "EDIT_QUEUE": "Edit Queue", + "EDIT_SYSTEM": "Edit System", + "EDIT_TAG": "Edit Tag", + "EDIT_WHATSAPPACCOUNT": "Edit WhatsApp Account", + "EDIT_WHATSAPPCANNEDANSWER": "Edit", + "EDIT_WHATSAPPDISPOSITION": "Edit WhatsApp Disposition", + "EDIT_WHATSAPPQUEUE": "Edit WhatsApp Queue", + "ERRORS": { + "PROJECTID_REQUIRED": "Mandatory Field", + "CLIENTEMAIL_REQUIRED": "Mandatory Field", + "PRIVATEKEY_REQUIRED": "Mandatory Field", + "ACCESSKEYID_REQUIRED": "Mandatory Field", + "ACCOUNTSID_REQUIRED": "Mandatory Field", + "AGENT_REQUIRED": "Mandatory Field", + "AGENT_TIMEOUT_REQUIRED": "Mandatory Field", + "AGENTTRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater or equal than", + "AGENTTRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less or equal than", + "AGENTTRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "AUTHTOKEN_REQUIRED": "Mandatory Field", + "BASEURL_REQUIRED": "Mandatory Field", + "BOTNAME_REQUIRED": "Mandatory Field", + "COMMAND_REQUIRED": "Mandatory Field", + "CONDITION_REQUIRED": "Mandatory Field", + "DESCRIPTION_REQUIRED": "Mandatory Field", + "DISPOSITION_REQUIRED": "Mandatory Field", + "FALSEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater or equal than", + "FALSEPRIORITY_REQUIRED": "Mandatory Field", + "KEY_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "KEY_REQUIRED": "Mandatory Field", + "LANGUAGE_REQUIRED": "Mandtory Field", + "LEXREGION_REQUIRED": "Mandatory Field", + "LIST_REQUIRED": "Mandatory Field", + "MANDATORYDISPOSITIONPAUSEID_REQUIRED": "Mandatory Field", + "NAME_REQUIRED": "Mandatory Field", + "PHONE_REQUIRED": "Mandatory Field", + "PRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater or equal than", + "PRIORITY_REQUIRED": "Mandatory Field", + "QUEUE_REQUIRED": "Mandatory Field", + "QUEUETRANSFERTIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater or equal than", + "QUEUETRANSFERTIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less or equal than", + "QUEUETRANSFERTIMEOUT_REQUIRED": "Mandatory Field", + "SECRETACCESSKEY_REQUIRED": "Mandatory Field", + "TAG_REQUIRED": "Mandatory Field", + "TEXT_REQUIRED": "Mandatory Field", + "TIMEOUT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater or equal than", + "TIMEOUT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less or equal than", + "TIMEOUT_REQUIRED": "Mandatory Field", + "TIMES_REQUIRED": "Mandatory Field", + "TOKEN_REQUIRED": "Mandatory Field", + "TRUEPRIORITY_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater or equal than", + "TRUEPRIORITY_REQUIRED": "Mandatory Field", + "TYPE_REQUIRED": "Mandatory Field", + "VALUE_REQUIRED": "Mandatory Field", + "VARIABLE_REQUIRED": "Mandatory Field", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_GREATER_THAN_OR_EQUAL_TO": "The value must be greater or equal than", + "WAITFORTHEASSIGNEDAGENT_MUST_BE_LESS_THAN_OR_EQUAL_TO": "The value must be less or equal than", + "WAITFORTHEASSIGNEDAGENT_REQUIRED": "Mandatory Field", + "WELCOMEMESSAGE_MAX_LENGTH": "The value must have a maximum length equal to {{max}}", + "WELCOMEMESSAGE_REQUIRED": "Mandatory Field" + }, + "FALSEPRIORITY": "False Priority", + "GENERAL": "General", + "GO_TO_WHATSAPPACCOUNTS": "Go To Account", + "GOTOIF": "Gotoif", + "GOTOP": "Gotop", + "GOTOREALTIME_WHATSAPPQUEUE": "Go To Realtime WhatsApp Queue", + "HELP": { + "LIST": "Contact Manager list used to associate contacts", + "MANDATORYDISPOSITION": "Mandatory disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause to use when mandatory disposition is enabled", + "MOTIONPROXY": "The field must have the following format: ://[:]. Example: https://X.Y.Z.W", + "NAME": "Only numbers, letters and specific characters (._) are supported", + "RECEIVEURL": "This is the auto-generated API string you need to use to receive the messages inside your account from your WhatsApp Connector provider (POST method must be used): click the clipboard button to copy it", + "WELCOMEMESSAGE": "This is the first response message sent to new interactions" + }, + "ID": "Id", + "IDLE": "Idle", + "INSERT_MESSAGE_HERE": "Insert message here", + "INTERACTIONS": "Interactions", + "INTERACTIONS_WHATSAPPACCOUNT": "Go to Interactions", + "KEY": "Key", + "LANGUAGE": "Language", + "LASTMESSAGE": "Last Message", + "LEXREGION": "Region", + "LIST": "List", + "LOGGED_IN": "Logged In (SIP Connected)", + "LOGIN_TIME": "Login Time", + "LOGOUT": "Logout", + "MANDATORYDISPOSITION": "Mandatory Disposition", + "MANDATORYDISPOSITIONPAUSEID": "Pause to use when mandatory disposition is enabled", + "MORE": "More", + "MOTIONPROXY": "Proxy Or Motion Domain", + "MULTI_SELECT_TOGGLE": "Multi select toggle", + "NAME": "Name", + "NEW_WHATSAPPACCOUNT": "New WhatsApp Account", + "NEW_WHATSAPPCANNEDANSWER": "New WhatsApp Canned Answer", + "NEW_WHATSAPPDISPOSITION": "New WhatsApp Disposition", + "NEW_WHATSAPPQUEUE": "New WhatsApp Queue", + "NO_AGENT_ONLINE": "No Agent Online", + "NO_AVAILABLE_INFO": "No Available Info", + "NO_INTERACTION_AVAILABLE": "No Interactions Available", + "NO_WHATSAPP_ACCOUNTS_AVAILABLE": "No WhatsApp Accounts available", + "NO_WHATSAPPCANNEDANSWER_AVAILABLE": "No WhatsApp Canned Answers Available", + "NO_WHATSAPPDISPOSITION_AVAILABLE": "No WhatsApp Dispositions Available", + "NOOP": "Noop", + "NOTE": "Note", + "NOTIFICATION": "Notification", + "NOTIFICATIONSHAKE": "Shake", + "NOTIFICATIONSOUND": "Sound", + "NOTIFICATIONTEMPLATE": "Template", + "OF": "of", + "OPENED": "Opened", + "PAGE": "Page", + "PARTIALPAUSE": "Partial Pause", + "PAUSE": "Pause", + "PAUSE_TIME": "Pause Time", + "PAUSED": "Paused", + "PHONE": "Phone", + "PRIORITY": "Priority", + "PROXY": "Proxy", + "QUEUE": "Queue", + "QUEUES": "Queues", + "QUEUETRANSFER": "Queue Transfer", + "QUEUETRANSFERTIMEOUT": "Queue Transfer Timeout", + "READY": "Ready", + "REALTIME": "Realtime", + "RECEIVEURL": "Receive URL", + "DELIVERYREPORTURL": "Delivery report URL", + "REFRESH_INTERACTIONS": "Refresh Interactions", + "REMOTE": "Remote", + "ROWSPERPAGE": "Rows per page", + "SAVE": "Save", + "SCREENRECORDING": "Manage Screen Recording", + "SEARCH_FOR_ANYONE": "Search", + "SECRETACCESSKEY": "Access key secret", + "SELECT_ALL": "Select all", + "SELECT_NONE": "Select none", + "SELECTED": "Selected", + "SELECTED_AGENTS": "Selected Agents", + "SELECTED_TEAMS": "Selected Teams", + "SEND": "Send", + "SETTINGS": "Settings", + "SPYINTERACTION": "Spy Interaction", + "START_SCREENRECORDING": "Start Screen Recording", + "STARTEDAT": "Started at", + "STATUS": "Status", + "STOP_SCREENRECORDING": "Stop Screen Recording", + "STRATEGY": "Strategy", + "SYSTEM": "System", + "TAG": "Tag", + "TAGS": "Tags", + "TEAMADD_WHATSAPPQUEUE": "Add Team To WhatsApp Queue", + "TEAMS_ASSOCIATION": "Teams Association", + "TEXT": "Text", + "TIMEOUT": "Timeout", + "TIMER": "Timer", + "TIMES": "Times", + "TO": "To", + "TOKEN": "Token", + "TOOLTIP_SCREENRECORDING_OFF": "Screen Recording available", + "TOOLTIP_SCREENRECORDING_ON": "Screen Recording in progress", + "TRANSFER": "Transfer", + "TRUEPRIORITY": "True Priority", + "TYPE": "Type", + "UNPAUSE": "End Pause", + "VALUE": "Value", + "VARIABLE": "Variable", + "WAITFORTHEASSIGNEDAGENT": "Wait for the assigned agent", + "WAITING": "Waiting", + "WELCOMEMESSAGE": "Welcome Message", + "WHATSAPP": "WhatsApp Connector", + "WHATSAPPACCOUNTS": "WhatsApp Accounts", + "WHATSAPPCANNEDANSWERS": "WhatsApp Canned Answers", + "WHATSAPPDISPOSITIONS": "WhatsApp Dispositions", + "WHATSAPPQUEUES": "WhatsApp Queues" + } +} diff --git a/public/app/quick-panel/i18n/bs.json b/public/app/quick-panel/i18n/bs.json new file mode 100644 index 0000000..fd2a755 --- /dev/null +++ b/public/app/quick-panel/i18n/bs.json @@ -0,0 +1,73 @@ +{ + "QUICKPANEL": { + "EXPIRATION_GRAY_PERIOD": "Expiration Gray Period", + "NO_AVAILABLE_GROUPS": "No Available Groups", + "SAVE": "Save", + "INFO": "Info", + "NEW_CHATGROUP": "New Group", + "NAME": "Name", + "MEMBERS": "Members", + "ENABLE_WRITING": "Enable Writing", + "GROUPS": "Groups", + "YOU": "You + {{participants}}", + "NEW_INTERNAL_MESSAGE": "New internal message", + "DELETE": "Delete", + "SEARCH": "Search", + "USERS": "Users", + "TODAY": "TODAY", + "MONDAY": "Monday", + "TUESDAY": "Tuesday", + "WEDNESDAY": "Wednesday", + "THURSDAY": "Thursday", + "FRIDAY": "Friday", + "SATURDAY": "Saturday", + "SUNDAY": "Sunday", + "JANUARY": "January", + "FEBRUARY": "February", + "MARCH": "March", + "APRIL": "April", + "MAY": "May", + "JUNE": "June", + "JULY": "July", + "AUGUST": "August", + "SEPTEMBER": "September", + "OCTOBER": "October", + "NOVEMBER": "November", + "DECEMBER": "December", + "CHAT": "CHAT", + "ACTIVITY": "ACTIVITY", + "FRIENDS": "Friends", + "APP_SERVERS": "Application Servers", + "USER_STATS": "User Stats", + "EVENTS": "Events", + "NOTES": "Notes", + "QUICK_SETTINGS": "Quick Settings", + "NOTIFICATIONS": "Notifications", + "CLOUD_SYNC": "Cloud Sync", + "RETRO_THRUSTERS": "Retro Thrusters", + "RECENT": "Recent", + "START_NEW_CHAT": "Start New Chat", + "BACK": "Back", + "CALL": "Call", + "MORE": "More", + "SEND_MESSAGE": "Send message", + "REPLY_PLACEHOLDER": "Type and hit enter to send message", + "CONTACT_XCALLY_MOTION_SUPPORT": "Contact xCALLY Motion Support", + "EXPIRATION_DATE": "Expiration Date", + "EXPIRATION_REASON": "Expiration Reason", + "LICENSE": "License", + "NEW_TOKEN": "New Token", + "OLD_TOKEN": "Old Token", + "SEND_EMAIL_TO": "Send Email To", + "TOKEN": "Token", + "EXPIRATION_REASON_MESSAGE": "Your license has expired or your machine unique id has been updated due to a change to your system. Contact xCALLY Motion Support Team sending both your old and your new uuid.", + "GRAY_PERIOD_EXPIRATION": "Gray Period Expiration", + "EXPIRATION_REASON_MESSAGE_GRAY": "Your license has expired or has been disabled. Contact xCALLY Motion Support Team.", + "EXPIRATION_REASON_MESSAGE_CHANGED": "Your machine unique id has been updated due to a change to your system. Contact xCALLY Motion Support Team sending both your old and your new uuid.", + "MESSENGER_DISABLED": "The internal messaging is disabled for this agent!", + "WARNING": "Warning", + "ERRORS": { + "NAME_REQUIRED": "Mandatory Field" + } + } +} diff --git a/public/app/reset/i18n/bs.json b/public/app/reset/i18n/bs.json new file mode 100644 index 0000000..c3cf8da --- /dev/null +++ b/public/app/reset/i18n/bs.json @@ -0,0 +1,20 @@ +{ + "RESETPASSWORD": { + "TITLE": "Reset your password", + "EMAIL_ADRESS": "Email address", + "PASSWORD": "Password", + "PASSWORD_CONFIRM": "Password (Confirm)", + "UPDATE_PASSWORD": "RESET MY PASSWORD", + "GO_BACK": "Go back to login", + "PASSWORD_RESET": "Password Reset", + "PASSWORD_RESET_MESSAGE": "Your password has been correctly reset, you can now login!", + "PASSWORD_RESET_ERROR": "Password Reset Error", + "ERRORS": { + "EMAIL_REQUIRED": "Email field is required", + "EMAIL_MUST_VALID": "Email must be a valid e-mail address", + "PASSWORD_REQUIRED": "Password field is required", + "CONFIRM_NOT_MATCH": "The passwords don't match", + "SECURE_PASSWORD_PATTERN": "Must contain at least 8 characters, with a minimum of 1 lowercase letter, 1 uppercase letter, 1 numeric character and 1 special character ~!?*@#$%^&-_=+[{]}." + } + } +} diff --git a/public/app/toolbar/i18n/ar.json b/public/app/toolbar/i18n/ar.json index c07a784..8783ff5 100644 --- a/public/app/toolbar/i18n/ar.json +++ b/public/app/toolbar/i18n/ar.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "اتمنا من كل زوجه قناة فتح", "SMS": "رسالة قصيرة", "WHATSAPP": "ال WhatsApp", - "NO_AUTOANSWER_CONFIGURED": "لم يتم تكوين الرد التلقائي للقنوات" + "NO_AUTOANSWER_CONFIGURED": "لم يتم تكوين الرد التلقائي للقنوات", + "BOSNIAN": "البوسنية" } } diff --git a/public/app/toolbar/i18n/bs.json b/public/app/toolbar/i18n/bs.json new file mode 100644 index 0000000..2b659de --- /dev/null +++ b/public/app/toolbar/i18n/bs.json @@ -0,0 +1,128 @@ +{ + "TOOLBAR": { + "CHANGE_LANGUAGE_TITLE": "Change language", + "CHANGE_LANGUAGE_MESSAGE": "Remember to refresh the page to apply RTL Support (if enabled)", + "HEBREW": "Hebrew", + "PREFIXES": "Prefixes", + "CALL": "Call", + "ARABIC": "Arabic", + "INDONESIAN": "Indonesian", + "RESETPASSWORD": "Reset Password", + "PASSWORD_EXPIRE_REMAINING_DAYS": "Remaining days before your password expires", + "BROWSER_COMPATIBILITY": "Browser Compatibility [Chrome, Opera, Safari]", + "RECORDING": "Recording", + "INVALID_LICENSE": "Invalid License", + "BROWSER": "Browser", + "OS": "Operating System", + "REQUIREMENTS": "Requirements", + "LICENSE": "License", + "HTTPS": "HTTPS", + "PHONE2CALL": "Phone to call", + "CHANNELS": "Channels", + "CHANNEL": "Channel", + "NUM_NOTIFICATIONS": "Notifications", + "NOTIFICATIONS": "Autoanswer enabled", + "DELAY": "Autoanswer delay [secs]", + "AUTOANSWER_NOTIFICATIONS": "Autoanswer notifications", + "CHAT": "Chat", + "EMAIL": "Email", + "SMS": "SMS", + "OPENCHANNEL": "Openchannel", + "FAX": "Fax", + "WHATSAPP": "Whatsapp connector", + "WEBRTCSUPPORT": "WebRTC Support", + "REGISTERED": "Registered", + "NOT_REGISTERED": "Not registered", + "WEBRTC_LICENSE_NOT_ENABELD": "WebRTC License is not enabled", + "ATTENDED_TRANSFER": "Attended Tranfer", + "TRANSFER": "Transfer", + "TARGET": "Target", + "CANCEL": "Cancel", + "FILENAME": "File name", + "STATUS": "Status", + "NO_AUTOANSWER_CONFIGURED": "No autoanswer configured for channels", + "ACTIONS": "Actions", + "SPEAKER": "Speaker", + "RINGING": "Ringing tone", + "MICROPHONE": "Microphone", + "CONFERENCE": "Conference with 2 active sessions", + "PROFILE": "Profile", + "SERVICES": "Services", + "AUDIO": "Audio", + "FULLNAME": "Fullname", + "NAME": "Name", + "INTERNAL": "Internal", + "RINGINGDEVICE": "Ringing Device", + "SPEAKERDEVICE": "Speaker Device", + "MICROPHONEDEVICE": "Microphone Device", + "CHANGEPASSWORD": "Change password", + "SETTINGS": "Settings", + "AUTOANSWER": "Auto answer", + "TOGGLE_NAVIGATION": "Toggle navigation", + "TOGGLE_NAVIGATION_FOLD": "Toggle navigation fold", + "TOGGLE_NAVIGATION_MODE": "Toggle navigation mode", + "SEARCH": "Search", + "USER_SETTINGS": "User settings", + "TOGGLE_QUICK_PANEL": "Toggle quick panel", + "SOMEONE_LOGGED_YOU_OUT": "Someone logged out, do you want to stay logged?", + "STAY_LOGGED": "Stay logged", + "WARNING": "Warning", + "ENGLISH": "English", + "ITALIAN": "Italian", + "FRENCH": "French", + "KOREAN": "Korean", + "SPANISH": "Spanish", + "SWEDISH": "Swedish", + "RUSSIAN": "Russian", + "GERMAN": "German", + "JAPANESE": "Japanese", + "CHINESESIMPLIFIED": "Chinese Simplified", + "CHINESETRADITIONAL": "Chinese Traditional", + "DUTCH": "Dutch", + "FINNISH": "Finnish", + "DANISH": "Danish", + "PORTUGUESE": "Portuguese", + "NORWEGIAN": "Norwegian", + "HINDI": "Hindi", + "HUNGARIAN": "Hungarian", + "TURKISH": "Turkish", + "PERSIAN": "Persian", + "LATVIAN": "Latvian", + "POLISH": "Polish", + "LOGIN_TIME": "Login Time", + "PAUSE_TIME": "Pause Time", + "PREVIEW": "Preview", + "CONFIRM_PASSWORD": "Confirm Password", + "NEW_PASSWORD": "New Password", + "OLD_PASSWORD": "Old Password", + "SAVE": "Save", + "TRIAL_VERSION": "Trial Version", + "PAUSE": "Pause", + "RESUME": "End Pause", + "NO_PAUSES_AVAILABLE": "No pauses available", + "CZECH": "Czech", + "ERRORS": { + "FIELD_REQUIRED": "Mandatory Field", + "PASSWORD_REQUIRED": "Mandatory Field", + "CONFIRM_NOT_MATCH": "The passwords don't match", + "SECURE_PASSWORD_PATTERN": "The password must be at least 8 characters long and have 1 lowercase character, 1 uppercase character, 1 number and 1 special character ~!?*@#$%^&-_=+[{]}.", + "PASSWORD_OLDPASSWORD_MATCH": "New password must be different from previous one" + }, + "BRAZILIAN": "Brazilian", + "ESTONIAN": "Estonian", + "WEBRTC_MICROPHONE_NOT_AVAILABLE": "No microphone available", + "WEBRTC_SPEAKER_NOT_AVAILABLE": "No speaker available", + "WEBRTC_AUDIO_DEVICES_NOT_AVAILABLE": "No audio devices available", + "NO_AVAILABLE_INFO": "No available info", + "LITHUANIAN": "Lithuanian", + "NOTIFICATION_TITLE": "New notification from {{sender}}", + "NOTIFICATION_TITLE_RECIPIENT": "to {{recipient}}", + "USER_FORCE_LOGOUT": "{{ip}} has logged in with your credentials. \nMultiple logins are not allowed", + "LOGOUT": "Logout", + "SESSION_TIMEOUT": "The session will be automatically closed after 60 seconds", + "HELP": { + "PREVIEW_RECALLME": "This is a Recall Me call scheduled for {{date}}" + }, + "BOSNIAN": "bosanski" + } +} diff --git a/public/app/toolbar/i18n/cs.json b/public/app/toolbar/i18n/cs.json index 62d6c2e..64a44b1 100644 --- a/public/app/toolbar/i18n/cs.json +++ b/public/app/toolbar/i18n/cs.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Otevřený kanál", "SMS": "SMS", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Pro kanály není nakonfigurována žádná automatická odpověď" + "NO_AUTOANSWER_CONFIGURED": "Pro kanály není nakonfigurována žádná automatická odpověď", + "BOSNIAN": "bosenský" } } diff --git a/public/app/toolbar/i18n/da.json b/public/app/toolbar/i18n/da.json index 0d38f05..e9b51cb 100644 --- a/public/app/toolbar/i18n/da.json +++ b/public/app/toolbar/i18n/da.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Åben kanal", "SMS": "SMS", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Intet autosvar konfigureret for kanaler" + "NO_AUTOANSWER_CONFIGURED": "Intet autosvar konfigureret for kanaler", + "BOSNIAN": "bosnisk" } } diff --git a/public/app/toolbar/i18n/de.json b/public/app/toolbar/i18n/de.json index 1e32641..9d138a9 100644 --- a/public/app/toolbar/i18n/de.json +++ b/public/app/toolbar/i18n/de.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Offener Kanal", "SMS": "SMS", "WHATSAPP": "WhatsApp", - "NO_AUTOANSWER_CONFIGURED": "Keine automatische Antwort für Kanäle konfiguriert" + "NO_AUTOANSWER_CONFIGURED": "Keine automatische Antwort für Kanäle konfiguriert", + "BOSNIAN": "bosnisch" } } diff --git a/public/app/toolbar/i18n/en.json b/public/app/toolbar/i18n/en.json index 6099ef3..7bb2214 100644 --- a/public/app/toolbar/i18n/en.json +++ b/public/app/toolbar/i18n/en.json @@ -122,6 +122,7 @@ "SESSION_TIMEOUT": "The session will be automatically closed after 60 seconds", "HELP": { "PREVIEW_RECALLME": "This is a Recall Me call scheduled for {{date}}" - } + }, + "BOSNIAN": "Bosnian" } } diff --git a/public/app/toolbar/i18n/es.json b/public/app/toolbar/i18n/es.json index a04a322..408a79d 100644 --- a/public/app/toolbar/i18n/es.json +++ b/public/app/toolbar/i18n/es.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Canal abierto", "SMS": "SMS", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "No hay respuesta automática configurada para los canales" + "NO_AUTOANSWER_CONFIGURED": "No hay respuesta automática configurada para los canales", + "BOSNIAN": "bosnio" } } diff --git a/public/app/toolbar/i18n/et.json b/public/app/toolbar/i18n/et.json index 1c71c2f..5b08987 100644 --- a/public/app/toolbar/i18n/et.json +++ b/public/app/toolbar/i18n/et.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Avatud kanal", "SMS": "SMS", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Kanalite jaoks pole automaatset vastust seadistatud" + "NO_AUTOANSWER_CONFIGURED": "Kanalite jaoks pole automaatset vastust seadistatud", + "BOSNIAN": "bosnia keel" } } diff --git a/public/app/toolbar/i18n/fa.json b/public/app/toolbar/i18n/fa.json index cc734a2..42c27e5 100644 --- a/public/app/toolbar/i18n/fa.json +++ b/public/app/toolbar/i18n/fa.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "کانال باز", "SMS": "پیامک", "WHATSAPP": "واتساپ", - "NO_AUTOANSWER_CONFIGURED": "هیچ پاسخ خودکار برای کانال ها پیکربندی نشده است" + "NO_AUTOANSWER_CONFIGURED": "هیچ پاسخ خودکار برای کانال ها پیکربندی نشده است", + "BOSNIAN": "بوسنیایی" } } diff --git a/public/app/toolbar/i18n/fi.json b/public/app/toolbar/i18n/fi.json index e5e9d6c..469092f 100644 --- a/public/app/toolbar/i18n/fi.json +++ b/public/app/toolbar/i18n/fi.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Avoin kanava", "SMS": "tekstiviesti", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Kanaville ei ole määritetty automaattista vastausta" + "NO_AUTOANSWER_CONFIGURED": "Kanaville ei ole määritetty automaattista vastausta", + "BOSNIAN": "bosnialainen" } } diff --git a/public/app/toolbar/i18n/fr.json b/public/app/toolbar/i18n/fr.json index baa128c..bb1147a 100644 --- a/public/app/toolbar/i18n/fr.json +++ b/public/app/toolbar/i18n/fr.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Canal ouvert", "SMS": "SMS", "WHATSAPP": "WhatsApp", - "NO_AUTOANSWER_CONFIGURED": "Aucune réponse automatique configurée pour les canaux" + "NO_AUTOANSWER_CONFIGURED": "Aucune réponse automatique configurée pour les canaux", + "BOSNIAN": "bosniaque" } } diff --git a/public/app/toolbar/i18n/he.json b/public/app/toolbar/i18n/he.json index d07d8c9..7204fd1 100644 --- a/public/app/toolbar/i18n/he.json +++ b/public/app/toolbar/i18n/he.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "ערוץ פתוח", "SMS": "סמס", "WHATSAPP": "וואטסאפ", - "NO_AUTOANSWER_CONFIGURED": "לא הוגדר תשובה אוטומטית עבור ערוצים" + "NO_AUTOANSWER_CONFIGURED": "לא הוגדר תשובה אוטומטית עבור ערוצים", + "BOSNIAN": "בוסנית" } } diff --git a/public/app/toolbar/i18n/hi.json b/public/app/toolbar/i18n/hi.json index 253fd27..7c9bdbb 100644 --- a/public/app/toolbar/i18n/hi.json +++ b/public/app/toolbar/i18n/hi.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "ओपनचैनल", "SMS": "एसएमएस", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "चैनलों के लिए कोई स्वतः उत्तर कॉन्फ़िगर नहीं किया गया" + "NO_AUTOANSWER_CONFIGURED": "चैनलों के लिए कोई स्वतः उत्तर कॉन्फ़िगर नहीं किया गया", + "BOSNIAN": "बोस्नियाई" } } diff --git a/public/app/toolbar/i18n/hu.json b/public/app/toolbar/i18n/hu.json index d568d12..b34b508 100644 --- a/public/app/toolbar/i18n/hu.json +++ b/public/app/toolbar/i18n/hu.json @@ -122,6 +122,7 @@ "SMS": "SMS", "WHATSAPP": "Whatsapp", "PHONE2CALL": "Telefon a híváshoz", - "NO_AUTOANSWER_CONFIGURED": "Nincs automatikus válasz konfigurálva a csatornákhoz" + "NO_AUTOANSWER_CONFIGURED": "Nincs automatikus válasz konfigurálva a csatornákhoz", + "BOSNIAN": "bosnyák" } } diff --git a/public/app/toolbar/i18n/id.json b/public/app/toolbar/i18n/id.json index fdf5ce9..b75a67a 100644 --- a/public/app/toolbar/i18n/id.json +++ b/public/app/toolbar/i18n/id.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "saluran terbuka", "SMS": "SMS", "WHATSAPP": "ada apa", - "NO_AUTOANSWER_CONFIGURED": "Tidak ada jawaban otomatis yang dikonfigurasi untuk saluran" + "NO_AUTOANSWER_CONFIGURED": "Tidak ada jawaban otomatis yang dikonfigurasi untuk saluran", + "BOSNIAN": "Bosnia" } } diff --git a/public/app/toolbar/i18n/it.json b/public/app/toolbar/i18n/it.json index d0b30a9..7e3c26d 100644 --- a/public/app/toolbar/i18n/it.json +++ b/public/app/toolbar/i18n/it.json @@ -122,6 +122,7 @@ "OPENCHANNEL": "Canale aperto", "SMS": "sms", "WHATSAPP": "WhatsApp", - "NO_AUTOANSWER_CONFIGURED": "Nessuna risposta automatica configurata per i canali" + "NO_AUTOANSWER_CONFIGURED": "Nessuna risposta automatica configurata per i canali", + "BOSNIAN": "bosniaco" } } diff --git a/public/app/toolbar/i18n/ja.json b/public/app/toolbar/i18n/ja.json index 28d1936..9ce87b6 100644 --- a/public/app/toolbar/i18n/ja.json +++ b/public/app/toolbar/i18n/ja.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "オープンチャネル", "SMS": "SMS", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "チャネルに自動応答が設定されていません" + "NO_AUTOANSWER_CONFIGURED": "チャネルに自動応答が設定されていません", + "BOSNIAN": "ボスニア語" } } diff --git a/public/app/toolbar/i18n/ko.json b/public/app/toolbar/i18n/ko.json index e7bb9e6..33a0099 100644 --- a/public/app/toolbar/i18n/ko.json +++ b/public/app/toolbar/i18n/ko.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "오픈채널", "SMS": "SMS", "WHATSAPP": "왓츠앱", - "NO_AUTOANSWER_CONFIGURED": "채널에 대해 구성된 자동 응답이 없습니다." + "NO_AUTOANSWER_CONFIGURED": "채널에 대해 구성된 자동 응답이 없습니다.", + "BOSNIAN": "보스니아어" } } diff --git a/public/app/toolbar/i18n/lt.json b/public/app/toolbar/i18n/lt.json index 39081b5..b6b187e 100644 --- a/public/app/toolbar/i18n/lt.json +++ b/public/app/toolbar/i18n/lt.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Atviras kanalas", "SMS": "trumpoji žinutė", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Automatinis atsakymas kanalams nesukonfigūruotas" + "NO_AUTOANSWER_CONFIGURED": "Automatinis atsakymas kanalams nesukonfigūruotas", + "BOSNIAN": "bosnių" } } diff --git a/public/app/toolbar/i18n/lv.json b/public/app/toolbar/i18n/lv.json index 593e563..3bfa440 100644 --- a/public/app/toolbar/i18n/lv.json +++ b/public/app/toolbar/i18n/lv.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Atvērts kanāls", "SMS": "īsziņa", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Kanāliem nav konfigurēta automātiskā atbilde" + "NO_AUTOANSWER_CONFIGURED": "Kanāliem nav konfigurēta automātiskā atbilde", + "BOSNIAN": "bosniešu" } } diff --git a/public/app/toolbar/i18n/nl.json b/public/app/toolbar/i18n/nl.json index 6fd6f5b..159c730 100644 --- a/public/app/toolbar/i18n/nl.json +++ b/public/app/toolbar/i18n/nl.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Open kanaal", "SMS": "sms", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Geen automatisch antwoord geconfigureerd voor kanalen" + "NO_AUTOANSWER_CONFIGURED": "Geen automatisch antwoord geconfigureerd voor kanalen", + "BOSNIAN": "Bosnisch" } } diff --git a/public/app/toolbar/i18n/no.json b/public/app/toolbar/i18n/no.json index 2de53b6..35f8c16 100644 --- a/public/app/toolbar/i18n/no.json +++ b/public/app/toolbar/i18n/no.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Åpen kanal", "SMS": "tekstmelding", "WHATSAPP": "Hva skjer", - "NO_AUTOANSWER_CONFIGURED": "Ingen autosvar konfigurert for kanaler" + "NO_AUTOANSWER_CONFIGURED": "Ingen autosvar konfigurert for kanaler", + "BOSNIAN": "bosnisk" } } diff --git a/public/app/toolbar/i18n/pl.json b/public/app/toolbar/i18n/pl.json index 09d65fc..fa881d4 100644 --- a/public/app/toolbar/i18n/pl.json +++ b/public/app/toolbar/i18n/pl.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Otwarty kanał", "SMS": "SMS", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Brak automatycznej odpowiedzi skonfigurowanej dla kanałów" + "NO_AUTOANSWER_CONFIGURED": "Brak automatycznej odpowiedzi skonfigurowanej dla kanałów", + "BOSNIAN": "bośniacki" } } diff --git a/public/app/toolbar/i18n/pt-BR.json b/public/app/toolbar/i18n/pt-BR.json index 5ce0d41..e44f597 100644 --- a/public/app/toolbar/i18n/pt-BR.json +++ b/public/app/toolbar/i18n/pt-BR.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Canal aberto", "SMS": "SMS", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Nenhuma resposta automática configurada para canais" + "NO_AUTOANSWER_CONFIGURED": "Nenhuma resposta automática configurada para canais", + "BOSNIAN": "bósnio" } } diff --git a/public/app/toolbar/i18n/pt-PT.json b/public/app/toolbar/i18n/pt-PT.json index 116f014..efc2d09 100644 --- a/public/app/toolbar/i18n/pt-PT.json +++ b/public/app/toolbar/i18n/pt-PT.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Canal aberto", "SMS": "SMS", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Nenhuma resposta automática configurada para canais" + "NO_AUTOANSWER_CONFIGURED": "Nenhuma resposta automática configurada para canais", + "BOSNIAN": "bósnio" } } diff --git a/public/app/toolbar/i18n/ru.json b/public/app/toolbar/i18n/ru.json index bdf5e94..12d8d12 100644 --- a/public/app/toolbar/i18n/ru.json +++ b/public/app/toolbar/i18n/ru.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Открытый канал", "SMS": "смс", "WHATSAPP": "WhatsApp", - "NO_AUTOANSWER_CONFIGURED": "Для каналов не настроен автоответчик" + "NO_AUTOANSWER_CONFIGURED": "Для каналов не настроен автоответчик", + "BOSNIAN": "боснийский" } } diff --git a/public/app/toolbar/i18n/sv.json b/public/app/toolbar/i18n/sv.json index 242cd09..5c41096 100644 --- a/public/app/toolbar/i18n/sv.json +++ b/public/app/toolbar/i18n/sv.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "Öppen kanal", "SMS": "SMS", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "Inget autosvar konfigurerat för kanaler" + "NO_AUTOANSWER_CONFIGURED": "Inget autosvar konfigurerat för kanaler", + "BOSNIAN": "bosniska" } } diff --git a/public/app/toolbar/i18n/tr.json b/public/app/toolbar/i18n/tr.json index b820917..50eec67 100644 --- a/public/app/toolbar/i18n/tr.json +++ b/public/app/toolbar/i18n/tr.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "açık kanal", "SMS": "SMS", "WHATSAPP": "Naber", - "NO_AUTOANSWER_CONFIGURED": "Kanallar için yapılandırılmamış otomatik yanıt yok" + "NO_AUTOANSWER_CONFIGURED": "Kanallar için yapılandırılmamış otomatik yanıt yok", + "BOSNIAN": "Boşnakça" } } diff --git a/public/app/toolbar/i18n/zh-CN.json b/public/app/toolbar/i18n/zh-CN.json index 7c3c986..900ccde 100644 --- a/public/app/toolbar/i18n/zh-CN.json +++ b/public/app/toolbar/i18n/zh-CN.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "开放渠道", "SMS": "短信", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "没有为频道配置自动应答" + "NO_AUTOANSWER_CONFIGURED": "没有为频道配置自动应答", + "BOSNIAN": "波斯尼亚语" } } diff --git a/public/app/toolbar/i18n/zh-TW.json b/public/app/toolbar/i18n/zh-TW.json index d0b7953..84404e6 100644 --- a/public/app/toolbar/i18n/zh-TW.json +++ b/public/app/toolbar/i18n/zh-TW.json @@ -119,6 +119,7 @@ "OPENCHANNEL": "開放渠道", "SMS": "短信", "WHATSAPP": "Whatsapp", - "NO_AUTOANSWER_CONFIGURED": "沒有為頻道配置自動應答" + "NO_AUTOANSWER_CONFIGURED": "沒有為頻道配置自動應答", + "BOSNIAN": "波斯尼亞語" } } diff --git a/public/assets/images/flags/bs.png b/public/assets/images/flags/bs.png new file mode 100644 index 0000000000000000000000000000000000000000..98d1c66cd96cac2ace81063f1527548ea01b9357 GIT binary patch literal 16680 zcmeIYWpEqK5-u#0%*@QpAhTm;#+YK18DnN<<~U|%j3MS2V`gT?m|~78*Le@ucmJHK z@BTYdt+YGS{dD)!JySco6RDykjf_Bm0001xWo0DP-u^lM9B{z5UlQSndH{gtyO)Nx zi<+@JnWK|~xs|OMnTw~R8JU@fl{o<5u~M9+<3_~yMdEjTlmX;{F(2OKF>%NKJxIa{ zt61xnF;#-$Gk)M@&)V2_!t(F?3)9yDe`XvT69&-NEau+>IGGnd>Sx!6-~9OrFLLj{ zZ5awX8yfOl2w!$!-Ao+Tg1&A1zH9UT)_q-k{o&CipWjdz&(MEr=f~siYN!DZf^H&C zy#cQEweRpf?73^;t6;Ubzi6&XQ6qWURDQkt$=&&SSBAGoE719S5P5uBZ8zTGaVPcuVr{ZE^I{|F z^)~HteCXH9kN8@`PkwhJpqEmC!N(X6>wE8r}a=L@aYYp0HR0hR+S+}}5!ewC8) zN|$eCRbMoleApOWViM1p&Fw&rZ@K2MZUg!~-M$F_0&VqBF)~ULgb`0tOF5Cspw$#Y zIVkw}I!&eCwgG5%79s~)0$?vQ5QohyqVEUzkaRw(SRB8T5WWnMA7;flHig6A)Tq_F zPTV=y^S$b@^&n>J!=&F+xl}|Xwirl{$i-k}pHr7%FHTXH1vSk%53!eKIS)e)7>Grd z6eY>iH#N@Kl+~AH*pxRluVgwvOervbow2s5c0XTkbvm5Q=DB(I3`ZFUmLf5mo0iHA znT+8a7aXl>81H&UKz!ErOx1j^=i9DGch)jH(SF*tdLFJK(39mcGhCYGwQ_u6;N5!r z$?$i#&G|maU#OTT&As-gHNC?p$Dm}Y+-)|8g1%iz7P7ofAM?uS=~3sa&vrRgGC7ho zzijzDkx;*%`S72QyMGrZNj-cu^y8%V`Pe3gT(ubid0kJ z>F!~>n_+v@`rx7g9F_2xHv7fF`-20ahKdzPVMlPprnm8s3bT18?`c`sdtogCi(s!} zr^64OKl0NXChYee2ivq%@!)u8%d>e*mr^fKKTa*bix-j~sX5bzpNJ%#MHo2K7_-Ft zo?3s9e+0?>+OoImf;egR!8B|C_O@jjHC`g|g4a2Y-P%o?&7IN6xxKb=*k*(G{UF$T zf680lZ_hxl$j@kl+bkI0`VhlDXRa{!Cl*tu_jjr4;t|SzA=6bInAR|DPT-bO{!<{e zHR0$Tv1xkWoq`~AP&C_$=UFyfb!$N4>5j=j-pG&}Z+`54*fF$T8>O1HAxmmlPb<|u zGc-T@KrxhPqg1t!4kse&FlWk2%N=N=Ta~aqEoR(qB}b%2pM8;9FSSqcp-o(t_9Tfj z#w_VvEy{Gde?jJ1l;F zY&*UZ&)XIcu`!3Ts0JC$S2bBSx{^5Z*HVvrwRvJa$EDYnMY9k^-4rCAc9T~=`kYS1 z@-Gp&&34-uBIf84lBY*4-&^tPY)R;M{c`x2HhozHZlLS9sR3+6@3-3pcj?x{6QM%- z%t&|?6m@D@UeU4ubMKq>eIsyr7i(ySbJ^NRq+J zb}1q)ze<)=Au?z@b14^3)Ej%krQmzVR-FWDU>l8UgLxusE?`6AsRShs_$hPdGbYbk z+G1*uXS7tTzJAXftbwwvHi(}TPwjZLrE>1aqAUUFI!h4g1PEu--o%G5sBn>`%M+Da z2_^18f++47>qLQQxZX_jMGgtd$kwzFdE%S9ubi|^aN_2um!{;G;sF=(t_`iJzuv{- z2ZRzv%yrhiZ&5+bdvb*MJcJ_1{86vYQ@Qx78We`5Ix8Z1vI8HP$;x*2sOjrLL_g<( zQbW_{dwx#b=1?urIL9h5OK>gWFT zEhI9Q@>L@C81ewos4`NlH3b5yQE5kWs3Y3%v~?1y0Kz~XdQoEzEWd(xW8g!R>}J;; zQtfsTQ!1#IkH)mORl`c=J9n*^r#Hwe|WEhFifz z(l6REN=+d%M%-T(j7Je#RMV84O5cShe^IYEemV7xfLV6lgSqZ*wcte%Hdt=X2$wi zpWV8v_P{WTOeP{TU*AcUVlN6QdIGFO5SwMU&@+Sj7R=Cb(EmCILxz+GL+Y^x$H&$^ zI;Gy4WdwkJIr`wA-47unOy=giD{`c5_F3f4z`l0`F2L$O^ihPJdkU9gNGwjoqS#Hu zP8*F7hdqNNPE2U#Ds)d6cBPdk1XiUbEKc;ZHo707y?n$+PM!i-S$Ihk<`On2lA27H z?zPW8r8m{GaYLJK5{supLsDe`s_q1m2TXI`K=jSD0w>X1bCOOHc~C_*siL1OHVKg@ z9K?{~&vvFXAeZX2f^gy#tTq|O(I`Cjnqm?r!W05m{Jz2xoDSNv#>emUj?l`_g&Fy) z&LmiA__txdg)1P0eL=YfWHPp&(HVC>k5UWe^*Q@L2Yfn@KSy1#LTII4_^6OPO3Y0j zxk@Ix?Qu^rJ_!6;u3Z#(SvTUTAN=F&+#=jungt92R|g<5<}M;dA?ZF~<^W^2inwCE zR6reY$pt&0-vw^r9lLBOdHyhR+Y_)pjO!#|nYz9Up!y6KK*^XV!B{ztcGu8$p4U~- z2yKxopk_)=C`g!^RASrARK2mYC6FYsW6919C>D2lHFwLDh?r$4yr zKD?1)p_ey5syi7}S`$Q02Ym$hC5)+rJDwRHn%dn}oB{#c9{US^Lw;Qz1eA4nhf2sj z!LYuet_%rcEwdX2q_?A^^<~$ zYYvt!EY5YKKHR``#kPA0vq{vkDsmlkfTKVbq9#;>+INYBR22F^S&=0+kiN7vK?7#? z*@EY;@2JU7iYGkz{+-l_GSNzti_Gj-*n#`o%3s%nkf&2YRN@H}q}=(fWXRvTY(0F5 zPz6Mea^x{&_=5fxazrHPh&43 z-6`n`L&Hes;^}lYU?m~7pHTTq+q@}-Mp$F$_MeUYHbhrNZt=J!a4&7JKCv*@(^+)$ zdTdqRHxz$iErX*7Hxvw&6%R}?dYoXyg+3_lj=?;a5((@|ra-XEnwND)y9i)y{2t63 ztWi8vy&$_%w1Sj+`^i5)v0B_4Y%B$=NZ-%-C8hFicj$nkajlHEQGWsN3}uW zE6=S_uHLPTR>9r6RxVn=+f z0?3vbgWN99!>vaAZOb^pym#_4dc^=uFAr@jgoBp^uRs*0gI5l%ySN$VhpcWr(X*0P zMFb>ctV$@WDhY9zh`5NH24PX>Az)9b8-( z+SU#~*-z#T69?LJ?)-7caSLW_BHEN2o+lY!xt)jvWb+8-6ed zdBT9Cj@>_;`!_LoELZj5LiGD{5JyX>byRZvirjtQhmLzKeW$p+;AaflqKV#WZghjK z#1;Q)UQ`~n)v);Y@@k@E%=1K628qz-(GsVQAF5%&rqImf=+|yA zdZSIiXIHAOxQ$fo1eGN`a&li%<)isTWKGvA)fx4Du5B$692}AL%sN!w^eBTS=QhaQ zM5+9Y6w74XOl| zBtc47V`MD?kTK=_OBgbg+`NEcd<0Q;h9jekag0%4I{@pa0!**8Zg6Pb0+3%00?Q(L zMb=t5r^BRhCkE1}_ZuArV@At5u(6;|OiIWBo!OH+Z7k)v zVt67c)7ZQ=875GId}b}>__6J%M2mKAeC67C(o^omEYA7)dVmUR0RcUKLFN+RDi@2NsP?!ehJ+d`TK)U%y;fXG$}30ErH_(p zsI|<6V)Q^L zse*h-7o|V<89ELD7!hiMDO;UUSdO3yCYR)EL^kS1Y?_X~Dh^1*Hw%!qvhG}yDQc}; z|I{kLm-kNir%T0hq};NqjnX~}Ut%KTdSAYdDiu^jI)?Ia&WJcD@DL3zPEvO%gfW#Y zw3=HyNGWNR&#<74P=iJ~s>igok3dCjj|F!dH?*`~+XuVMX~kiA7}=;uv`t~5Mg})b z^Tab4)Ps%T&Oevc+4C;p;)=xytqtX@?FBZ4qFnl5v&%X@ED2CS`G}~ECu&u(t0oXg zFxSJCghM=LXD@1>-Fx=)WPPX{o7=Me@!K-*F>IhAz|n_f=OEMa`-!)SWH?S14=g7J za4bX|;t9*D|C>*;dw8MF?DcS27D9cdT2TLM5LYkHOCO${0d6lk!CHya@_45V`GdwB zoJ2^)n0-_mNj7!_7EK;N6{=LCJ|Nw=(g}?g0w|Ino%9nN#yW-RN~a1f_3Xpgvgy4P zefSr^7G~1DeVKw81xPvR*youfrxktZ^_@WGz1 z(Hiu{rg+$dIfvD;Xs@u)t-Qt?0Xv*QK7nb!!^l`4*iii}QT8x{e0osJFNMkALLEG? zs5&X~mPnWp81#~Vc-H1ELC@WH&)Sx^Og5bousM`}RWRd8Dv-AIzsDkq{r zzaqL1du&4EDPgxfa)U*8GV;Vkw1;G zIBs*>tSJd}O30S6AaNJO8T5oDrtesAe6l6JeoV=5mZU{iGk0_-2;>9=L4$=fRHjUb z_v){7k@yuweu&Qkd*GJObgB+ux>r6`0s-a|FZhqeD&?Oo&CwC za0TSEN8A9C)a^OzQJ(@o_bPcwfFuis%Tx8V_o=4V?L^dB$Zh*0BT-ysn+_ZFqcqe{ zN=u$&R+dtdLnI({`I)&~u7t_3^D{!Ix2l7PI)2R!ttwUjs!WO6gL@wJ$}LJEOMZ{~ z6%Okmklx5n@98{Ae#eTSTJ4_kLc;e*4Zqw9zdKq60!56mQ!V}8{I=jnW$DNJ3h6FI z&kmq$Qzk94NImnMu0aIsYeJHC zF8wJB_o9gSlg8`>khvR})Rj9ZjFBuiI7YD=1&4%UAPg@v1U-r3NrQr@j~e`;kn$Sd+*Hv!iBmO{;*Z!-tTW}H_ z`B&Z_(?C02PJy#nidi4MOMxJ0kDw(a7DU*|WRv|SS=iffjo!XUDp@a)U8EibBFr$D2vEP{WQ1M=F9u$tVqX%ZuKjQee@QIF&tNqwY#-=P<|$IKjvrBzb+xNv>ubz|-Tvz{KDO?%;{Sit6Bo9Sawv(Xd{4+kBu1Ty_;f`1)E zOB|ZGSkM-}R(mwo0m_nfuD#r|2KM{QMO9L+I(AhP%z9(Gp-2_@04ye{4=zL{opz`B z{WE}KH=DdBk-L;G2t0VmC^rMVI$ma#WF`%5TLICAqsE`?h+xQD`8cW(ct;VYL<-39 zGdqmrWV?c|2_k%IaA19y=0?y~hPYHgKAjQ1JFT6CY-;yzW7DG=bvJ`Y4r4raMRR6x zx~ycd)^72#c8#hb+ zGFEU%b6deigP{fbO+Wc8tKHGtK3Hp!J&6(%^=s64YDD-|%0C@-n4r2U%5?YjE_B>^ zphNFG_6H)IC-BxYOm{#*HguQgvBSNGn!)Rd+RaNpdM$XASdk|25GR@gi0|CHeC(pa z{&JBiDXTXV?h^zi*LV-*IQ7D!lcHHVm76|~#VWJ`geqSC(p5!lG2##m->n>`>tt6? zfoUy-&;Byzx8~Jo9U-OVr9(m$0 zuzf>7{)F%~apfWj1zrTth9z2>LA9ojLokUGOnM>*^P!(smj$Z-?YV+`P@QOOa^iem zrFi4k=N(9oWT~PltU9c@SRGh~fOZhG);xcQog6xH6TNU-3L*!J^2kXX8n6r>c04lZ-{aqLIMI-82JSc}cCPznc|fXZr}L-b7;+#fWr^KfgmhG$~KMUDnpc zSoBhpKz4AMea3Axa-{$}W|U1A8dnW1gV~ld1N&^d1^de{GUst4g!F63jW`0XDldp~ zdEDX7<<&3xU|z6Oz_0f8xOROum;7L!cV1!JE_>rUJ@wObxpNdv2wsBj5V9kQ9Tr_H z6``?Ovpd04o|vM)oIr`S`Ti--~?K` zTR!l;_=$vVnuOupE4tAFPQ34906w|2j69Z`C|~3U9?4jEnWi+4S4`25yo8tezA|&e z>tF8Ge2Cc!^2DMg7!5+rnkTO`2wltYliC!KeO(<)XWY7|EkQ&Pz3=&L3C1$;(YFgDP{pW%d9ldiw$f^{Sd zD(k^vd192f8f2BPkfUwhQZJyyyk(?_l|-ATrKFFSPyPEt=<&M1Z?cf;<`{MRt!g%N z=LKbjaAnx^UyntgKoJj9Waz0`Rmm9rPO{XKJ7o}?ocY!cFnL1ONjIyd(59f`tRg3UKo+E+ z(NY{C1E_gZqIry<7nd`52lBp(wMpgKVRd&=#6fmL#4tJ>HptrMd@#uqj;@FvdqP_A zxOJDIRzRdcKM8ChDiTc%!!s#A>4gf3lL%qLtM6B+pMo=*c$p=+#o2{eYd3*v-@>%R zid{Nnf+<64W4ro=;)AxVM&Z6jiG>>meE%g^Li9@#uBy77bA3+nsq||2s zeQ^1A@ zT19n~nuG=Ett9zJ2!yq!^&|S9Gr8)(K zPEL&z8B+#L;pNjHXVqfvd(px>WtDHLnl5<}Rj!fDLKY0+%b>Z?T1H#I+A6HG!IiVz z$a!!W)pGISHE2J?5u^2k4W@8i-Koegq zsq5JQiqDw8`mQ=vujsY6L$fe3%WS^4YZHjy;nc&+5;cO8 zQ|Ju|K*vGm0x*1#+0AbI)|!sN5>sAeht8z6m8_)U5j$2YP?YE#avz$;^{q>=hf1s7 zQ)Olg=i&tUc(7rhhWtRlw=nw~>KycupXj)GlTdAqNfYl>0nT^s)R6~ZMs9|S$cUR< zXy~)nhDsQj-}3V695m_NVNQmM4~^H@*Tfu5!WGWS<0SpjNoaGQJz9uZ{Ui8z%gmN_ zJN7xmM}U#(es1%C-)z)t^aqyfPTB1F^!RGbAK9mM1e0VqblGUFNbYhzy=p#h?`~vv z@Kkey`L9kCtkbO_Zc>Th6rXxB?qp^nh%?rU*mBVM6RF~dPWVx`<>Fut`I2y0L^^Qb zc!%c@sd@{*s&{b|Dk@27(J2thNY4t%XvlOs?3pMSj)~>FsMFwmgIxDRabip^c_ebx zn#Rv@CS@(*@?41L1ryn@e%g#4ah>H4lqM9E z2`1VIJD5x?ir$;JOHp*F!o_)>i|80CQZBzTp`wD% zY(fWtKzA`8D;`7{>a>!Bh#CW8T6Cg1B}sh}twB-9BLJ5AyP8)OM%$}2&@gNT%vc2h zvb)+%1Y1N7K{WALBf3wRLXfGPKlEIOwu;LmuB+v zA30!{v0-^_o!K&ExXuG_y`PxxOlf`NL+~cy@o|~=ss@Wzf+wJXlADzc<4s}^pJxsy zeK=>3u;X?lO^@M3FWLN~@uqNWR4T7SKpgxzYTAiGo`_yh1h*>c5OOZ)Tl4TV$4Awk z>@t92+Vrh#pg3qfMA=16Mvq|+nVl`r=Y|pvM&3{<9CkZNjv?sY-d(J97Y&;9n(H3g ziU+dV4Mudo6J)F;C=uV}N}zZsoH+D!-d<68c|s&w1bTb@aahd{DK1+;3~GYbZO{Cr zF@(g;;y)Rpm_6SOkChY>Q|wk8DHbWtnIaV)nP4tyy7R;f+N_AG3M#ZX1Bk?yS!uuq zsWhOxdOyX2;>^w)xfR5z130=+9wXAd!eA>}c01_Ag0xPw7mRXBwUWO}i;#fcp0slF z!~HPsK>FJS34VME5MYVq@O~ zy_PEgSplQXU!i#_&%y5rvtU#Ev%jDoR^H=6LKN5@y~C4sfjm}2z6S5ssVvEi=_;YF zhwC^~qL%B~4jk$SsoaHxNws!j@_7<8TdyD4f`c#NHf9`|@uPThpp{%r7}pZhHHiE} zBUER+RS2miiaP6}Dx!;wbsi8ot)tV7hU-)czvDuq*L=b%l{T%^D{Klrfli@Bshm*i z?vJ>uO2cZz_$3fV^CBtK5o1|H(7r0H7;ft$35&|-zA@;1z*xIAn~v`gP<)eqF_h|M zHbnToT)qV2<#P&I4ZDZBTVB=yg7J||vLVuP}T@9(3)vaMbJBpd?CBzSYE zjk!B~Rx9qSvM4#haB?)+0(t5ZD>PJ$$igNt;(IS7gSz|>eBbTJ9aN9D z%DVYW_JYG);$}Y!NRs1M?82-#g->VlXDw}r86&9~J(f_Ei6dOU*M^BBV5VE9{JA+g=FuE0Ydy4X%L{Lk3iiCoRBUp zEW-iLdMD`Jg_rVsIIc}e5_)sW>5iGT;I?MhYxY-}?w)UmIuSyl5&R*Q zeYFt^C!A|F705Bj^PzJkqTd?KB`}rLMw1FG^77XZTAgKtC8-&5enV106^aInz{=1S zAu&bLg%t7eb!&`4*|AxVt@v;)z_WC_pHhZBWT-4VU@|D#wN6&6H{n(4&a+u+<;kWN z2Gbtex9sa#H>rQjbVM(g5!^nj{CG7A}OgOQ|6VUgPF3_naM@>df6bX_S z`4EdsRJEx0dn6}uJ~LxzwxtUKoFk7AyQ>8iCRZzXeXq*zDa1$V^R4UmOU9M(fGtYP zWpk`S&emztm{BxG&;3D>jz3Ow3*E1*W+M$^DBWhcs1!-w(US2T%Vg0GEt4(ms=*>} z^O*0q$yX_!ZG1V5#Xiivu2_l9zQ^Do{PA9VXH5t@2ZvT;dQ2ut;)M{K;C8OHT&x$| z0fK`)p-HbK|N8N14MM6#0W53GOD|2S_GQbxVXyF-jxUKHf0w$f6eHN><-Hq<+rP1NApagJ;9iGnP@A&uPXO{ z*8};9lZxp9K30_5yXg#QDPc$JLvPLnN*rNfzkWtOT=iTlosO-iFr`$^u)X5?0* zN+BuGQKjDG7EkrTkF+q4Hhi=qn%c#E4o)%`*I7EWB2Es;s7r#lSyO=5`jdvFae+`G zyS9sm&h~2|reb+Abb1hN>^HK-kCM>(gF-0RH@5J|h-sp*7sATub1g9XI8N~I%w6X$ zPoGdppd;M%1gsFfj@Q)kJZP|0;gTL((3_xrZBU$#bL&MlX<~`i^C9Yfyqa<|N$iDV zt@c=wn%zZe7xrFe$>0;OL)>Z7i#F1e`?5LgY=6|uyW+M}7ab5sMD0A1763_Srmq<8 zsmYFq!mF(NKlFN!8}vcIsrksIE$2nj*7}ol9~0%wHT%CrLv=-?i*w&9lZ#B?aKGl1 zq2wI7AW@c|>sg9gMuu!;=+P5saNOnqF+f^8m==q!?D8N-UB#8nzMBPlh8*WEg3mA9 z$XnXz@n)}3KwbNhC8qi(001J?N?cq;R$TlaJKEm%v1R!t3d!_|5Dgg4%1JUHxRvcB z_yR;9{A&-Ej+x| z9X)5??|gE)c25!LA+f_(LI~PH-uXP9G2xlZJ0zDR=A$HNJOvX;+R7sE{Jqt(p_?;U ziUy=iM1>Rmfyten5uf2>3U5^z!9Jo+IQE2I*1TMH)5WkM-jEHWRn07sB$2!f89X}2 z30+|j0Y#&AQM$~u-`Ie#$y4%P(y%6wauBjYg?!oXQutxLS|>fnDG8E2?{MJDyYGPC zEK}Cn3-|SAO-g_ZPRC-`=Xn~oCt0t;!qE7DK)bD-w!&fW?tK(AuNi9bFVw7x`6_^o z$)ilC?kVP}uLm~^8-vGC3Hdc?4gta9MjbNCKUgl#&(6;_InQ4G0G;(t161r2=WkmN z@vPpq7-}mj@S8f=u^59LOw3q3>>S^=AOZk_!XA#srZ#3SWF}@7R`x;^7wz9D$gIFZ z6z@TbY>JNJW|memUQTA}UP>CKUN)wDU<%=P2!bB`Zvb{?F2-aYcDDA;{2oFSf8p}K zo&RZOr6BuD#KlI4LR(RVOx(fAjEswgi-nC@(!hBP5S3(q) zE-sGztgPQ8qO|~ zZf_uecj*7B;jHntQe#QhKHf5iTm z@SBvPBEN)#sp}v2WF>?s{@CXSJD6I5`TsiQ;bsRLgLzGu%}h->n7P=@z|6*MU=wCG z5GN0p3E1466U_T>P_p*UF2?qzW`CgGz*(%`aLjo@U}GK*PG&O@4;M2R*o=pnm(z@k z`R$4iY+}yM!(+zzZxG5(R&P~lZ2RwC{ec3%L7B00nwW6&nJ}B1@PV1RxY$9=eB2;j zWljaaImobt3}1u z*v0%!;cX09*@GS2o&VLPVP$8g?qd9hPj+q)8y_18#LL4AV&~-K_?M8DnUnKdE&f4e zXJg^~8}gsT@V|xgMy>ImN__+POXDpXesL!=V;2V}4F?BXA&Ngvk^Ry9tH8+w|CSaR zE9W-}&p$Q)_o`Pn`}nu3zYPLgtG~L)$o?u^eq+BMrp(5CoP5lDCVX6GoLro|#^ArD>!0Y( z4(2ZI#!hCU7H^ThMe|lde?>z^_jfYs|I-_HOS3;rvAvCNHZEokkOn(1KZui`jfaBu z@4>SE8PorWR*?1o!-wEs0{=D%yy^X|?QL>-o2yv=Ia&RkuRj$2Km7bX5C0D>yg~oZ z$bZG}|LFQ3UH=sW|CR9ns_TDr{Z|b9SHl0RuK(ZYLipEm$ISli4#@p&G1C{plJvF^ z0-DH6O8|cV`Q~+&Ccm}7JId%dzb$8%{u~gG`Xx?pjj%4VijuGg(D-N|*c(Q?cmM#A zMOH#o!*XN%v!{>7JocdfeHYJDnhwV@4Ln409gGfE4-S`@Dz{FNnsAhEHS>scbz?Km zGge)TO6r0xeFR<5T>O>sW(cI(Gu@D`n+ylo(1M0@n91S5?yEm^B5_jP-t)crhVO;n zh0vkAP8uWxv zG)_DuJ4AQ|?=@I#sw-rDB{TU7%f`v%25$6aTt~~*)B!SBU;8~Y_l3fHsFkpY+OPl{LC@ut3`vK!1sggk8hS-$?r*s zVM8Aj4xZYFB(FnrAC?0V3?0i-SEaFJ2R#1iNLXMELa-Ay99 z=EgZ5AsE_xtsm?gU)P4KW$iRgLfZ=2l=%VG_G{IRh5G~ajspg5+C04bB@x^25JZP6 z{3w&$_P*XzdY=7i{xYSPZCVsSh)goKa33%8d=2AKrYSkF#Ka6f{QHUm7I?A8I3^%L zkN6ZCwn9+be+Ej0tOQLd_G*og)4$FB_AnC~0Z=gZsCWCE-S@~_E}L3EOc**6Fe#UO zIq{fJ_tUeRUwe!$CZK$+JA06c5+Xn@5{?veJ{Kb;y?!X6UBJ9%=I?y_E_Mf`TH(yq9%b2<0rnHnr4KdXSdHJrJ~>pP+0T%o{V4oDt@Vz=X!~e=UkE7cq9geSL^t z-D*B&^Ach36XGZ2XNHlC=K9v;CNr354h-3u@i>Vd@;oHrj}E5T&{aiYCl@zE3MwxsK~$zjfeQEh!B}@A0=MfNJ4FDRa)xG) z+}_T?nd2T^^5c&RrOnQ3MEgeAirhNf^wm}xQk8idMwJ@(wZ2j?%)<)HsC%S<&P6Z~ zCSU|p(6ODEJXPGv4qvPw3Z_&)BC_xDq(yN^-oAyJX}ka^NWE9!r>@WUd!_1-%~OWJ zX*Tv~eHk)1E_l5_RJJo9ww<7^3X7~VYtq_+}xzH9=z zA|2g5{DX_~(V)681WuNt@kHB`%8q<%`BkQElIBUXCFG)$e_L7rr`68`3rUaH&cZ1t ztSn6^0GmpXcY8Vnq>uhi{}^_kLj~6%?*Ol>4wvMjle4DS0IcD>(Z*MZDnb13eb-7o zasWD{WvQr7gXTTv(*eUszge1$Css14#*t*|lMoD)hrIyz2A#IRij4k-8VQZC9vz^| zHE*KHV!?Y0M)UXy5!c`V%6Ui}V#+DU&~$ziLZ|g69t}Tcf-?l&<@BZV=F4gl)=H%L zag6g*`@u;>A+{f$f?RaS>upP0s8IkrdJFSflCT0o?Fq0p2CwF*)@%ycmu; zEX=ejW5K0St)DY-ESKvkl74s^HYJT!0~{?6ci^Y^Da-zVvfCeKbJIisz;p>>4@{i!w&BsWwKd`` z^~Jq*o*tPWB$yRFlr2T-Foqd^q6A3e;gy~e%w<*yuSzaAnRj_?_R}xu8g{VNuqoQ; zeLj4&wf{nrEN!+EnU6m-*+|AZ8?@?dSEmP}t3|)eR*set2ex@XJ2vhVd2YkAE7sD4 z-5~gLywuY+XDu$Cd`fOC(`)lHY|lyu(4OpS|F#plkqDjd@3Wf~i=e4{79eHlKz%Wlr1Y9<#RVOeD4r51*Ap6^?#&IXBJNg47c!6)6o`swC#ddV zZr@V-jfoZ!D~bSJoCi{|N(DXV>STMVy}u1}pH2IGvTxIrPQ81m)l)``8uqyBG)=#n zG#zrY4CI7JuPDYdG=jo=O9oVJHPPFoZ~~I&oM$}EnHaJ8Fw^3DI56hvTcC(IM;_m` zwNFLOgO+wpz0iDNd&|++R;XA8Crft~t?f#;1WCb;bZ*-__fbdtIhItxn0Kv6x_}+| z11G^Y8@D01IUXgib~2FJ`D|#^D(7dZtTK=l5fbpk!xV9cf4wG3VyhyqEoT$`soYvV z?pKe#ZWJvn@6RCsZrH7|lwS$VFBX!}UpOJX2n${y8R+$+6RUt(tk$YYgdyH9!bcvD zFZAD-T4e@UKznlw@sKZrO3M`xguC%FvS*4WNh5jG(3lsplHUXcV)#+;?V;RqZF~LW zdC05SPEqyC;bpoXPSvU>Kv(4-Cv)41hz!s7OPiUI?z|mGbU6osk_AptLo2U*?_pHX zQ_yh1NI%X(dht+j!`UocsTm4|!*-`>gff0`PEpRf$8lX(^t$s8wcJe0dU7fma@Xox zK~k^c0x$e5M;5h6@bk-(a#ir`IOBRR6^s#j6QP?)FMF(K3o9sMc4+X8M6{BCLH%`` z4gpwlqJB~Ux8x$WciyqR#lNLitxE2r;IFJNgn#CS#@-9R&Y%zuo?wOb0VlmlXRa92COrcM={P!RfMaDpys-!4<48+T+;G;W-$;_l+ z86sQ-E1A^AglfFr8CWcEu#KDg_ws>_f?;(7Pa5ewFw(6CUwvzsh&W$15_K|&8($@-`f>h5IJ8suuh|&7l`X}+&$k#lu zkEhCs+9K13U&pw%`Lq4IJza4-!ZD+-g6sLKCiBUi5*C=N+A58c29J9Q8+wdI3r{<; z_}q%dM0oRfiPwa^Ne!|pjoU3^_;?EZO0IaG!&V1SC{XXgJHsn#{wC7qZROL6MYVd* g`WF)32S5Gw&(Xd}-%lXF-An^yC6y#<#EgRe4+(2?Z~y=R literal 0 HcmV?d00001 diff --git a/public/index.html b/public/index.html index 6e30491..e090cb8 100644 --- a/public/index.html +++ b/public/index.html @@ -16,7 +16,7 @@ - + @@ -66,7 +66,7 @@ - + diff --git a/public/scripts/app.a9c980df.js b/public/scripts/app.a9c980df.js deleted file mode 100644 index f093c5d..0000000 --- a/public/scripts/app.a9c980df.js +++ /dev/null @@ -1 +0,0 @@ -!function(){"use strict";angular.module("app.auth",[])}(),function(){"use strict";angular.module("app.client-side-logging",[])}(),function(){"use strict";angular.module("app.core",["ngAnimate","ngAria","ngCookies","ngMessages","ngResource","ngSanitize","ngMaterial","pascalprecht.translate","ui.router","ui.router.state.events","gridster","ds.clock","angucomplete-alt"])}(),function(){"use strict";function e(e,n){e.state("app.errors_error-404",{url:"/errors/error-404",views:{"main@":{templateUrl:"app/core/layouts/content-only.html",controller:"MainController as vm"},"content@app.errors_error-404":{templateUrl:"app/errors/404/error-404.html",controller:"Error404Controller as vm"}},params:{status:404,statusText:"",data:{},config:{}},bodyClass:"error-404"}),n.addPart("app/errors/404")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.errors.error-404",[]).config(e)}(),function(){"use strict";function e(e,n){e.state("app.errors_error-500",{url:"/errors/error-500",views:{"main@":{templateUrl:"app/core/layouts/content-only.html",controller:"MainController as vm"},"content@app.errors_error-500":{templateUrl:"app/errors/500/error-500.html",controller:"Error500Controller as vm"}},params:{status:500,statusText:"",data:{},config:{}},bodyClass:"error-500"}),n.addPart("app/errors/500")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.errors.error-500",[]).config(e)}(),function(){"use strict";angular.module("app.errors",["app.errors.error-404","app.errors.error-500"])}(),function(){"use strict";function e(e){e.addPart("app/footer")}e.$inject=["$translatePartialLoaderProvider"],angular.module("app.footer",[]).config(e)}(),function(){"use strict";function e(e,n){e.state("app.forgot",{url:"/forgot",views:{"main@":{templateUrl:"app/core/layouts/content-only.html",controller:"MainController as vm"},"content@app.forgot":{templateUrl:"app/forgot/forgot.html",controller:"ForgotPasswordController as vm"}},bodyClass:"forgot"}),n.addPart("app/forgot")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.forgot",[]).config(e)}(),function(){"use strict";function e(e){e.addPart("app/header")}e.$inject=["$translatePartialLoaderProvider"],angular.module("app.header",[]).config(e)}(),function(){"use strict";angular.module("motion",["angular-toasty","app.core","app.auth","app.navigation","app.toolbar","app.quick-panel","app.header","app.footer","app.realtime","app.dashboards","app.staff","app.contactmanager","app.voice","app.chat","app.mail","app.sms","app.openchannel","app.fax","app.tools","app.callysquare","app.analytics","app.integrations","app.settings","app.motiondialer","app.help","app.jscripty","app.marketplace","app.plugins","app.video","app.whatsapp","app.login","app.forgot","app.reset","app.errors","app.user-setting","app.client-side-logging"])}(),function(){"use strict";function e(e,n){e.state("app.login",{url:"/login?token&userId",views:{"main@":{templateUrl:"app/core/layouts/content-only.html",controller:"MainController as vm"},"content@app.login":{templateUrl:"app/login/login.html",controller:"LoginController as vm"}},bodyClass:"login"}),n.addPart("app/login")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.login",[]).config(e)}(),function(){"use strict";function e(e,n,t,a){e.state("app.analytics",{abstract:!0,url:"/analytics"}).state("app.analytics.metrics",{url:"/metrics",views:{"content@app":{templateUrl:"app/main/apps/analytics/views/metrics/metrics.html",controller:"MetricsController as vm"}},resolve:{metrics:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?e.resolve("analyticMetric@get",{fields:"createdAt,updatedAt,id,name,table,metric,description",sort:"-updatedAt",limit:10,offset:0}):e.resolve("userProfile@getResources",{id:n.getCurrentUser().userProfileId,section:"Metrics",fields:"createdAt,updatedAt,id,name,table,metric,description",sort:"-updatedAt",limit:10,offset:0})}],userProfile:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?null:e.resolve("userProfile@get",{fields:"id,name,crudPermissions",id:n.getCurrentUser().userProfileId})}],userProfileSection:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?null:e.resolve("userProfileSection@get",{fields:"id,name,enabled,includeAll,autoAssociation,crudPermissions",userProfileId:n.getCurrentUser().userProfileId,sectionId:1201})}]},authenticate:!0,permissionId:1201,bodyClass:"analytics"}).state("app.analytics.extractedReports",{url:"/extractedReports",views:{"content@app":{templateUrl:"app/main/apps/analytics/views/extractedReports/extractedReports.html",controller:"ExtractedReportsController as vm"}},resolve:{extractedReports:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?e.resolve("analyticExtractedReport@get",{fields:"createdAt,updatedAt,id,name,basename,savename,type,startDate,endDate,status,output,reportId,reportType",sort:"-updatedAt",limit:10,offset:0}):e.resolve("userProfile@getResources",{id:n.getCurrentUser().userProfileId,section:"ExtractedReports",fields:"createdAt,updatedAt,id,name,basename,savename,type,startDate,endDate,status,output,reportId,reportType",sort:"-updatedAt",limit:10,offset:0})}],userProfile:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?null:e.resolve("userProfile@get",{fields:"id,name,crudPermissions",id:n.getCurrentUser().userProfileId})}],userProfileSection:["apiResolver","Auth",function(e,n){return n.hasRole("admin")?null:e.resolve("userProfileSection@get",{fields:"id,name,enabled,includeAll,autoAssociation,crudPermissions",userProfileId:n.getCurrentUser().userProfileId,sectionId:1202})}]},authenticate:!0,permissionId:1202,bodyClass:"analytics"}),n.addPart("app/main/apps/analytics")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.analytics",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","ckeditor","ng-sortable","ngAria","ngAnimate","mdPickers","mwFormBuilder","mwFormViewer","mwFormUtils","ngclipboard","angular-cron-jobs","ngEmbed","angularMaterialFormBuilder","material.components.expansionPanels","chart.js","angular.filter","app.analytics.reports"]).config(e)}(),function(){"use strict";function e(e){e.state("app.analytics.reports",{url:"/reports",views:{"content@app":{templateUrl:"app/main/apps/analytics/views/reports/reports.html",controller:"ReportsController as vm"}},resolve:{treeReports:["apiResolver",function(e){return e.resolve("analyticTreeReport@get",{fields:"id,tree",limit:10,offset:0})}],userProfile:["apiResolver","Auth",function(e,n){return e.resolve("userProfile@get",{fields:"id,name,crudPermissions",id:n.getCurrentUser().userProfileId})}],userProfileSection:["apiResolver","Auth",function(e,n){return e.resolve("userProfileSection@get",{fields:"id,name,enabled,includeAll,autoAssociation,crudPermissions",userProfileId:n.getCurrentUser().userProfileId,sectionId:1203})}]},authenticate:!0,permissionId:1203,bodyClass:"analytics"}).state("app.analytics.reports.edit",{url:"/:id?tab",views:{"content@app":{templateUrl:"app/main/apps/analytics/views/reports/edit/view.html",controller:"ReportController as vm"}},resolve:{report:["apiResolver","$stateParams","$q","describeTable",function(e,n,a,i){var s;return e.resolve("analyticCustomReport@get",{fields:"createdAt,updatedAt,id,name,description,table,conditions,joins",id:n.id}).then(function(e){var n=[];if((s=e).joins)try{s.joins=JSON.parse(s.joins);for(var t=0;t=c.indexOf(m)))return;var i;var s=n,o=t;"string"==typeof n&&void 0===t&&(s=e,o=n);u[e].call(u,s,{data:p(o)})}).call(this,r,s,o)}};return{error:e("error"),warn:e("warn"),info:e("info"),debug:e("debug")}},getLoggingColors:function(){return{disabled:{color:"#616161"},debug:{color:"#283593"},info:{color:"#000000"},warning:{color:"#FBC02D"},error:{color:"#FF5252"}}},flush:a},c=["debug","info","warn","error"],m="debug",u=e.initLogger();function p(t){return Array.isArray(t)?t.map(p):null===t||"object"!=typeof t?t:_.isPlainObject(t)?t:t&&"function"==typeof t.toJSON?t.toJSON():t instanceof Error?Object.getOwnPropertyNames(t).reduce(function(e,n){return e[n]=p(t[n]),e},{}):JSON.parse(JSON.stringifyOnce(t))}function a(){return u.flush()}return t.$on("local:user-setting-updated",function(e,n){n.clientSideLoggingEnabled?t.$broadcast("client-side-logging:enabled"):(a(),t.$broadcast("client-side-logging:disabled")),m=n.clientSideLoggingLevel}),t.$on("local:user-logout",function(){m="debug"}),JSON.stringifyOnce=function(i,s,e){var o=[],r=[];return e||(e=2),JSON.stringify(i,function(e,t){if(2e3');a.append(n),o(function(){!function(e,n){var t=n.find("code"),a=e.split("\n"),i=(a=a.filter(function(e){return e.trim().length}))[0].match(/^\s*/)[0],s=new RegExp("^"+i);a=a.map(function(e){return e.replace(s,"").replace(/\s+$/,"")});var o=hljs.highlight(r.language||r.lang,a.join("\n"),!0);o.value=o.value.replace(/=""<\/span>/gi,"").replace("","").replace("",""),t.append(o.value).addClass("highlight")}(e,n)},34,!1)}})}}}}e.$inject=["$timeout","$q","$interpolate"],angular.module("app.core").directive("hljs",e)}(),function(){"use strict";function e(n,a,e,t){var o=this;function i(){var a=o.selectedField.options&&!_.isEmpty(o.selectedField.options.extraOperators),i=o.selectedField.options&&!_.isEmpty(o.selectedField.options.excludedOperators);o.availableOperators=_.filter(o.operators,function(n){var e=!n.applyTo||_.includes(n.applyTo,o.selectedField.type);n.isExtra=a&&_.some(o.selectedField.options.extraOperators,function(e){return e===n.type});var t=_.includes(n.excludeFrom,o.selectedField.type)||i&&_.includes(o.selectedField.options.excludedOperators,n.type);if((e||n.isExtra)&&!t)return n})}function s(n){return e[n.model][n.action](n.params).$promise.then(function(e){return e.rows}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:n.model.toUpperCase()+"."+n.action.toUpperCase(),msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function r(){!o.value||_.isArray(o.value)&&_.isEmpty(o.value)?o.isValidCondition=!1:o.selectedOperator?o.selectedOperator&&"$between"===o.selectedOperator.type?o.isValidCondition=!(!o.endRangeValue||!o.isValidRange):o.isValidCondition=!0:o.isValidCondition=!1}function l(){"number"===o.selectedField.type?_.isNumber(o.endRangeValue)?o.isValidRange=Number(o.endRangeValue)>Number(o.value):o.isValidRange=!0:"date"===o.selectedField.type&&(o.maxDateRange=moment(o.endRangeValue).subtract(1,"day"),o.isValidRange=!0),r()}function d(){var e=m();o.options.conditions.push(e),p()}function c(){var e=m(),n=_.findIndex(o.options.conditions,"style");o.options.conditions.splice(n,1,e),p(),o.pendingCondition.style=null,o.pendingCondition=void 0}function m(){return{name:o.selectedField.name,operator:n.instant("DASHBOARDS."+o.selectedOperator.translate),value:o.value,endValue:o.endRangeValue,displayValue:u(o.value),displayEndValue:u(o.endRangeValue),query:{column:o.selectedField.column,operator:o.selectedOperator.type,value:function(){var e,n=o.value,t=o.endRangeValue;switch(o.selectedField.type){case"date":var a=moment(n).utcOffset(0,!0).format("YYYY-MM-DD");if("$between"===o.selectedOperator.type){var i=moment(t).utcOffset(0,!0).format("YYYY-MM-DD");e=[a,i]}else e=a;break;case"number":e="$between"===o.selectedOperator.type?[n,t]:n;break;case"multiselect":var s=o.selectedField.options.field||"name";e=_.map(n,s);break;case"select":e=n.id;break;case"autocomplete":e=o.selectedOperator.isExtra?n:n.id;break;default:e=n}return e}()},disabled:!1}}function u(e){var n;if(e){switch(o.selectedField.type){case"date":n=moment(e).format("YYYY-MM-DD");break;case"multiselect":var t=_.map(e,function(e){return e.name});n="$eq"===o.selectedOperator.type?t.join(" or "):t.join(" and ");break;case"select":n=e.name;break;case"autocomplete":n=o.selectedOperator.isExtra?e:e.displayValue;break;default:n=e}return n}}function p(){o.value=null,o.endRangeValue=null,o.minDateRange=null,o.maxDateRange=null,o.isValidCondition=!1}o.operators=o.availableOperators=[{type:"$eq",symbol:"=",translate:"EQUALS",excludeFrom:["multiselect"]},{type:"$ne",symbol:"≠",translate:"IS_NOT_EQUAL",excludeFrom:["multiselect"]},{type:"$in",symbol:"∈",translate:"IS_AMONG",applyTo:["multiselect"]},{type:"$notIn",symbol:"∉",translate:"IS_NOT_AMONG",applyTo:["multiselect"]},{type:"$substring",symbol:"⊃",translate:"CONTAINS",applyTo:["text"]},{type:"$startsWith",symbol:"a..",translate:"STARTS_WITH",applyTo:["text"]},{type:"$endsWith",symbol:"..a",translate:"ENDS_WITH",applyTo:["text"]},{type:"$lt",symbol:"<",translate:"IS_LESS_THAN",applyTo:["date","number"]},{type:"$gt",symbol:">",translate:"IS_GREATER_THAN",applyTo:["date","number"]},{type:"$lte",symbol:"≤",translate:"IS_LESS_THAN_OR_EQUAL_TO",applyTo:["date","number"]},{type:"$gte",symbol:"≥",translate:"IS_GREATER_THAN_OR_EQUAL_TO",applyTo:["date","number"]},{type:"$between",symbol:"≬",translate:"IS_BETWEEN",applyTo:["date","number"]}],o.addCondition=d,o.editCondition=function(e){o.pendingCondition=e,o.pendingCondition.style="md-amber-200-bg",o.selectedField=_.find(o.options.fields,["name",o.pendingCondition.name]),i(),o.selectedOperator=_.find(o.availableOperators,["type",o.pendingCondition.query.operator]),"date"===o.selectedField.type&&"string"==typeof o.pendingCondition.value?(o.value=new Date(o.pendingCondition.value),o.minDateRange=moment(o.value).add(1,"day"),o.endRangeValue=o.pendingCondition.endValue?new Date(o.pendingCondition.endValue):void 0):(o.value=o.pendingCondition.value,o.endRangeValue=o.pendingCondition.endValue);o.isValidRange=!0,o.isValidCondition=!0},o.updateCondition=c,o.cancelUpdateCondition=function(){o.pendingCondition.style=null,o.pendingCondition=void 0},o.setConditionStatus=function(e){e.style=e.disabled?void 0:"chip-disabled",e.disabled=!e.disabled},o.removeCondition=function(){_.isEmpty(o.options.conditions)&&o.clearFilter()},o.getValues=function(){return o.selectedField.options.routes&&Array.isArray(o.selectedField.options.routes)?(e=angular.copy(o.selectedField.options.routes).map(function(e){return s(e)}),a.all(e).then(function(e){o.selectedField.values=_.flatten(e)})):o.selectedField.options.route?function(){var e=angular.copy(o.selectedField.options.route);if("autocomplete"===o.selectedField.type)for(var n=0;n',compile:function(e){return e.addClass("ms-card"),function(e,n){e.cardTemplateLoaded=function(){e.$emit("msCard::cardTemplateLoaded",n)}}}}})}(),function(){"use strict";angular.module("app.core").directive("msChipColor",function(){return{restrict:"A",link:function(e,i,n){n.$observe("msChipColor",function(e){var n=i.parent().parent();if(n.hasClass("md-background-bg md-hue-3")||n.addClass("md-background-bg md-hue-3"),_.isEmpty(e)){var t=n[0].className.split(" "),a=t.indexOf("md-hue-3");t.length=a+1,n[0].className=t.join(" ")}else n.addClass(e)})}}})}(),function(){"use strict";angular.module("app.core").directive("msClickToCall",function(){return{restrict:"E",scope:{type:"=",disabled:"=",target:"=",prefix:"=",license:"="},controller:["$scope","$rootScope","$http","$translate","$document","$mdDialog","Auth","toasty","api",function(t,n,a,i,s,o,e,r,l){function d(e){switch(t.currentUser.showWebBar){case 0:return m("http://127.0.0.1:"+(t.currentUser.phoneBarRemoteControlPort||"9888")+"/api/originate/"+c(e));case 2:return n.$broadcast("webrtc::call",{target:c(e)})}}function c(e){return _.isNil(e)?"":e.replace(/[^\w.+#*\-]+/g,"")}function m(e){return a.get(e).success(function(){r.success({title:"Successful call",msg:"Call properly handled!"})}).error(function(e){r.error({title:"PhoneBar API Error",msg:i.instant("CONTACTMANAGER.ERRORS.PHONEBAR_API")})})}t.currentUser=e.getCurrentUser(),t.privacy=t.currentUser.privacyEnabled,t.showMenu=function(){return t.target&&t.target.indexOf("@")<0&&t.target!=t.currentUser.internal&&t.target!=t.currentUser.name&&(0==t.currentUser.showWebBar&&t.currentUser.phoneBarRemoteControl||2==t.currentUser.showWebBar&&t.license.webrtc)&&!t.disabled},t.call=function(e){return 2!==t.currentUser.showWebBar?(n=e,l.user.getVoicePrefixes({id:t.currentUser.id}).$promise.then(function(e){if(e.count)return o.show({controller:"PrefixDialogController",controllerAs:"vm",templateUrl:"assets/ms-phonebar/prefix/dialog.html",parent:angular.element(s.body),clickOutsideToClose:!0,locals:{prefixes:e,required:t.currentUser.phoneBarPrefixRequired}})}).then(function(e){t.currentUser.phoneBarPrefixRequired?e&&-1!==e&&d(e+n):e&&-1!==e?d(e+n):e||d(n)})):d(e);var n},t.transfer=function(e){switch(t.currentUser.showWebBar){case 0:return m("http://127.0.0.1:"+(t.currentUser.phoneBarRemoteControlPort||"9888")+"/api/transfer?number="+c(e));case 2:n.$broadcast("webrtc::transfer",{target:c(e)})}}}],templateUrl:"app/core/directives/ms-click-to-call/ms-click-to-call.html"}})}(),function(){"use strict";n.$inject=["ClientSideLoggingService","$rootScope","$translate"];var e={bindings:{user:"<"},controller:n,controllerAs:"vm",templateUrl:"app/core/directives/ms-client-side-logging/ms-client-side-logging-icon.html"};function n(e,n,t){var a=this,i=e.getLoggingColors();function s(){a.tooltipHTML=a.user.userSetting.clientSideLoggingEnabled?[t.instant("STAFF.CLIENT_LOGS_ENABLED"),t.instant("STAFF.CLIENT_LOGS_LOGLEVEL",{logLevel:a.user.userSetting.clientSideLoggingLevel}),t.instant("STAFF.CLIENT_LOGS_ENABLED_SINCE",{enabledSince:moment(a.user.userSetting.clientSideLoggingEnabledSince).format("LLLL")})].join("
"):t.instant("STAFF.CLIENT_LOGS_DISABLED")}a.tooltipHTML=t.instant("STAFF.CLIENT_LOGS_DISABLED"),a.styleColor=i.disabled,a.styleIcon=a.user.userSetting&&a.user.userSetting.clientSideLoggingEnabled?"icon-checkbox-marked-circle":"icon-close",a.$onInit=function(){if(!a.user.userSetting)return;var e=a.user.userSetting.clientSideLoggingEnabled?a.user.userSetting.clientSideLoggingLevel:"disabled";a.styleColor=i[e],"info"===e&&(a.styleIcon="icon-checkbox-marked-circle-outline");return s()},a.$onDestroy=function(){o()};var o=n.$on("$translateChangeSuccess",s)}angular.module("app.core").component("msClientSideLoggingIcon",e)}(),function(){"use strict";n.$inject=["ClientSideLoggingService","UserSettingService","$q","$translate","$rootScope","$interval"];var e={bindings:{user:"<",onUserUpdate:"&"},controller:n,controllerAs:"vm",templateUrl:"app/core/directives/ms-client-side-logging/ms-client-side-logging.html"};function n(e,t,n,a,i,s){var o=this,r=e.getLoggingColors(),l=null;function d(){l&&s.cancel(l)}o.styleProperties=r.disabled,o.clientSideLoggingEnabledSince="",o.$onInit=function(){m().then(function(){d(),l=s(u,6e4)})},o.$onChanges=function(e){e&&n.resolve().then(m)},o.$onDestroy=function(){d(),c()},o.onEnabledSwitchChange=function(){var e=o.user.userSetting.clientSideLoggingEnabled,n=o.user.userSetting.clientSideLoggingLevel;return p(e,n)},o.onLogLevelSelectionChange=function(){var e=o.user.userSetting.clientSideLoggingEnabled,n=o.user.userSetting.clientSideLoggingLevel;p(e,n)},o.computeStyleForLoggingLevel=function(e){return r[e]};var c=i.$on("$translateChangeSuccess",u);function m(){o.availableClientSideLoggingLevels=Object.keys(r).filter(function(e){return"disabled"!==e});var e=o.user.userSetting&&o.user.userSetting.clientSideLoggingEnabled?o.user.userSetting.clientSideLoggingLevel:"disabled";return o.styleProperties=r[e],u()}function u(){if(o.user.userSetting)return o.user.userSetting.clientSideLoggingEnabled?void(o.clientSideLoggingEnabledSince=a.instant("STAFF.CLIENT_LOGS_ENABLED_SINCE",{enabledSince:moment(moment(o.user.userSetting.clientSideLoggingEnabledSince).format()).fromNow()})):o.clientSideLoggingEnabledSince=""}function p(e,n){return t.updateUserSettingById(o.user.userSetting.id,{clientSideLoggingEnabled:e,clientSideLoggingLevel:n}).then(function(){"function"==typeof o.onUserUpdate&&o.onUserUpdate()})}}angular.module("app.core").component("msClientSideLogging",e)}(),function(){"use strict";function e(i){return{require:"ngModel",priority:1,link:function(e,n,t,a){a.$formatters.push(i.formatter),a.$parsers.push(i.parser)}}}e.$inject=["msDatepickerFixConfig"],angular.module("app.core").provider("msDatepickerFixConfig",function(){var n={formatter:function(e){return e?""===e?e:new Date(e):""},parser:function(e){return e?moment(e).add(moment(e).utcOffset(),"m").toDate():""}};this.config=function(e){n=angular.extend({},n,e)},this.$get=function(){return n}}).directive("msDatepickerFix",e)}(),function(){"use strict";function e(s){return{restrict:"E",scope:{id:"=",model:"=",element:"=",title:"=",path:"="},replace:!0,link:function(n,e){var t=!1,a={};a.id=n.id,_.isNil(n.path)||(a.path=n.path);var i=document.createElement(n.element);i.setAttribute("preload","none"),i.setAttribute("controls","true"),"audio"===n.element&&i.setAttribute("style","width: 265px;"),"video"===n.element&&i.setAttribute("style","max-width: 500px;"),i.setAttribute("title",n.title),i.setAttribute("src"," "),i.onplay=function(e){t||(t=!0,e.preventDefault(),s[n.model].download(a).$promise.then(function(e){var n=[e.buffer],t=new Blob(n,{type:e.type});i.setAttribute("type",e.type),i.setAttribute("src",URL.createObjectURL(t)),i.play()}).catch(function(e){console.error(e)}))},e.append(i)}}}e.$inject=["api"],angular.module("app.core").directive("msDialogRecording",e)}(),function(){"use strict";function e(i){return{restrict:"A",link:function(t,a){a.bind("click",function(e){var n=i('
')(t);a.closest("md-dialog").prepend(n)})}}}e.$inject=["$compile"],angular.module("app.core").directive("msDialogSpinner",e)}(),function(){"use strict";function e(){var o=this;function a(e,n,t,a){var i=[];if(0<=t)i.push(e[t]),n.push(e[t]),e.splice(t,1);else{for(var s=0;s',link:function(t,e){var n=e.emojioneArea({pickerPosition:t.pickerPosition,search:t.search,recentEmojis:t.recentEmojis,placeholder:a.instant(t.placeholder||"Type a message"),attributes:{spellcheck:!0},events:{keyup:function(e,n){t.ngModel=this.getText(),t.onReply({event:n,body:this.getText()})},emojibtn_click:function(){t.ngModel=this.getText()}}});t.ngModel&&n[0].emojioneArea.setText(t.ngModel),t.internalControl=t.ctrlMethods||{},t.internalControl.setText=function(e){n[0].emojioneArea.setText(e)},t.internalControl.getText=function(){return n[0].emojioneArea.getText()},t.$watch("ngModel",function(e){e||n[0].emojioneArea.setText("")})}}}e.$inject=["$translate"],angular.module("app.core").directive("msEmojiArea",e)}(),function(){"use strict";angular.module("app.core").directive("msFontFamily",function(){return{restrict:"E",scope:{ngModel:"="},controller:["$scope",function(e){e.fonts=[{option:"Arial",value:"Arial,Helvetica,sans-serif"},{option:"Century Gothic",value:"Century Gothic,Futura,Didact Gothic,san-serif"},{option:"Calibri",value:"Calibri, Verdana, Geneva, sans-serif"},{option:"Comic Sans MS",value:"Comic Sans MS,cursive"},{option:"Courier New",value:"Courier New,Courier,monospace"},{option:"Georgia",value:"Georgia,serif"},{option:"Lucida Sans Unicode",value:"Lucida Sans Unicode,Lucida Grande,sans-serif"},{option:"Tahoma",value:"Tahoma,Geneva,sans-serif"},{option:"Times New Roman",value:"Times New Roman,Times,serif"},{option:"Trebuchet MS",value:"Trebuchet MS,Helvetica,sans-serif"},{option:"Verdana",value:"Verdana,Geneva,sans-serif"}]}],templateUrl:"app/core/directives/ms-font-family/ms-font-family.html"}})}(),function(){"use strict";angular.module("app.core").controller("MsFormWizardController",function(){var n=this;function e(){return n.forms.length}function t(){return 0===n.selectedIndex}function a(){return n.selectedIndex===e()-1}n.forms=[],n.selectedIndex=0,n.registerForm=function(e){n.forms.push(e)},n.previousStep=function(){if(t())return;n.selectedIndex--},n.nextStep=function(){if(a())return;n.selectedIndex++},n.firstStep=function(){n.selectedIndex=0},n.lastStep=function(){n.selectedIndex=e()-1},n.totalSteps=e,n.isFirstStep=t,n.isLastStep=a,n.currentStepInvalid=function(){return angular.isDefined(n.forms[n.selectedIndex])&&n.forms[n.selectedIndex].$invalid},n.previousStepInvalid=function(){return 0d.options.responsive.md?d.options.responsive.md:d.columnCount:l("sm")?d.columnCount=d.columnCount>d.options.responsive.sm?d.options.responsive.sm:d.columnCount:d.columnCount=d.options.responsive.xs;d.columnWidth=d.containerPos.width/d.columnCount}(),r.$broadcast("msMasonry:relayoutStarted"),d.items=d.container.find("ms-masonry-item");for(var e=Array.apply(null,new Array(d.columnCount)).map(function(){return 0}),n=0;n'),r=angular.element('
'),l=n.parent();function d(){s.addClass("ms-nav-folded"),g.$broadcast("msNav::forceCollapse"),n.scrollTop(0),l.append(o),o.on("mouseenter touchstart",function(e){c(e),i=!0})}function c(e){angular.isDefined(e)&&e.preventDefault(),s.addClass("ms-nav-folded-open"),g.$broadcast("msNav::expandMatchingToggles"),l.find(o).remove(),l.parent().append(r),r.on("mouseenter touchstart",function(e){m(e),i=!1})}function m(e){angular.isDefined(e)&&e.preventDefault(),g.$broadcast("msNav::forceCollapse"),n.scrollTop(0),s.removeClass("ms-nav-folded-open"),l.parent().find(r).remove(),l.append(o),o.on("mouseenter touchstart",function(e){c(e),i=!0})}function u(){s.removeClass("ms-nav-folded ms-nav-folded-open"),g.$broadcast("msNav::expandMatchingToggles"),n.off("mouseenter mouseleave")}v.setFoldable(e,n,a),a?d():u(),e.toggleFold=function(){(a=!a)?d():u()},e.openFolded=c,e.closeFolded=m,e.isNavFoldedOpen=function(){return i},e.$on("$destroy",function(){o.off("mouseenter touchstart"),r.off("mouseenter touchstart"),n.off("mouseenter mouseleave")})}}}function n(t,a,i){return{restrict:"E",scope:{},controller:"MsNavController",compile:function(e){return e.addClass("ms-nav"),function(e){t.$broadcast("msNav::expandMatchingToggles");var n=t.$on("$stateChangeSuccess",function(){t.$broadcast("msNav::expandMatchingToggles"),a.when("navigation").then(function(e){e.close(),i.isNavFoldedOpen()&&i.closeFolded()})});e.$on("$destroy",function(){n()})}}}}function t(m,u,p,g){return{restrict:"A",require:"^msNav",scope:!0,compile:function(e,n){return e.addClass("ms-nav-toggle"),angular.isUndefined(n.collapsed)&&(n.collapsed=!0),e.attr("collapsed",n.collapsed),function(a,i,e,t){var s={expanded:"expanded",expandAnimation:"expand-animation",collapseAnimation:"collapse-animation"},n=i.find("a"),o=[],r=/\(.*\)/g;function l(){return"true"===i.attr("collapsed")}function d(){var e=u.defer();if(!l())return e.reject({error:!0}),e.promise;i.attr("collapsed",!1);var n=angular.element(i.find("ms-nav-toggle-items")[0]);n.css({position:"absolute",visibility:"hidden",display:"block",height:"auto"});var t=n[0].offsetHeight;return n.css({position:"",visibility:"",display:"",height:""}),a.$evalAsync(function(){p.animate(n,{display:"block",height:"0px"},{height:t+"px"},s.expandAnimation).then(function(){n.addClass(s.expanded),n.css({height:""}),e.resolve({success:!0})})}),e.promise}function c(){var e=u.defer();if(l())return e.reject({error:!0}),e.promise;i.attr("collapsed",!0);var n=angular.element(i.find("ms-nav-toggle-items")[0]),t=n[0].offsetHeight;return a.$evalAsync(function(){p.animate(n,{height:t+"px"},{height:"0px"},s.collapseAnimation).then(function(){n.removeClass(s.expanded),n.css({display:"",height:""}),e.resolve({success:!0})})}),e.promise}angular.forEach(n,function(e){var n=angular.element(e).attr("ui-sref");angular.isUndefined(n)||(n=n.replace(r,""),o.push(n))}),t.setToggleItem(i,a),i.children(".ms-nav-button").on("click",function(){if(t.isDisabled())return;t.disable(),l()?(t.clearLockedItems(),a.$emit("msNav::pushToLockedList"),m.$broadcast("msNav::collapse"),d().then(function(){t.enable()})):a.$broadcast("msNav::forceCollapse")}),a.$on("$destroy",function(){i.children(".ms-nav-button").off("click")}),a.$on("msNav::collapse",function(){var e=t.getLockedItems(),n=!1;angular.forEach(e,function(e){angular.equals(e.scope,a)&&(n=!0)}),n||c().then(function(){t.enable()})}),a.$on("msNav::forceCollapse",function(){c().then(function(){t.enable()})}),a.$on("msNav::expandMatchingToggles",function(){var n=g.current.name,t=!1;angular.forEach(o,function(e){n===e&&(t=!0)}),t?d():c()}),a.$on("msNav::pushToLockedList",function(){t.setLockedItem(i,a)})}}}}e.$inject=["$document","$rootScope","msNavFoldService"],n.$inject=["$rootScope","$mdComponentRegistry","msNavFoldService"],t.$inject=["$rootScope","$q","$animate","$state"],angular.module("app.core").factory("msNavFoldService",function(){var t={};return{setFoldable:function(e,n){t={scope:e,element:n}},isNavFoldedOpen:function(){return t.scope.isNavFoldedOpen()},toggleFold:function(){t.scope.toggleFold()},openFolded:function(){t.scope.openFolded()},closeFolded:function(){t.scope.closeFolded()}}}).directive("msNavIsFolded",e).controller("MsNavController",function(){var e=this,n=!1,t=[],a=[];e.isDisabled=function(){return n},e.enable=function(){n=!1},e.disable=function(){n=!0},e.setToggleItem=function(e,n){t.push({element:e,scope:n})},e.getLockedItems=function(){return a},e.setLockedItem=function(e,n){a.push({element:e,scope:n})},e.clearLockedItems=function(){a=[]}}).directive("msNav",n).directive("msNavTitle",function(){return{restrict:"A",compile:function(e){return e.addClass("ms-nav-title"),function(){}}}}).directive("msNavButton",function(){return{restrict:"AE",compile:function(e){return e.addClass("ms-nav-button"),function(){}}}}).directive("msNavToggle",t)}(),function(){"use strict";function e(e,n){e.root?this.navigation=n.getNavigation(e.root):this.navigation=n.getNavigation(),this.toggleHorizontalMobileMenu=function(){angular.element("body").toggleClass("ms-navigation-horizontal-mobile-menu-active")},n.sort()}function n(c,m,u,p){return{restrict:"E",scope:{folded:"=",root:"@"},controller:"MsNavigationController as vm",templateUrl:"app/core/directives/ms-navigation/templates/vertical.html",transclude:!0,compile:function(e){return e.addClass("ms-navigation"),function(e,n){var t=angular.element("body"),a=angular.element('
'),i=angular.element('
'),s=u("navigation");function o(e){if(p.setFolded(e),e)c.$broadcast("msNavigation::collapse"),t.addClass("ms-navigation-folded"),r();else{var n=p.getActiveItem();n&&n.scope.$emit("msNavigation::stateMatched"),t.removeClass("ms-navigation-folded ms-navigation-folded-open"),i.remove()}}function r(){n.parent().append(a),m(function(){a.on("mouseenter touchstart",l)})}function l(e){e&&e.preventDefault(),p.setFoldedOpen(!0);var n=p.getActiveItem();n&&n.scope.$emit("msNavigation::stateMatched"),t.addClass("ms-navigation-folded-open"),a.remove(),t.find("#main").append(i),i.on("mouseenter touchstart",d)}function d(e){e&&e.preventDefault(),p.setFoldedOpen(!1),c.$broadcast("msNavigation::collapse"),t.removeClass("ms-navigation-folded-open"),i.remove(),r()}p.setNavigationScope(e),function(){null===p.getFolded()&&p.setFolded(e.folded);p.getFolded()&&(m(function(){c.$broadcast("msNavigation::collapse")}),t.addClass("ms-navigation-folded"),r())}(),e.$watch(function(){return s.isLockedOpen()},function(e,n){if(!angular.isUndefined(e)&&!angular.equals(e,n)&&p.getFolded())if(e)c.$broadcast("msNavigation::collapse");else{var t=p.getActiveItem();t&&t.scope.$emit("msNavigation::stateMatched")}}),e.$watch("folded",function(e,n){angular.isUndefined(e)||angular.equals(e,n)||o(e)}),e.toggleFolded=function(){o(!p.getFolded())},e.$on("$stateChangeStart",function(){s.close()}),e.$on("$destroy",function(){i.off("mouseenter touchstart"),a.off("mouseenter touchstart")})}}}}function t(t,e,a,i,n,s){var o=this;o.element=e,o.node=t.node,o.hasChildren=void 0,o.collapsed=void 0,o.collapsable=void 0,o.group=void 0,o.animateHeightClass="animate-height",o.toggleCollapsed=function(){o.collapsed?o.expand():o.collapse()},o.collapse=function(){var e=o.element.children("ul"),n=e[0].offsetHeight;t.$evalAsync(function(){o.collapsed=!0,o.element.addClass("collapsing"),i.animate(e,{display:"block",height:n+"px"},{height:"0px"},o.animateHeightClass).then(function(){e.css({display:"",height:""}),o.element.removeClass("collapsing")}),t.$broadcast("msNavigation::collapse")})},o.expand=function(){var e=o.element.children("ul");e.css({position:"absolute",visibility:"hidden",display:"block",height:"auto"});var n=e[0].offsetHeight;e.css({position:"",visibility:"",display:"",height:""}),t.$evalAsync(function(){o.collapsed=!1,o.element.addClass("expanding"),i.animate(e,{display:"block",height:"0px"},{height:n+"px"},o.animateHeightClass).then(function(){e.css({height:""}),o.element.removeClass("expanding")}),a.$broadcast("msNavigation::collapse",o.node._path)})},o.getClass=function(){return o.node.class},o.isHidden=function(){if(angular.isDefined(o.node.hidden)&&angular.isFunction(o.node.hidden))return o.node.hidden();return!1},function(){o.hasChildren=0 target, inbound, fullname",e,n,t),E.calls.unshift({target:e,fullname:t||e,inbound:n,time:moment().format("HH:mm")}),50 session",e._request),e.notification&&(e.notification.close(),e.notification=null),E.conf.microphoneId?E.sessionConf.mediaConstraints.audio={deviceId:E.conf.microphoneId}:E.sessionConf.mediaConstraints.audio=!0,e.answer(E.sessionConf),E.isJabraEnabled&&(jabra.offHook(),E.jabraSession=e)}function O(e,n){y.debug("terminate -> session",e._request),e.notification&&(e.notification.close(),e.notification=null);var t={};if(n?t.status_code=n:e.isEstablished()||(t.status_code=603),e.terminate(t),E.isJabraEnabled)if(0===E.sessions.length)e.localHold&&jabra.resume(),jabra.onHook(),E.jabraSession=null;else{var a=_.last(E.sessions);a.localHold?(jabra.onHook(),jabra.hold(),E.jabraSession=a):jabra.offHook()}}function C(t){return y.debug("getVoiceChannels -> session",t._request),h.rpc.getVoiceChannels().$promise.then(function(e){var n=_.find(e.rows,function(e){return e.sipcalllinkedid===t.call_id?e:e.sipcalluniqueid===t.call_id?e:null});n&&(t.monitor=n.monitor,t.uniqueid=n.uniqueid,t.monitors=n.monitors)})}function w(e){y.debug("onAddstream -> data",e),this.remotePlayer.srcObject=e.stream,this.remotePlayer.play()}function R(){E.canGoInConference=!1,E.isInConference=!1,E.currentconferenceSessions=[]}function x(e,n){switch(e){case"ringing":E.soundPlayer.muted=E.conf.ringingMute,E.conf.ringingId&&E.soundPlayer.setSinkId(E.conf.ringingId).then(function(){E.soundPlayer.volume=E.conf.ringingVolume}).then(function(){n&&S()}).catch(function(e){y.info(e.message,E.conf.ringingId)});break;case"speaker":E.remotePlayer.muted=E.conf.speakerMute,E.conf.speakerId&&E.remotePlayer.setSinkId(E.conf.speakerId).then(function(){E.remotePlayer.volume=E.conf.speakerVolume}).then(function(){n&&S()}).catch(function(e){y.info(e.message,E.conf.speakerId)});break;case"microphone":for(var t=0;t session, textContent, position, delay",e._request,n,t,a),function(){i.show(i.simple().textContent(n).position(t).hideDelay(a)),O(e)}}function k(n){return y.debug("findSessionBySessionId -> sessionId, vm_pb.sessions",n,E.sessions),_.find(E.sessions,function(e){return e.call_id==n})}function M(e,n){return y.debug("callCallback -> url, params",e,n),s({url:e,method:"GET",params:n})}E.currentUser=b.getCurrentUser(),E.direction="right",E.selectedMode="md-scale",E.target="",E.showDialpad=!1,E.soundPlayer=document.getElementById(E.conf.soundPlayerId),E.remotePlayer=document.getElementById(E.conf.remotePlayerId),E.soundPlayer.volume=1,E.sessionConf={mediaConstraints:{audio:!0,video:!1},pcConfig:{iceServers:[]}},E.sessions=[],E.calls=[],E.callbackQueue=[],E.canGoInConference=!1,E.isInConference=!1,E.currentConferenceSessions=[],E.ua=new JsSIP.UA({sockets:[new JsSIP.WebSocketInterface("wss://"+E.conf.host+":"+E.conf.wssPort+"/ws")],uri:new JsSIP.URI("sip",E.conf.name,E.conf.host,5060,null,null).toString(),authorization_user:E.conf.name,ha1:E.conf.ha1,realm:E.conf.realm,user_agent:E.conf.ua,session_timers_refresh_method:"invite",register_expires:E.conf.phoneBarExpires||60,register:!0}),E.conf=_.merge(c.webrtc,E.conf),E.initDeviceInProgress=!1,E.isJabraEnabled=!1,E.isJabraInitialized=!1,E.jabraSession=null,E.jabraClicked=!1,E.buttonClicked=!1,E.originateInProgress=!1,t.bind("keyup",function(e){switch(e.keyCode){case 27:g(function(){E.showDialpad=!1})}}),E.$onInit=function(){m(!1),navigator.mediaDevices.ondevicechange=function(){E.initDeviceInProgress||(E.initDeviceInProgress=!0,jabra&&E.isJabraInitialized?jabra.shutdown().then(function(){E.isJabraInitialized=!1,m(!(E.isJabraEnabled=!1))}).catch(function(e){y.error("Unable to shutdown Jabra library",e)}):m(!0))};var e=[h.network.get({type:"turn",nolimit:!0}).$promise,h.network.get({type:"stun",nolimit:!0}).$promise];o.all(e).then(function(e){var n=e[0].rows,t=e[1].rows,a=[],i=[];t.forEach(function(e){i.push("stun:"+e.value)}),a.push({urls:i}),n.forEach(function(e){var n={urls:"turn:"+e.value};e.username&&(n.username=e.username),e.password&&(n.credential=e.password),a.push(n)}),E.sessionConf.pcConfig={iceServers:a}}),this.ua.on("registered",function(){this.registered=!0}.bind(this)),this.ua.on("unregistered",function(){this.registered=!1}.bind(this)),this.ua.on("newRTCSession",function(e){y.debug("onNewRTCSession -> data",e);var n,t,a,i,s,o=e.session,r=!0,l="",d=0;switch(e.originator){case"local":o.outgoing=!0,o.name=e.request.ruri.user,o.user=e.request.ruri.user,T(o.user,!1),t=e.request.extraHeaders,a="X-callback-url",s=_.find(t,function(e){return _.startsWith(e,a)}),n=!!s&&_.trim(s.replace(a,"").replace(i||":","")),E.isJabraEnabled&&(E.jabraSession&&jabra.resume(),E.jabraSession=o,jabra.offHook());break;case"remote":var c=b.getCurrentUser();c.voicePause&&c.phoneBarDnd&&(r=!1);var m=e.request.getHeader("Call-Type")||"";if(c.ignorePauseForPreviewCalls&&"PREVIEW"===m&&(r=!0),E.originateInProgress&&(r=!1),r&&(o.incoming=!0,o.name=e.request.from.display_name,o.user=e.request.from.uri.user,l=e.request.getHeader("X-Answer-Mode")||"",d=e.request.getHeader("X-Answer-After")||0,function(n){y.debug("getNotification -> session",n._request);var e=n.name?n.name+" <"+n.user+">":n.user;E.currentUser.privacyEnabled&&(e=A.mask(e)),f.create("Incoming call from: ",e,null,function(){I(n)},function(){O(n)},E.conf.autoAnswer).then(function(e){n.notification=e}).catch(function(e){y.error("Error creating notification for incoming call",e)})}(e.session),T(e.session.user,!0),E.isJabraEnabled&&jabra.ring(),E.conf.autoAnswer&&g(function(){o.isInProgress()&&(o.autoAnswer=!0,I(o))},E.conf.autoAnswerDelay?1e3*E.conf.autoAnswerDelay:0),y.debug("xAnswerMode",l),y.debug("xAnswerAfterSec",d),"auto"==l.toLowerCase())){var u=0==d?500:1e3*d;y.debug("auto answer enabled after:"+u+" ms"),g(function(){o.isInProgress()&&(o.autoAnswer=!0,I(o))},u)}}r?(o.call_id=e.request.call_id,n&&M(E.callbackQueue[o.call_id]=n,{call_id:o.call_id}).then(function(){y.info('callbackurl:"'+n+'" called successfully')}).catch(function(e){y.error('fail callbackurl:"'+n+'" err:',e)}),o.connection&&(o.connection.onaddstream=w.bind(this)),o.iceCandidateTimeout=null,o.on("progress",function(e,n){y.debug("onProgress -> session, data",e._request,n),y.error("onProgress -> session, data",e._request,n);var t=!1;switch(n.originator){case"local":this.conf.ringingMute||(this.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/incoming-call.ogg"),t=!0);break;case"remote":this.putOtherCallsOnHold(e),this.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/outgoing-call.ogg"),t=!0}E.originateInProgress&&(E.originateInProgress=!1),t&&(this.soundPlayer.loop="loop",this.soundPlayer.play().catch(function(e){y.error(e.message)})),C(e).then(function(){var n=E.callbackQueue[e.call_id];n&&M(n,{uniqueid:e.uniqueid,call_id:e.call_id,number_called:e.user}).then(function(){y.info('callbackurl:"'+n+'" called successfully')}).catch(function(e){y.error('fail callbackurl:"'+n+'" err:',e)}).finally(function(){delete E.callbackQueue[e.call_id]})}).catch(function(e){y.error("Unable to retrieve voice channels",e)})}.bind(this,o)),o.on("confirmed",function(e,n){y.debug("onConfirmed -> session, data",e._request,n);var t=document.getElementById("div_session_"+e.id.substr(0,32));t&&$(t).scope().$broadcast("timer-start"),e.confirmed=!0,"remote"===n.originator&&e.connection&&(e.connection.onaddstream=w.bind(this),_.head(e.connection.getRemoteStreams())&&(this.remotePlayer.srcObject=_.head(e.connection.getRemoteStreams()),this.remotePlayer.play())),this.soundPlayer.pause(),this.soundPlayer.loop=null,this.putOtherCallsOnHold(e),e.autoAnswer&&(this.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/beep.ogg"),this.soundPlayer.play().catch(function(e){y.error("Unable to play autoAnswer notification",e)})),E.canGoInConference=2==E.sessions.length,C(e).catch(function(e){y.error("Unable to retrieve voice channels",e)})}.bind(this,o)),o.on("hold",function(e,n){y.debug("onHold -> session, data",e._request,n),"local"===n.originator&&(e.localHold=!0)}.bind(this,o)),o.on("unhold",function(e,n){y.debug("onUnhold -> session, data",e._request,n),"local"===n.originator&&(e.localHold=!1)}.bind(this,o)),o.on("ended",function(e,n){if(y.debug("onEnded -> session, data",e._request,n),E.isInConference&&_.includes(E.currentConferenceSessions,e.id)&&(R(),E.buttonClicked=!0),_.remove(this.sessions,{id:e.id}),2!==E.sessions.length&&(E.canGoInConference=!1),E.isJabraEnabled)if(0===E.sessions.length)e.localHold&&jabra.resume(),jabra.onHook(),E.jabraSession=null;else{var t=_.last(E.sessions);t.localHold?(jabra.onHook(),jabra.hold(),E.jabraSession=t):jabra.offHook()}0===E.sessions.length&&E.currentUser.voicePause&&h.user.pause({id:E.currentUser.id,type:_.startsWith(E.currentUser.pauseType,"#")?E.currentUser.pauseType.substring(1):E.currentUser.pauseType}).$promise.catch(function(e){v.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:PAUSEUSER",msg:e.status?JSON.stringify(e.data):e.toString()})}),E.conf.microphoneMute=!1,E.initDevice("microphone",!0)}.bind(this,o)),o.on("failed",function(e,n){if(y.debug("onFailed -> session, data",e._request,n),this.soundPlayer.pause(),this.soundPlayer.loop=null,e.notification&&e.notification.close(),E.isInConference&&_.includes(E.currentConferenceSessions,e.id)&&R(),E.originateInProgress&&(E.originateInProgress=!1),_.remove(this.sessions,{id:e.id}),2!==E.sessions.length&&(E.canGoInConference=!1),E.isJabraEnabled)if(0===E.sessions.length)e.localHold&&jabra.resume(),jabra.onHook(),E.jabraSession=null;else{var t=_.last(E.sessions);t.localHold?(jabra.onHook(),jabra.hold(),E.jabraSession=t):jabra.offHook()}}.bind(this,o)),o.on("icecandidate",function(e,n){y.debug("onIcecandidate -> session, data",e._request,n),null!==e.iceCandidateTimeout&&clearTimeout(e.iceCandidateTimeout),e.iceCandidateTimeout=setTimeout(n.ready,1e3)}.bind(this,o)),E.sessions.push(o),g(function(){p.$apply(),y.debug("onNewRTCSession -> vm_pb.sessions",E.sessions)})):O(o,486)}.bind(this)),r.on("webbar:originate",function(e){y.debug("originateHook -> payload",e);var n=e.callNumber,t=e.callerId,a=e.callbackUrl;E.conf.microphoneId?E.sessionConf.mediaConstraints.audio={deviceId:E.conf.microphoneId}:E.sessionConf.mediaConstraints.audio=!0;var i=n.replace(/ /g,"");if(i=(i=i.replace(/\(/g,"")).replace(/\)/g,"")){var s=angular.copy(E.sessionConf);s.extraHeaders=[],t&&s.extraHeaders.push("X-CID: "+t),a&&s.extraHeaders.push("X-callback-url: "+a),E.originateInProgress=!0,E.ua.call(i,s)}}.bind(this)),r.on("webbar:hangup",function(e){y.debug("hangupHook -> payload",e);var n=E.sessions;if(e.sessionId&&((n=[]).push(k(e.sessionId)),0==n.length))y.warn("call with session Id "+e.sessionId+" not found");else for(var t=0;t sessionToHangup",a),E.terminate(a)}}.bind(this)),r.on("webbar:answer",function(e){var n;y.debug("answerHook -> payload",e),n=e.sessionId?k(e.sessionId):_.find(E.sessions,function(e){return e.incoming&&!e.confirmed}),e.sessionId&&!n&&y.warn("call with session Id "+e.sessionId+" not found"),n&&E.answer(n)}.bind(this)),r.on("webbar:hold",function(e){y.debug("holdHook -> payload",e);var n=E.sessions;if(e.sessionId&&((n=[]).push(k(e.sessionId)),0==n.length))y.warn("call with session Id "+e.sessionId+" not found");else for(var t=0;t payload",e);var n=E.sessions;if(e.sessionId&&((n=[]).push(k(e.sessionId)),0==n.length))y.warn("call with session Id "+e.sessionId+" not found");else for(var t=0;t payload",e),e.sessionId)if(e.transferNumber){var n=k(e.sessionId);n?n.refer(e.transferNumber,{eventHandlers:{requestSucceeded:L(n,"requestSucceeded","top right",3e3),requestFailed:L(n,"requestFailed","top right",3e3)}}):y.warn("call with session Id "+e.sessionId+" not found")}else y.error("transferNumber required");else y.error("sessionId required")}.bind(this)),r.on("webbar:stopmonitors",function(e){if(e.agentId===E.currentUser.id){var n=_.find(E.sessions,["uniqueid",e.uniqueid]);if(!n)return;n.monitors.forEach(function(e){e.status="pause"}),n.monitor=!1}}.bind(this))}.bind(this),E.type=function(e,n){var t=e;switch(E.target||(E.target=""),n&&(E.target+=e,p.$broadcast("angucomplete-alt:changeInput","ms-target-wrap",E.target)),e){case"*":t="asterisk";break;case"#":t="pound"}E.conf.enableDtmfTone&&(E.soundPlayer.setAttribute("src","assets/ms-phonebar/sounds/dialpad/"+t+".ogg"),E.soundPlayer.play().catch(function(e){y.error(e.message)}));for(var a=0;a session",e._request),e.hold({useUpdate:!1}),E.isJabraEnabled&&(jabra.hold(),jabra.onHook())},E.refer=function(n){y.debug("refer -> session",n._request);var e=a.prompt().title("Transfer").textContent("Type the target").placeholder("Target").ariaLabel("Target").ok("Transfer").cancel("Cancel");a.show(e).then(function(e){return D(e.replace(/ /g,"").replace(/\(/g,"").replace(/\)/g,""))}).then(function(e){n.refer(e,{eventHandlers:{requestSucceeded:L(n,"requestSucceeded","top right",3e3),requestFailed:L(n,"requestFailed","top right",3e3)}})})},E.record=function(e){y.debug("record -> session",e._request),a.show({controller:"RecordDialogController",controllerAs:"vm",templateUrl:"assets/ms-phonebar/record/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{session:e,sessions:E.sessions}})},E.unhold=function(e){y.debug("unhold -> session",e._request),e.unhold({useUpdate:!1}),E.putOtherCallsOnHold(e),E.isJabraEnabled&&(jabra.offHook(),jabra.resume())},E.answer=I,E.terminate=O,E.selectSession=function(e){y.debug("selectSession -> session",e._request),E.unhold(e)},E.typeWrapper=function(e){switch(e.key.toLowerCase()){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"*":case"#":E.type(e.key);break;case"enter":E.call()}},E.toggleDialpad=function(){E.showDialpad=!E.showDialpad},E.referAttended=function(e){y.debug("referAttended -> session",e._request),a.show({controller:"ReferAttendedDialogController",controllerAs:"vm",templateUrl:"assets/ms-phonebar/referAttended/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{session:e,sessions:_.reject(E.sessions,{id:e.id}),isJabraEnabled:E.isJabraEnabled}})},E.closeDialpad=function(){E.showDialpad=!1},E.initDevice=x,E.putOtherCallsOnHold=function(e){if(y.debug("putOtherCallsOnHold -> session",e._request),1 evt, data",e,n),n.target&&(E.target=n.target,E.call())}),p.$on("webrtc::transfer",function(e,n){if(y.debug("onRemoteTransfer -> evt, data",e,n),n.target)for(var t=0;t session, textContent, position, delay",e,n,t,a),function(){s.show(s.simple().textContent(n).position(t).hideDelay(a)),e.terminate(),jabra&&i&&jabra.onHook(),l()}}function l(e){n.hide(e)}o.title="Refer Attended",o.sessions=a,o.session=i,o.isJabraEnabled=e,o.sessionTarget=null,a.length&&(o.target=a[0].user),o.closeDialog=l,o.transfer=function(){var e,n,t=_.find(a,function(e){if(e.user===o.target)return e});n=t.outgoing?(e=t,o.session):(e=o.session,t);n.refer(e.user,{replaces:e,eventHandlers:{requestSucceeded:r(i,"requestSucceeded","top right",3e3,o.isJabraEnabled),requestFailed:r(i,"requestFailed","top right",3e3,o.isJabraEnabled)}})}}e.$inject=["$mdDialog","$mdToast","sessions","session","isJabraEnabled"],angular.module("app.core").controller("ReferAttendedDialogController",e)}(),function(){"use strict";function e(e,s,n,t){var a=this;function i(e,n,t){var a;if(s[t]){if(a=_.find(e,function(e){return e.deviceId===s[t]}))return a.deviceId;var i=_.findIndex(e,function(e){return e.kind===n});if(0<=i)return e[i].deviceId}else(a=_.find(e,function(e){return e.kind===n}))&&(s[t]=a.deviceId);return s[t]||null}_.remove(n,function(e){return"audioinput"===e.kind&&("default"===e.deviceId||"communications"===e.deviceId)||"audiooutput"===e.kind&&("default"===e.deviceId||"communications"===e.deviceId)}),s.ringingId=i(n,"audiooutput","ringingId"),s.speakerId=i(n,"audiooutput","speakerId"),s.microphoneId=i(n,"audioinput","microphoneId"),s.ringingVolume=s.ringingVolume||.5,s.speakerVolume=s.speakerVolume||.5,s.microphoneVolume=s.microphoneVolume||1,s.ringingMute=s.ringingMute||!1,s.speakerMute=s.speakerMute||!1,s.microphoneMute=s.microphoneMute||!1,a.conf=angular.copy(s),a.devices=n,a.activeSessions=t,a.saveSettings=function(){e.hide(a.conf)},a.closeDialog=function(){e.hide()},a.isCompatibleBrowser=function(){return"chrome"===a.conf.browserName.toLowerCase()||"opera"===a.conf.browserName.toLowerCase()||"safari"===a.conf.browserName.toLowerCase()}}e.$inject=["$mdDialog","conf","devices","activeSessions"],angular.module("app.toolbar").controller("SettingsController",e)}(),function(){"use strict";function e(e,t,a){var i=this;function s(e,n,t){r(e).then(function(){n&&!1!==t&&i.search()})}function o(e){var n=e.key;i.pickerModels[n].dateStart?!0===e.useFromToKeys?i.query[n]={from:moment(i.pickerModels[n].dateStart).utcOffset(0,!0).format(),to:moment(i.pickerModels[n].dateEnd).utcOffset(0,!0).add(23,"hours").add(59,"minutes").add(59,"seconds").format()}:i.query[n]={$gte:moment(i.pickerModels[n].dateStart).utcOffset(0,!0).format(),$lte:moment(i.pickerModels[n].dateEnd).utcOffset(0,!0).add(23,"hours").add(59,"minutes").add(59,"seconds").format()}:i.query[n]=void 0,i.search()}function r(e){var n=e.key,t={param:i.query[n],resources:e.options,placeholder:e.placeholder,ngValue:e.ngValue};return a.setPlaceholder(t).then(function(e){i.placeholders[n]=e})}i.pickerModels={},i.placeholders={},i.localizationMap=t.localizationMap,i.onMultiselectInit=function(e){r(e)},i.onDateRangeInit=function(e){var n=e.key;i.query[n]?i.pickerModels[n]=t.setSelectedDate(i.query[n]):i.pickerModels[n]={dateStart:null}},i.onMultiselectSelection=s,i.onDateRangeSelection=o,i.clearDate=function(e){var n=e.key;i.pickerModels[n]={dateStart:null},delete i.query[n],i.search()},i.clearSelection=function(e){var n=e.key,t=e.ngValue||"id";i.query[n]=!1===e.clearAll?[_.head(e.options)[t]]:[],r(e).then(function(){i.search()})},i.selectAll=function(e){var n=e.key,t=e.ngValue||"id";i.query[n]=_.map(e.options,t),r(e).then(function(){i.search()})},e.$on("ms-quick-filter:update",function(e,t){t.filters.forEach(function(e){var n=_.find(i.filters,["name",e]);if(n)switch(n.type){case"date":o(n);break;case"multiselect":s(n,!0,t.update);break;case"select":i.search()}})})}e.$inject=["$scope","dateRangeManager","quickFilterManager"],angular.module("app.core").directive("msQuickFilter",function(){return{restrict:"E",scope:{query:"=",filters:"=",search:"&"},controller:e,controllerAs:"vm",bindToController:!0,templateUrl:"app/core/directives/ms-quick-filter/ms-quick-filter.html"}})}(),function(){"use strict";angular.module("app.core").directive("msRandomClass",function(){return{restrict:"A",scope:{msRandomClass:"="},link:function(e,n){var t=e.msRandomClass[Math.floor(Math.random()*e.msRandomClass.length)];n.addClass(t)}}})}(),function(){"use strict";function e(i){return{restrict:"E",scope:{id:"=",model:"=",download:"="},replace:!0,link:function(n,e){var t=!1,a=document.createElement("audio");n.download||a.setAttribute("controlsList","nodownload"),a.setAttribute("preload","none"),a.setAttribute("controls",""),a.setAttribute("style","width: 265px;"),a.setAttribute("src"," "),a.onplay=function(e){t||(t=!0,e.preventDefault(),i[n.model||"voiceRecording"].download({id:n.id}).$promise.then(function(e){var n=[e.buffer],t=new Blob(n,{type:e.type});a.setAttribute("type",e.type),a.setAttribute("src",URL.createObjectURL(t)),a.play()}).catch(function(e){console.error(e)}))},e.append(a)}}}e.$inject=["api"],angular.module("app.core").directive("msRecording",e)}(),function(){"use strict";angular.module("app.core").directive("msResponsiveTable",function(){return{restrict:"A",link:function(e,n){var t=angular.element('
');n.after(t),t.append(n)}}})}(),function(){"use strict";function e(n,i,s,e){var o=this;function t(){angular.isArray(o.onSearch)?a(o.onSearch):o.onResultClick?(o.resultsLoading=!0,n.$parent.$eval("vm.search(query)",{query:o.query.filter}).then(function(e){a(e)}).catch(function(){a([])}).finally(function(){o.resultsLoading=!1})):o.onSearch()}function a(e){o.expanded&&(void 0===e||angular.isArray(e)||null===e)&&(o.selectedResultIndex=0,o.results=e)}function r(){o.expanded=!0,o.displayOn=!0,n.expand()}function l(e){!1!==e&&(o.query.filter=void 0,o.onResultClick?a(null):t()),o.expanded=!1,n.collapse()}function d(e){o.onResultClick&&o.onResultClick({item:e}),l()}function c(){var e=i.find(".ms-search-bar-results"),n=angular.element(e.find(".result")[o.selectedResultIndex]);if(e&&n){var t=n.position().top-8,a=n.position().top+n.outerHeight()+8;o.ignoreMouseEvents=!0,s.cancel(o.mouseEventIgnoreTimeout),o.mouseEventIgnoreTimeout=s(function(){o.ignoreMouseEvents=!1},250),e.scrollTop()>t&&e.scrollTop(t),a>e.height()+e.scrollTop()&&e.scrollTop(a-e.height())}}o.queryOptions={debounce:o.debounce||0},o.searchOnEnterKey=e.get().searchOnEnterKey||!1,o.resultsLoading=!1,o.results=null,o.selectedResultIndex=0,o.ignoreMouseEvents=!1,o.expandBar=r,o.collapseBar=l,o.blurCollapse=function(){if(!o.collapseOnBlur)return;l()},o.onKeyDown=function(e){var n=e.keyCode;-1<[27,38,40].indexOf(n)&&e.preventDefault();switch(n){case 13:if(!o.onResultClick)return t();if(!o.results)return;d(o.results[o.selectedResultIndex]);break;case 27:l();break;case 38:0<=o.selectedResultIndex-1&&(o.selectedResultIndex--,c());break;case 40:if(!o.results)return;o.selectedResultIndex+1e.length)return}else r();t()}})}function n(a){return{restrict:"E",scope:{query:"=?",debounce:"=?",direction:"@",iconColor:"@",onSearch:"&",onResultClick:"&?",onExpand:"&?",onCollapse:"&?",collapseOnBlur:"=d.shortcuts.length&&(d.selectedResultIndex=d.shortcuts.length-1)));d.saveShortcuts()},d.handleResultClick=function(e){e.hasShortcut?d.removeShortcut(e):d.addShortcut(e)},d.absorbEvent=function(e){e.preventDefault()},d.handleKeydown=function(e){var n=e.keyCode;-1<[38,40].indexOf(n)&&e.preventDefault();switch(n){case 13:d.handleResultClick(d.results[d.selectedResultIndex]);break;case 38:0<=d.selectedResultIndex-1&&(d.selectedResultIndex--,d.ensureSelectedResultIsVisible());break;case 40:d.selectedResultIndex+1t&&e.scrollTop(t),a>e.height()+e.scrollTop()&&e.scrollTop(a-e.height())}},d.toggleMobileBar=function(){d.mobileBarActive=!d.mobileBarActive},d.loadShortcuts().then(function(e){d.shortcuts=e,0i.steps.length)}i.mainForm=void 0,i.orientation="horizontal",i.steps=[],i.currentStep=void 0,i.currentStepNumber=1,i.setOrientation=function(e){i.orientation=e||"horizontal"},i.registerMainForm=function(e){i.mainForm=e},i.registerStep=function(e,n,t){var a={element:e,scope:n,form:t,stepNumber:n.step||i.steps.length+1,stepTitle:n.stepTitle,stepTitleTranslate:n.stepTitleTranslate};return i.steps.push(a),i.steps.sort(function(e,n){return e.stepNumber-n.stepNumber}),a},i.setupSteps=function(){i.setCurrentStep(i.currentStepNumber)},i.resetForm=function(){e(function(){for(var e=0;ee.scrollWidth&&0==e.scrollLeft&&0==n.scrollLeft?"right":n.scrollWidth>e.scrollWidth&&n.scrollLeft>e.scrollLeft&&e.scrollWidth+n.scrollLeft>=n.scrollWidth?"left":n.scrollWidth>e.scrollWidth&&n.scrollLeft>e.scrollLeft&&e.scrollWidth+n.scrollLeftt.position().top+i&&(m(function(){o=!0}),r.off("scroll",c))}}}}}e.$inject=["$timeout","$q"],angular.module("app.core").controller("MsTimelineController",function(){var n=this;n.scrollEl=void 0,n.setScrollEl=function(e){n.scrollEl=e},n.getScrollEl=function(){return n.scrollEl}}).directive("msTimeline",function(){return{scope:{msTimeline:"=?",loadMore:"&?msTimelineLoadMore"},controller:"MsTimelineController",compile:function(e){return e.addClass("ms-timeline"),function(e,n,t,a){var i=angular.element('
');n.append(i);var s={scrollEl:"#content"};s=angular.extend(s,e.msTimeline,{});var o=angular.element(s.scrollEl);a.setScrollEl(o);var r=144;function l(){o.scrollTop()+o.height()+r>i.position().top&&(i.addClass("show"),c(),e.loadMore&&e.loadMore().then(function(){i.removeClass("show"),d()},function(){i.remove()}))}function d(){o.on("scroll",l)}function c(){o.off("scroll",l)}d(),e.$on("$destroy",function(){c()})}}}}).directive("msTimelineItem",e)}(),function(){"use strict";function e(e,n,t,a,i){var r=this;function s(){!function(){r.millis=l().diff(moment(r.startingTime));var e=moment.duration(r.millis),n=e.seconds(),t=e.minutes(),a=e.hours(),i=e.days(),s=e.months(),o=e.years();r.seconds=n<10?"0"+n:n,r.minutes=t<10?"0"+t:t,r.hours=a<10?"0"+a:a,r.days=i<10?"0"+i:i,r.months=s<10?"0"+s:s,r.years=o<10?"0"+o:o,r.timer=0{{ vm.timer }}
",compile:function(){return{pre:function(e,n,t){e.interval=t.interval||1e3}}},controller:e,controllerAs:"vm",bindToController:!0}})}(),function(){"use strict";angular.module("app.core").directive("msTimezone",function(){return{restrict:"E",scope:{ngModel:"=",ngChange:"&"},controller:["$scope",function(e){e.timezone=[{name:"Europe/Andorra",utcOffset:60,offsetStr:"+01:00",countries:["AD"]},{name:"Asia/Dubai",utcOffset:240,offsetStr:"+04:00",countries:["AE","OM"]},{name:"Asia/Kabul",utcOffset:270,offsetStr:"+04:30",countries:["AF"]},{name:"Europe/Tirane",utcOffset:60,offsetStr:"+01:00",countries:["AL"]},{name:"Asia/Yerevan",utcOffset:240,offsetStr:"+04:00",countries:["AM"]},{name:"Antarctica/Rothera",utcOffset:-180,offsetStr:"-03:00",countries:["AQ"]},{name:"Antarctica/Palmer",utcOffset:-180,offsetStr:"-03:00",countries:["AQ"]},{name:"Antarctica/Mawson",utcOffset:300,offsetStr:"+05:00",countries:["AQ"]},{name:"Antarctica/Davis",utcOffset:420,offsetStr:"+07:00",countries:["AQ"]},{name:"Antarctica/Casey",utcOffset:480,offsetStr:"+08:00",countries:["AQ"]},{name:"Antarctica/Vostok",utcOffset:360,offsetStr:"+06:00",countries:["AQ"]},{name:"Antarctica/DumontDUrville",utcOffset:600,offsetStr:"+10:00",countries:["AQ"]},{name:"Antarctica/Syowa",utcOffset:180,offsetStr:"+03:00",countries:["AQ"]},{name:"Antarctica/Troll",utcOffset:0,offsetStr:"+00:00",countries:["AQ"]},{name:"America/Argentina/Buenos_Aires",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Cordoba",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Salta",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Jujuy",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Tucuman",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Catamarca",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/La_Rioja",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/San_Juan",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Mendoza",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/San_Luis",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Rio_Gallegos",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"America/Argentina/Ushuaia",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},{name:"Pacific/Pago_Pago",utcOffset:-660,offsetStr:"-11:00",countries:["AS","UM"]},{name:"Europe/Vienna",utcOffset:60,offsetStr:"+01:00",countries:["AT"]},{name:"Australia/Lord_Howe",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Antarctica/Macquarie",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Hobart",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Currie",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Melbourne",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Sydney",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},{name:"Australia/Broken_Hill",utcOffset:630,offsetStr:"+10:30",countries:["AU"]},{name:"Australia/Brisbane",utcOffset:600,offsetStr:"+10:00",countries:["AU"]},{name:"Australia/Lindeman",utcOffset:600,offsetStr:"+10:00",countries:["AU"]},{name:"Australia/Adelaide",utcOffset:630,offsetStr:"+10:30",countries:["AU"]},{name:"Australia/Darwin",utcOffset:570,offsetStr:"+09:30",countries:["AU"]},{name:"Australia/Perth",utcOffset:480,offsetStr:"+08:00",countries:["AU"]},{name:"Australia/Eucla",utcOffset:525,offsetStr:"+08:45",countries:["AU"]},{name:"Asia/Baku",utcOffset:240,offsetStr:"+04:00",countries:["AZ"]},{name:"America/Barbados",utcOffset:-240,offsetStr:"-04:00",countries:["BB"]},{name:"Asia/Dhaka",utcOffset:360,offsetStr:"+06:00",countries:["BD"]},{name:"Europe/Brussels",utcOffset:60,offsetStr:"+01:00",countries:["BE"]},{name:"Europe/Sofia",utcOffset:120,offsetStr:"+02:00",countries:["BG"]},{name:"Atlantic/Bermuda",utcOffset:-240,offsetStr:"-04:00",countries:["BM"]},{name:"Asia/Brunei",utcOffset:480,offsetStr:"+08:00",countries:["BN"]},{name:"America/La_Paz",utcOffset:-240,offsetStr:"-04:00",countries:["BO"]},{name:"America/Noronha",utcOffset:-120,offsetStr:"-02:00",countries:["BR"]},{name:"America/Belem",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Fortaleza",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Recife",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Araguaina",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Maceio",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Bahia",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Sao_Paulo",utcOffset:-120,offsetStr:"-02:00",countries:["BR"]},{name:"America/Campo_Grande",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Cuiaba",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Santarem",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},{name:"America/Porto_Velho",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},{name:"America/Boa_Vista",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},{name:"America/Manaus",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},{name:"America/Eirunepe",utcOffset:-300,offsetStr:"-05:00",countries:["BR"]},{name:"America/Rio_Branco",utcOffset:-300,offsetStr:"-05:00",countries:["BR"]},{name:"America/Nassau",utcOffset:-300,offsetStr:"-05:00",countries:["BS"]},{name:"Asia/Thimphu",utcOffset:360,offsetStr:"+06:00",countries:["BT"]},{name:"Europe/Minsk",utcOffset:180,offsetStr:"+03:00",countries:["BY"]},{name:"America/Belize",utcOffset:-360,offsetStr:"-06:00",countries:["BZ"]},{name:"America/St_Johns",utcOffset:-210,offsetStr:"-03:30",countries:["CA"]},{name:"America/Halifax",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Glace_Bay",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Moncton",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Goose_Bay",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Blanc-Sablon",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},{name:"America/Toronto",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Nipigon",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Thunder_Bay",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Iqaluit",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Pangnirtung",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Resolute",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Atikokan",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},{name:"America/Rankin_Inlet",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Winnipeg",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Rainy_River",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Regina",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Swift_Current",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},{name:"America/Edmonton",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Cambridge_Bay",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Yellowknife",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Inuvik",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Creston",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Dawson_Creek",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Fort_Nelson",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},{name:"America/Vancouver",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},{name:"America/Whitehorse",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},{name:"America/Dawson",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},{name:"Indian/Cocos",utcOffset:390,offsetStr:"+06:30",countries:["CC"]},{name:"Europe/Zurich",utcOffset:60,offsetStr:"+01:00",countries:["CH","DE","LI"]},{name:"Africa/Abidjan",utcOffset:0,offsetStr:"+00:00",countries:["CI","BF","GM","GN","ML","MR","SH","SL","SN","ST","TG"]},{name:"Pacific/Rarotonga",utcOffset:-600,offsetStr:"-10:00",countries:["CK"]},{name:"America/Santiago",utcOffset:-180,offsetStr:"-03:00",countries:["CL"]},{name:"Pacific/Easter",utcOffset:-300,offsetStr:"-05:00",countries:["CL"]},{name:"Asia/Shanghai",utcOffset:480,offsetStr:"+08:00",countries:["CN"]},{name:"Asia/Urumqi",utcOffset:360,offsetStr:"+06:00",countries:["CN"]},{name:"America/Bogota",utcOffset:-300,offsetStr:"-05:00",countries:["CO"]},{name:"America/Costa_Rica",utcOffset:-360,offsetStr:"-06:00",countries:["CR"]},{name:"America/Havana",utcOffset:-300,offsetStr:"-05:00",countries:["CU"]},{name:"Atlantic/Cape_Verde",utcOffset:-60,offsetStr:"-01:00",countries:["CV"]},{name:"America/Curacao",utcOffset:-240,offsetStr:"-04:00",countries:["CW","AW","BQ","SX"]},{name:"Indian/Christmas",utcOffset:420,offsetStr:"+07:00",countries:["CX"]},{name:"Asia/Nicosia",utcOffset:120,offsetStr:"+02:00",countries:["CY"]},{name:"Europe/Prague",utcOffset:60,offsetStr:"+01:00",countries:["CZ","SK"]},{name:"Europe/Berlin",utcOffset:60,offsetStr:"+01:00",countries:["DE"]},{name:"Europe/Copenhagen",utcOffset:60,offsetStr:"+01:00",countries:["DK"]},{name:"America/Santo_Domingo",utcOffset:-240,offsetStr:"-04:00",countries:["DO"]},{name:"Africa/Algiers",utcOffset:60,offsetStr:"+01:00",countries:["DZ"]},{name:"America/Guayaquil",utcOffset:-300,offsetStr:"-05:00",countries:["EC"]},{name:"Pacific/Galapagos",utcOffset:-360,offsetStr:"-06:00",countries:["EC"]},{name:"Europe/Tallinn",utcOffset:120,offsetStr:"+02:00",countries:["EE"]},{name:"Africa/Cairo",utcOffset:120,offsetStr:"+02:00",countries:["EG"]},{name:"Africa/El_Aaiun",utcOffset:0,offsetStr:"+00:00",countries:["EH"]},{name:"Europe/Madrid",utcOffset:60,offsetStr:"+01:00",countries:["ES"]},{name:"Africa/Ceuta",utcOffset:60,offsetStr:"+01:00",countries:["ES"]},{name:"Atlantic/Canary",utcOffset:0,offsetStr:"+00:00",countries:["ES"]},{name:"Europe/Helsinki",utcOffset:120,offsetStr:"+02:00",countries:["FI","AX"]},{name:"Pacific/Fiji",utcOffset:720,offsetStr:"+12:00",countries:["FJ"]},{name:"Atlantic/Stanley",utcOffset:-180,offsetStr:"-03:00",countries:["FK"]},{name:"Pacific/Chuuk",utcOffset:600,offsetStr:"+10:00",countries:["FM"]},{name:"Pacific/Pohnpei",utcOffset:660,offsetStr:"+11:00",countries:["FM"]},{name:"Pacific/Kosrae",utcOffset:660,offsetStr:"+11:00",countries:["FM"]},{name:"Atlantic/Faroe",utcOffset:0,offsetStr:"+00:00",countries:["FO"]},{name:"Europe/Paris",utcOffset:60,offsetStr:"+01:00",countries:["FR"]},{name:"Europe/London",utcOffset:0,offsetStr:"+00:00",countries:["GB","GG","IM","JE"]},{name:"Asia/Tbilisi",utcOffset:240,offsetStr:"+04:00",countries:["GE"]},{name:"America/Cayenne",utcOffset:-180,offsetStr:"-03:00",countries:["GF"]},{name:"Africa/Accra",utcOffset:0,offsetStr:"+00:00",countries:["GH"]},{name:"Europe/Gibraltar",utcOffset:60,offsetStr:"+01:00",countries:["GI"]},{name:"America/Godthab",utcOffset:-180,offsetStr:"-03:00",countries:["GL"]},{name:"America/Danmarkshavn",utcOffset:0,offsetStr:"+00:00",countries:["GL"]},{name:"America/Scoresbysund",utcOffset:-60,offsetStr:"-01:00",countries:["GL"]},{name:"America/Thule",utcOffset:-240,offsetStr:"-04:00",countries:["GL"]},{name:"Europe/Athens",utcOffset:120,offsetStr:"+02:00",countries:["GR"]},{name:"Atlantic/South_Georgia",utcOffset:-120,offsetStr:"-02:00",countries:["GS"]},{name:"America/Guatemala",utcOffset:-360,offsetStr:"-06:00",countries:["GT"]},{name:"Pacific/Guam",utcOffset:600,offsetStr:"+10:00",countries:["GU","MP"]},{name:"Africa/Bissau",utcOffset:0,offsetStr:"+00:00",countries:["GW"]},{name:"America/Guyana",utcOffset:-240,offsetStr:"-04:00",countries:["GY"]},{name:"Asia/Hong_Kong",utcOffset:480,offsetStr:"+08:00",countries:["HK"]},{name:"America/Tegucigalpa",utcOffset:-360,offsetStr:"-06:00",countries:["HN"]},{name:"America/Port-au-Prince",utcOffset:-300,offsetStr:"-05:00",countries:["HT"]},{name:"Europe/Budapest",utcOffset:60,offsetStr:"+01:00",countries:["HU"]},{name:"Asia/Jakarta",utcOffset:420,offsetStr:"+07:00",countries:["ID"]},{name:"Asia/Pontianak",utcOffset:420,offsetStr:"+07:00",countries:["ID"]},{name:"Asia/Makassar",utcOffset:480,offsetStr:"+08:00",countries:["ID"]},{name:"Asia/Jayapura",utcOffset:540,offsetStr:"+09:00",countries:["ID"]},{name:"Europe/Dublin",utcOffset:0,offsetStr:"+00:00",countries:["IE"]},{name:"Asia/Jerusalem",utcOffset:120,offsetStr:"+02:00",countries:["IL"]},{name:"Asia/Kolkata",utcOffset:330,offsetStr:"+05:30",countries:["IN"]},{name:"Indian/Chagos",utcOffset:360,offsetStr:"+06:00",countries:["IO"]},{name:"Asia/Baghdad",utcOffset:180,offsetStr:"+03:00",countries:["IQ"]},{name:"Asia/Tehran",utcOffset:210,offsetStr:"+03:30",countries:["IR"]},{name:"Atlantic/Reykjavik",utcOffset:0,offsetStr:"+00:00",countries:["IS"]},{name:"Europe/Rome",utcOffset:60,offsetStr:"+01:00",countries:["IT","SM","VA"]},{name:"America/Jamaica",utcOffset:-300,offsetStr:"-05:00",countries:["JM"]},{name:"Asia/Amman",utcOffset:120,offsetStr:"+02:00",countries:["JO"]},{name:"Asia/Tokyo",utcOffset:540,offsetStr:"+09:00",countries:["JP"]},{name:"Africa/Nairobi",utcOffset:180,offsetStr:"+03:00",countries:["KE","DJ","ER","ET","KM","MG","SO","TZ","UG","YT"]},{name:"Asia/Bishkek",utcOffset:360,offsetStr:"+06:00",countries:["KG"]},{name:"Pacific/Tarawa",utcOffset:720,offsetStr:"+12:00",countries:["KI"]},{name:"Pacific/Enderbury",utcOffset:780,offsetStr:"+13:00",countries:["KI"]},{name:"Pacific/Kiritimati",utcOffset:840,offsetStr:"+14:00",countries:["KI"]},{name:"Asia/Pyongyang",utcOffset:510,offsetStr:"+08:30",countries:["KP"]},{name:"Asia/Seoul",utcOffset:540,offsetStr:"+09:00",countries:["KR"]},{name:"America/Cayman",utcOffset:-300,offsetStr:"-05:00",countries:["KY"]},{name:"Asia/Almaty",utcOffset:360,offsetStr:"+06:00",countries:["KZ"]},{name:"Asia/Qyzylorda",utcOffset:360,offsetStr:"+06:00",countries:["KZ"]},{name:"Asia/Aqtobe",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},{name:"Asia/Aqtau",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},{name:"Asia/Oral",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},{name:"Asia/Beirut",utcOffset:120,offsetStr:"+02:00",countries:["LB"]},{name:"Asia/Colombo",utcOffset:330,offsetStr:"+05:30",countries:["LK"]},{name:"Africa/Monrovia",utcOffset:0,offsetStr:"+00:00",countries:["LR"]},{name:"Europe/Vilnius",utcOffset:120,offsetStr:"+02:00",countries:["LT"]},{name:"Europe/Luxembourg",utcOffset:60,offsetStr:"+01:00",countries:["LU"]},{name:"Europe/Riga",utcOffset:120,offsetStr:"+02:00",countries:["LV"]},{name:"Africa/Tripoli",utcOffset:120,offsetStr:"+02:00",countries:["LY"]},{name:"Africa/Casablanca",utcOffset:0,offsetStr:"+00:00",countries:["MA"]},{name:"Europe/Monaco",utcOffset:60,offsetStr:"+01:00",countries:["MC"]},{name:"Europe/Chisinau",utcOffset:120,offsetStr:"+02:00",countries:["MD"]},{name:"Pacific/Majuro",utcOffset:720,offsetStr:"+12:00",countries:["MH"]},{name:"Pacific/Kwajalein",utcOffset:720,offsetStr:"+12:00",countries:["MH"]},{name:"Asia/Rangoon",utcOffset:390,offsetStr:"+06:30",countries:["MM"]},{name:"Asia/Ulaanbaatar",utcOffset:480,offsetStr:"+08:00",countries:["MN"]},{name:"Asia/Hovd",utcOffset:420,offsetStr:"+07:00",countries:["MN"]},{name:"Asia/Choibalsan",utcOffset:480,offsetStr:"+08:00",countries:["MN"]},{name:"Asia/Macau",utcOffset:480,offsetStr:"+08:00",countries:["MO"]},{name:"America/Martinique",utcOffset:-240,offsetStr:"-04:00",countries:["MQ"]},{name:"Europe/Malta",utcOffset:60,offsetStr:"+01:00",countries:["MT"]},{name:"Indian/Mauritius",utcOffset:240,offsetStr:"+04:00",countries:["MU"]},{name:"Indian/Maldives",utcOffset:300,offsetStr:"+05:00",countries:["MV"]},{name:"America/Mexico_City",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Cancun",utcOffset:-300,offsetStr:"-05:00",countries:["MX"]},{name:"America/Merida",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Monterrey",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Matamoros",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"America/Mazatlan",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Chihuahua",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Ojinaga",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Hermosillo",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},{name:"America/Tijuana",utcOffset:-480,offsetStr:"-08:00",countries:["MX"]},{name:"America/Santa_Isabel",utcOffset:-480,offsetStr:"-08:00",countries:["MX"]},{name:"America/Bahia_Banderas",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},{name:"Asia/Kuala_Lumpur",utcOffset:480,offsetStr:"+08:00",countries:["MY"]},{name:"Asia/Kuching",utcOffset:480,offsetStr:"+08:00",countries:["MY"]},{name:"Africa/Maputo",utcOffset:120,offsetStr:"+02:00",countries:["MZ","BI","BW","CD","MW","RW","ZM","ZW"]},{name:"Africa/Windhoek",utcOffset:120,offsetStr:"+02:00",countries:["NA"]},{name:"Pacific/Noumea",utcOffset:660,offsetStr:"+11:00",countries:["NC"]},{name:"Pacific/Norfolk",utcOffset:660,offsetStr:"+11:00",countries:["NF"]},{name:"Africa/Lagos",utcOffset:60,offsetStr:"+01:00",countries:["NG","AO","BJ","CD","CF","CG","CM","GA","GQ","NE"]},{name:"America/Managua",utcOffset:-360,offsetStr:"-06:00",countries:["NI"]},{name:"Europe/Amsterdam",utcOffset:60,offsetStr:"+01:00",countries:["NL"]},{name:"Europe/Oslo",utcOffset:60,offsetStr:"+01:00",countries:["NO","SJ"]},{name:"Asia/Kathmandu",utcOffset:345,offsetStr:"+05:45",countries:["NP"]},{name:"Pacific/Nauru",utcOffset:720,offsetStr:"+12:00",countries:["NR"]},{name:"Pacific/Niue",utcOffset:-660,offsetStr:"-11:00",countries:["NU"]},{name:"Pacific/Auckland",utcOffset:780,offsetStr:"+13:00",countries:["NZ","AQ"]},{name:"Pacific/Chatham",utcOffset:825,offsetStr:"+13:45",countries:["NZ"]},{name:"America/Panama",utcOffset:-300,offsetStr:"-05:00",countries:["PA"]},{name:"America/Lima",utcOffset:-300,offsetStr:"-05:00",countries:["PE"]},{name:"Pacific/Tahiti",utcOffset:-600,offsetStr:"-10:00",countries:["PF"]},{name:"Pacific/Marquesas",utcOffset:-570,offsetStr:"-09:30",countries:["PF"]},{name:"Pacific/Gambier",utcOffset:-540,offsetStr:"-09:00",countries:["PF"]},{name:"Pacific/Port_Moresby",utcOffset:600,offsetStr:"+10:00",countries:["PG"]},{name:"Pacific/Bougainville",utcOffset:660,offsetStr:"+11:00",countries:["PG"]},{name:"Asia/Manila",utcOffset:480,offsetStr:"+08:00",countries:["PH"]},{name:"Asia/Karachi",utcOffset:300,offsetStr:"+05:00",countries:["PK"]},{name:"Europe/Warsaw",utcOffset:60,offsetStr:"+01:00",countries:["PL"]},{name:"America/Miquelon",utcOffset:-180,offsetStr:"-03:00",countries:["PM"]},{name:"Pacific/Pitcairn",utcOffset:-480,offsetStr:"-08:00",countries:["PN"]},{name:"America/Puerto_Rico",utcOffset:-240,offsetStr:"-04:00",countries:["PR"]},{name:"Asia/Gaza",utcOffset:120,offsetStr:"+02:00",countries:["PS"]},{name:"Asia/Hebron",utcOffset:120,offsetStr:"+02:00",countries:["PS"]},{name:"Europe/Lisbon",utcOffset:0,offsetStr:"+00:00",countries:["PT"]},{name:"Atlantic/Madeira",utcOffset:0,offsetStr:"+00:00",countries:["PT"]},{name:"Atlantic/Azores",utcOffset:-60,offsetStr:"-01:00",countries:["PT"]},{name:"Pacific/Palau",utcOffset:540,offsetStr:"+09:00",countries:["PW"]},{name:"America/Asuncion",utcOffset:-180,offsetStr:"-03:00",countries:["PY"]},{name:"Asia/Qatar",utcOffset:180,offsetStr:"+03:00",countries:["QA","BH"]},{name:"Indian/Reunion",utcOffset:240,offsetStr:"+04:00",countries:["RE","TF"]},{name:"Europe/Bucharest",utcOffset:120,offsetStr:"+02:00",countries:["RO"]},{name:"Europe/Belgrade",utcOffset:60,offsetStr:"+01:00",countries:["RS","BA","HR","ME","MK","SI"]},{name:"Europe/Kaliningrad",utcOffset:120,offsetStr:"+02:00",countries:["RU"]},{name:"Europe/Moscow",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},{name:"Europe/Simferopol",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},{name:"Europe/Volgograd",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},{name:"Europe/Samara",utcOffset:240,offsetStr:"+04:00",countries:["RU"]},{name:"Asia/Yekaterinburg",utcOffset:300,offsetStr:"+05:00",countries:["RU"]},{name:"Asia/Omsk",utcOffset:360,offsetStr:"+06:00",countries:["RU"]},{name:"Asia/Novosibirsk",utcOffset:360,offsetStr:"+06:00",countries:["RU"]},{name:"Asia/Novokuznetsk",utcOffset:420,offsetStr:"+07:00",countries:["RU"]},{name:"Asia/Krasnoyarsk",utcOffset:420,offsetStr:"+07:00",countries:["RU"]},{name:"Asia/Irkutsk",utcOffset:480,offsetStr:"+08:00",countries:["RU"]},{name:"Asia/Chita",utcOffset:480,offsetStr:"+08:00",countries:["RU"]},{name:"Asia/Yakutsk",utcOffset:540,offsetStr:"+09:00",countries:["RU"]},{name:"Asia/Khandyga",utcOffset:540,offsetStr:"+09:00",countries:["RU"]},{name:"Asia/Vladivostok",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Sakhalin",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Ust-Nera",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Magadan",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},{name:"Asia/Srednekolymsk",utcOffset:660,offsetStr:"+11:00",countries:["RU"]},{name:"Asia/Kamchatka",utcOffset:720,offsetStr:"+12:00",countries:["RU"]},{name:"Asia/Anadyr",utcOffset:720,offsetStr:"+12:00",countries:["RU"]},{name:"Asia/Riyadh",utcOffset:180,offsetStr:"+03:00",countries:["SA","KW","YE"]},{name:"Pacific/Guadalcanal",utcOffset:660,offsetStr:"+11:00",countries:["SB"]},{name:"Indian/Mahe",utcOffset:240,offsetStr:"+04:00",countries:["SC"]},{name:"Africa/Khartoum",utcOffset:180,offsetStr:"+03:00",countries:["SD","SS"]},{name:"Europe/Stockholm",utcOffset:60,offsetStr:"+01:00",countries:["SE"]},{name:"Asia/Singapore",utcOffset:480,offsetStr:"+08:00",countries:["SG"]},{name:"America/Paramaribo",utcOffset:-180,offsetStr:"-03:00",countries:["SR"]},{name:"America/El_Salvador",utcOffset:-360,offsetStr:"-06:00",countries:["SV"]},{name:"Asia/Damascus",utcOffset:120,offsetStr:"+02:00",countries:["SY"]},{name:"America/Grand_Turk",utcOffset:-240,offsetStr:"-04:00",countries:["TC"]},{name:"Africa/Ndjamena",utcOffset:60,offsetStr:"+01:00",countries:["TD"]},{name:"Indian/Kerguelen",utcOffset:300,offsetStr:"+05:00",countries:["TF"]},{name:"Asia/Bangkok",utcOffset:420,offsetStr:"+07:00",countries:["TH","KH","LA","VN"]},{name:"Asia/Dushanbe",utcOffset:300,offsetStr:"+05:00",countries:["TJ"]},{name:"Pacific/Fakaofo",utcOffset:780,offsetStr:"+13:00",countries:["TK"]},{name:"Asia/Dili",utcOffset:540,offsetStr:"+09:00",countries:["TL"]},{name:"Asia/Ashgabat",utcOffset:300,offsetStr:"+05:00",countries:["TM"]},{name:"Africa/Tunis",utcOffset:60,offsetStr:"+01:00",countries:["TN"]},{name:"Pacific/Tongatapu",utcOffset:780,offsetStr:"+13:00",countries:["TO"]},{name:"Europe/Istanbul",utcOffset:120,offsetStr:"+02:00",countries:["TR"]},{name:"America/Port_of_Spain",utcOffset:-240,offsetStr:"-04:00",countries:["TT","AG","AI","BL","DM","GD","GP","KN","LC","MF","MS","VC","VG","VI"]},{name:"Pacific/Funafuti",utcOffset:720,offsetStr:"+12:00",countries:["TV"]},{name:"Asia/Taipei",utcOffset:480,offsetStr:"+08:00",countries:["TW"]},{name:"Europe/Kiev",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},{name:"Europe/Uzhgorod",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},{name:"Europe/Zaporozhye",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},{name:"Pacific/Wake",utcOffset:720,offsetStr:"+12:00",countries:["UM"]},{name:"America/New_York",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Detroit",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Kentucky/Louisville",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Kentucky/Monticello",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Indianapolis",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Vincennes",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Winamac",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Marengo",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Petersburg",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Indiana/Vevay",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},{name:"America/Chicago",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Indiana/Tell_City",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Indiana/Knox",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Menominee",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/North_Dakota/Center",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/North_Dakota/New_Salem",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/North_Dakota/Beulah",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},{name:"America/Denver",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},{name:"America/Boise",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},{name:"America/Phoenix",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},{name:"America/Los_Angeles",utcOffset:-480,offsetStr:"-08:00",countries:["US"]},{name:"America/Metlakatla",utcOffset:-480,offsetStr:"-08:00",countries:["US"]},{name:"America/Anchorage",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Juneau",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Sitka",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Yakutat",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Nome",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},{name:"America/Adak",utcOffset:-600,offsetStr:"-10:00",countries:["US"]},{name:"Pacific/Honolulu",utcOffset:-600,offsetStr:"-10:00",countries:["US","UM"]},{name:"America/Montevideo",utcOffset:-180,offsetStr:"-03:00",countries:["UY"]},{name:"Asia/Samarkand",utcOffset:300,offsetStr:"+05:00",countries:["UZ"]},{name:"Asia/Tashkent",utcOffset:300,offsetStr:"+05:00",countries:["UZ"]},{name:"America/Caracas",utcOffset:-270,offsetStr:"-04:30",countries:["VE"]},{name:"Asia/Ho_Chi_Minh",utcOffset:420,offsetStr:"+07:00",countries:["VN"]},{name:"Pacific/Efate",utcOffset:660,offsetStr:"+11:00",countries:["VU"]},{name:"Pacific/Wallis",utcOffset:720,offsetStr:"+12:00",countries:["WF"]},{name:"Pacific/Apia",utcOffset:840,offsetStr:"+14:00",countries:["WS"]},{name:"Africa/Johannesburg",utcOffset:120,offsetStr:"+02:00",countries:["ZA","LS","SZ"]}]}],link:function(e,n,t,a){e.updateModel=function(e){a.$setViewValue(e)}},templateUrl:"app/core/directives/ms-timezone/ms-timezone.html"}})}(),function(){"use strict";angular.module("app.core").controller("MsWidgetEngineCounterController",function(){var s=this;s.filter=[],s.filtered=!1,s.fontSize=20,s.label="",s.getCount=function(a){var i=0;if(a){s.fontSize=a.attrs[2]&&a.attrs[2].value?parseInt(a.attrs[2].value)-parseInt(a.attrs[2].value)%2:20;var e=a.attrs.find(function(e){return"attrChannel"===e.name});e||a.attrs.push({name:"attrChannel",value:"voice"}),a.attrs.forEach(function(e,n){if("voice"!==a.attrs[3].value?"talking"===a.attrs[0].value?s.label="Opened":"answered"===a.attrs[0].value?s.label="Managed":s.label=a.attrs[0].value:s.label=a.attrs[0].value,!_.isEmpty(e.value))if(e.name.toLowerCase().includes("voice")){a.attrs[n].value&&a.attrs[n].value.length?(s.filtered=!0,s.filter=_.intersection(a.voiceQueuesSelected,a.attrs[n].value)):(s.filtered=!1,s.filter=a.voiceQueuesSelected);for(var t=0;tl.properties.length){var n=l.multiBarChart.series.length-l.properties.length;l.multiBarChart.series.splice(0,n),l.multiBarChart.data.splice(0,n)}for(var t=0;tl.filter.length){var i=l.multiBarChart.labels.length-l.filter.length;l.multiBarChart.labels.splice(0,i),l.multiBarChart.data[t].splice(0,i)}switch(e.attrs[4].value){case"voice":for(var s=0,o=0;so.properties.length){var n=o.pieChart.labels.length-o.properties.length;o.pieChart.labels.splice(0,n),o.pieChart.data.splice(0,n)}for(var t=0,a=0;te.length?e.replace(/./g,"*"):e.substring(0,e.length-a).padEnd(e.length,"*")}function o(e){return _.startsWith(e,"<")&&_.endsWith(e,">")&&(e=e.substring(1,e.length-1)),/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)}function r(e){if(_.startsWith(e,"<")&&_.endsWith(e,">")){var n=!0;e=e.substring(1,e.length-1)}var t=e.split("@")[0],a=e.split("@")[1],i="";return n&&(i+="<"),i+=s(t,"email"),i+="@",i+=s(a,"email"),n&&(i+=">"),i}return{mask:function n(e){t=e,e=t.replace(/\s\s+/g," ").trim();var t;{if(o(e))return r(e);if(/^[+]?[0-9|.|\-|\s]*$/.test(e))return s(e,"number");var a=[],i=e.split(" ");return 1===i.length?s(e):(i.forEach(function(e){a.push(n(e))}),a.join(" "))}}}}e.$inject=["settingsManager"],angular.module("app.core").factory("privacyManager",e)}(),function(){"use strict";function e(n,i){return{setPlaceholder:function(a){var e;return n(function(n){try{if(_.isEmpty(a.resources))e=i.instant("DASHBOARDS.NONE");else if(_.isEmpty(a.param))e=a.placeholder?i.instant(a.placeholder):i.instant("DASHBOARDS.CHOOSE");else if(a.param.length===a.resources.length)e=i.instant("DASHBOARDS.ALL");else{var t=a.ngValue||"id";e=_(a.resources).filter(function(e){return _.includes(a.param,e[t])}).map("name").value().join(", ")}n(e)}catch(e){n(null)}})}}}e.$inject=["$q","$translate"],angular.module("app.core").factory("quickFilterManager",e)}(),function(){"use strict";function e(t,e){var n={checkEveryChannelPauseStatus:function(n){e.getChannels().forEach(function(e){n[e+"Pause"]&&"idle"===n[e+"Status"]&&(n[e+"Status"]="pause")})},getAgentStatus:function(e){var n="unknown";n=o(e)?"pause":o(e,!0)?"*pause":function(e){if("idle"!==e.voiceStatus&&e.voicePause)return!(e.voiceStatus="pause");return _.every([e.chatStatus,e.faxStatus,e.mailStatus,e.openchannelStatus,e.smsStatus,e.voiceStatus,e.whatsappStatus],r)}(e)?"idle":"busy";return n},getAgentStatusDisplayValue:function(e){var n=e.globalStatus;"pause"===e.globalStatus?n=e.pauseType||t.instant("VOICE.DEFAULT_PAUSE"):"*pause"===e.globalStatus&&(n="*"+(e.pauseType||t.instant("VOICE.DEFAULT_PAUSE")));return n},getUserUpdateEventOrigin:function(e){var n="call";e.lastLoginAt?n="login":!1===e.online?n="logout":e.pauseType&&(n="pause");return n},sortAgentsByStatus:function(e,t){return e.sort(function(e,n){return e.globalStatus===n.globalStatus?"pause"===e.globalStatus?"DESC"===t?(e.pauseType||"")<(n.pauseType||"")||e.fullname.toLowerCase()>n.fullname.toLowerCase()?1:-1:(e.pauseType||"")<(n.pauseType||"")||e.fullname.toLowerCase()>n.fullname.toLowerCase()?-1:1:"DESC"===t?e.fullname.toLowerCase()]+>/gm,"")}}).filter("nospace",function(){return function(e){return e?e.replace(/ /g,""):""}}).filter("humanizeDoc",function(){return function(e){if(e)return"directive"===e.type?e.name.replace(/([A-Z])/g,function(e){return"-"+e.toLowerCase()}):e.label||e.name}})}(),function(){"use strict";angular.module("app.core").filter("capitalize",function(){return function(e){return e?_.capitalize(e):""}})}(),function(){"use strict";angular.module("app.core").filter("filterByIds",function(){return function(e,n){if(0===e.length||!n)return e;if(0===n.length)return[];for(var t=[],a=0;an.openedAt?1:-1:1}),n}})}(),function(){"use strict";angular.module("app.core").filter("secToTime",function(){return function(e){e&&(e=e.toString().replace(",",""));var n=Math.floor(e/86400),t=e%86400,a=new Date(1e3*t).toISOString().substring(11,19);return a.replace(/^(\d+)/,function(e){return(""+(Number(e)+24*n)).padStart(2,"0")})}})}(),function(){"use strict";angular.module("app.core").filter("snakecase",function(){return function(e){return e?_.snakeCase(e):""}})}(),function(){"use strict";angular.module("app.core").filter("startcase",function(){return function(e){return e?_.startCase(e):""}})}(),function(){"use strict";angular.module("app.core").filter("filterByTags",function(){return function(e,t){if(0===e.length||0===t.length)return e;var a=[];return e.forEach(function(e){var n=t.every(function(n){var t=!1;return e.tags.forEach(function(e){e.name!==n.name||(t=!0)}),t});n&&a.push(e)}),a}}).filter("filterSingleByTags",function(){return function(e,n){if(0!==e.length&&0!==n.length){if(e.length')).html(i),s.append(o)})},rgba:l};function l(e,n){var t=n||!1;return 4===e.length&&255===e[0]&&255===e[1]&&255===e[2]&&e.splice(3,4),t&&(e=function(e,n){var t={white:{1:"1",2:"0.7",3:"0.3",4:"0.12"},black:{1:"0.87",2:"0.54",3:"0.26",4:"0.12"}};255===e[0]&&255===e[1]&&255===e[2]?e[3]=t.white[n]:0===e[0]&&0===e[1]&&0===e[2]&&(e[3]=t.black[n]);return e}(e,t)),3===e.length?"rgb("+e.join(",")+")":4===e.length?"rgba("+e.join(",")+")":void a.error("Invalid number of arguments supplied in the color array: "+e.length+"\nThe array must have 3 or 4 colors.")}function d(e){return e.charAt(0).toUpperCase()+e.slice(1)}}e.$inject=["$cookies","$log","motionTheming"],angular.module("app.core").factory("motionGenerator",e)}(),function(){"use strict";angular.module("app.core").constant("motionPalettes",[{name:"motion-blue",options:{50:"#ebf1fa",100:"#c2d4ef",200:"#9ab8e5",300:"#78a0dc",400:"#5688d3",500:"#3470ca",600:"#2e62b1",700:"#275498",800:"#21467e",900:"#1a3865",A100:"#c2d4ef",A200:"#9ab8e5",A400:"#5688d3",A700:"#275498",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100",contrastStrongLightColors:"300 400"}},{name:"motion-paleblue",options:{50:"#ececee",100:"#c5c6cb",200:"#9ea1a9",300:"#7d818c",400:"#5c616f",500:"#3c4252",600:"#353a48",700:"#2d323e",800:"#262933",900:"#1e2129",A100:"#c5c6cb",A200:"#9ea1a9",A400:"#5c616f",A700:"#2d323e",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100",contrastStrongLightColors:"300 400"}}])}(),function(){"use strict";angular.module("app.core").constant("motionThemes",{default:{primary:{name:"motion-paleblue",hues:{default:"700","hue-1":"500","hue-2":"600","hue-3":"400"}},accent:{name:"light-blue",hues:{default:"600","hue-1":"400","hue-2":"700","hue-3":"A100"}},warn:{name:"red"},background:{name:"grey",hues:{default:"A100","hue-1":"A100","hue-2":"100","hue-3":"300"}}},pinkTheme:{primary:{name:"blue-grey",hues:{default:"800","hue-1":"600","hue-2":"400","hue-3":"A100"}},accent:{name:"pink",hues:{default:"400","hue-1":"300","hue-2":"600","hue-3":"A100"}},warn:{name:"blue"},background:{name:"grey",hues:{default:"A100","hue-1":"A100","hue-2":"100","hue-3":"300"}}},tealTheme:{primary:{name:"motion-blue",hues:{default:"900","hue-1":"600","hue-2":"500","hue-3":"A100"}},accent:{name:"teal",hues:{default:"500","hue-1":"400","hue-2":"600","hue-3":"A100"}},warn:{name:"deep-orange"},background:{name:"grey",hues:{default:"A100","hue-1":"A100","hue-2":"100","hue-3":"300"}}}})}(),function(){"use strict";function e(t,e,n){var a;angular.injector(["ngCookies"]).invoke(["$cookies",function(e){a=e}]);var i=a.getObject("motion.customTheme");i&&(n.custom=i),t.alwaysWatchTheme(!0),angular.forEach(e,function(e){t.definePalette(e.name,e.options)}),angular.forEach(n,function(e,n){t.theme(n).primaryPalette(e.primary.name,e.primary.hues).accentPalette(e.accent.name,e.accent.hues).warnPalette(e.warn.name,e.warn.hues).backgroundPalette(e.background.name,e.background.hues)})}e.$inject=["$mdThemingProvider","motionPalettes","motionThemes"],angular.module("app.core").config(e)}(),function(){"use strict";function e(n,t,e){var a={getRegisteredPalettes:function(){return e.PALETTES},getRegisteredThemes:function(){return e.THEMES},setActiveTheme:function(e){if(angular.isUndefined(a.themes.list[e]))return angular.isUndefined(a.themes.list.default)?void t.error('You must have at least one theme named "default"'):(t.warn('The theme "'+e+'" does not exist! Falling back to the "default" theme.'),a.themes.active.name="default",a.themes.active.theme=a.themes.list.default,void n.put("motion.selectedTheme",a.themes.active.name));a.themes.active.name=e,a.themes.active.theme=a.themes.list[e],n.put("motion.selectedTheme",e)},setThemesList:function(e){a.themes.list=e},themes:{list:{},active:{name:"",theme:{}}}};return a}e.$inject=["$cookies","$log","$mdTheming"],angular.module("app.core").service("motionTheming",e)}(),function(){"use strict";function e(n,s,o,r){this.search=function(n){for(var e=[],t=r.getFlatNavigation(),a=o.defer(),i=0;i"+(e.name||"extractedReport")+" will be deleted.").ariaLabel("delete extractedReport").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.success=E,f.getExtractedReports=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.analyticExtractedReport.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="ExtractedReports",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditExtractedReport=function(e,n){i.show({controller:"CreateOrEditExtractedReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/extractedReports/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{extractedReport:n,extractedReports:f.extractedReports.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteExtractedReport=y,f.exportSelectedExtractedReports=function(){var e=angular.copy(f.selectedExtractedReports);return f.selectedExtractedReports=[],e},f.deleteSelectedExtractedReports=function(e){var n=i.confirm().title("Are you sure want to delete the selected extractedReports?").htmlContent(""+f.selectedExtractedReports.length+" selected will be deleted.").ariaLabel("delete ExtractedReports").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedExtractedReports.forEach(function(e){y(e)}),f.selectedExtractedReports=[]})},f.deselectExtractedReports=function(){f.selectedExtractedReports=[]},f.selectAllExtractedReports=function(){f.selectedExtractedReports=f.extractedReports.rows};var b=!0,A=1;function E(e){f.extractedReports=e||{count:0,rows:[]}}function y(e){m.analyticExtractedReport.delete({id:e.id}).$promise.then(function(){_.remove(f.extractedReports.rows,{id:e.id}),f.extractedReports.count-=1,f.extractedReports.rows.length||f.getExtractedReports(),p.success({title:_.startCase("ExtractedReport")+" deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){f.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEanalyticExtractedReport"}];for(var n=0;n"+(e.name||"metric")+" will be deleted.").ariaLabel("delete metric").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.success=E,f.getMetrics=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.analyticMetric.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="Metrics",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditMetric=function(e,n){i.show({controller:"CreateOrEditMetricDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/metrics/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{metric:n,metrics:f.metrics.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteMetric=y,f.exportSelectedMetrics=function(){var e=angular.copy(f.selectedMetrics);return f.selectedMetrics=[],e},f.deleteSelectedMetrics=function(e){var n=i.confirm().title("Are you sure want to delete the selected metrics?").htmlContent(""+f.selectedMetrics.length+" selected will be deleted.").ariaLabel("delete Metrics").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedMetrics.forEach(function(e){y(e)}),f.selectedMetrics=[]})},f.deselectMetrics=function(){f.selectedMetrics=[]},f.selectAllMetrics=function(){f.selectedMetrics=f.metrics.rows};var b=!0,A=1;function E(e){f.metrics=e||{count:0,rows:[]}}function y(e){m.analyticMetric.delete({id:e.id}).$promise.then(function(){_.remove(f.metrics.rows,{id:e.id}),f.metrics.count-=1,f.metrics.rows.length||f.getMetrics(),p.success({title:_.startCase("Metric")+" deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){f.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEanalyticMetric"}];for(var n=0;n"+e.field+" will be deleted.").ariaLabel("delete field").targetEvent(n).ok("OK").cancel("CANCEL");a.show(t).then(function(){p(e)},function(){console.log("CANCEL")})},c.success=u,c.getReportFields=function(){c.promise=o.analyticFieldReport.get(c.query,u).$promise},c.createOrEditReportField=function(e,n){a.show({controller:"CreateOrEditReportFieldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/edit/field/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{report:c.report,reportField:n,reportFields:c.reportFields.rows,metrics:c.metrics,columns:c.columns,setting:null,crudPermissions:c.crudPermissions}})},c.deleteReportField=p,c.deleteSelectedReportFields=function(e){var n=a.confirm().title("Are you sure want to delete the selected fields?").htmlContent(""+c.selectedReportFields.length+" selected will be deleted.").ariaLabel("delete fields").targetEvent(e).ok("OK").cancel("CANCEL");a.show(n).then(function(){c.selectedReportFields.forEach(function(e){p(e)}),c.selectedReportFields=[]})},c.getMetricName=function(e){var n=_.find(c.metrics,{id:e});return n?n.name:d.instant("ANALYTICS.NO_METRIC_FOUND")},c.getMetricValue=function(e){var n=_.find(c.metrics,{id:e});return n?n.metric:d.instant("ANALYTICS.NO_METRIC_FOUND")};var m=!0;function u(e){c.reportFields=e||{count:0,rows:[]}}function p(e){o.analyticFieldReport.delete({id:e.id}).$promise.then(function(){c.selectedReportFields=[],_.remove(c.reportFields.rows,{id:e.id}),c.reportFields.count-=1,c.reportFields.rows.length||c.getReportFields(),s.success({title:"Field deleted!",msg:e.field?e.field+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETEFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}n.$watch("vm_rf.query.filter",function(e,n){m?t(function(){m=!1}):c.getReportFields()})}e.$inject=["$cookies","$scope","$timeout","$mdDialog","$document","toasty","api","describeTable","sqlUtil","$translate"],angular.module("app.analytics").controller("ReportFieldsController",e)}(),function(){"use strict";angular.module("app.analytics").factory("sqlUtil",function(){return{getFunctions:[{value:"SUM",option:function(e){return"SUM ("+e+")"}},{value:"COUNT",option:function(e){return"COUNT ("+e+")"}},{value:"COUNT DISTINCT",option:function(e){return"COUNT (DISTINCT "+e+")"}},{value:"MAX",option:function(e){return"MAX ("+e+")"}},{value:"MIN",option:function(e){return"MIN ("+e+")"}},{value:"AVG",option:function(e){return"AVG ("+e+")"}},{value:"GROUP_CONCAT",option:function(e){return"GROUP_CONCAT ("+e+")"}},{value:"GROUP_CONCAT ASC",option:function(e){return"GROUP_CONCAT ("+e+" ORDER BY "+e+" ASC)"}},{value:"GROUP_CONCAT DESC",option:function(e){return"GROUP_CONCAT ("+e+" ORDER BY "+e+" DESC)"}}],getFormats:[{value:"SEC_TO_TIME",option:function(e){return"SEC_TO_TIME ("+e+")"}},{value:"DATE",option:function(e){return"DATE ("+e+")"}},{value:"HOUR",option:function(e){return"HOUR ("+e+")"}},{value:"ROUND",option:function(e){return"ROUND ("+e+")"}},{value:"UNIX_TIMESTAMP",option:function(e){return"UNIX_TIMESTAMP ("+e+")"}}],getGroupBy:[{value:!1,option:function(){return"No"}},{value:!0,option:function(e){return"GROUP BY "+e}}],getOrderBy:[{value:"ASC",option:function(e){return"ORDER BY "+e+" ASC"}},{value:"DESC",option:function(e){return"ORDER BY "+e+" DESC"}}],getConditions:["=","!=","<","<=",">",">=","LIKE","NOT LIKE","IS NULL","IS NOT NULL","IS EMPTY","IS NOT EMPTY"]}})}(),function(){"use strict";function e(e,n,t,a,i,s){var o=this;function r(e){return _.isArray(e)}o.report=a||{},o.userProfileSection=s&&1==s.count?s.rows[0]:null,o.crudPermissions=i.parseCrudPermissions(o.userProfileSection?o.userProfileSection.crudPermissions:null),o.selectedTab=e.params.tab||0,o.gotoReports=function(){e.go("app.analytics.reports",{},{reload:"app.analytics.reports"})},o.saveReport=function(){o.report.conditions=angular.toJson(o.report.condition),t.analyticCustomReport.update({id:o.report.id},_.omit(o.report,"joins")).$promise.then(function(){n.success({title:"Report updated!",msg:o.report.name?o.report.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETreport",msg:e.data?JSON.stringify(e.data):e.toString()})})},o.previewReport=function(){o.columns=[],o.rows=[],o.error=!1,t.analyticFieldReport.get({fields:"field,alias",nolimit:!0,CustomReportId:o.report.id}).$promise.then(function(e){return o.columns=e?e.rows:[],t.analyticCustomReport.preview({id:o.report.id}).$promise}).then(function(e){o.rows=e}).catch(function(e){console.log(e),o.error={title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:analyticFieldReport",msg:e.data?e.data.message:e.toString(),sql:e.data&&e.data.parent?e.data.parent.sql:"NO QUERY"},n.error(o.error)})},o.queryReport=function(){return o.queryResult="Loading...",t.analyticCustomReport.query({id:o.report.id}).$promise.then(function(e){o.queryResult=e.sql}).catch(function(e){o.queryResult="",console.log(e),o.error={title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:analyticFieldReport",msg:e.data?e.data.message:e.toString(),sql:e.data&&e.data.parent?e.data.parent.sql:"NO QUERY"},n.error(o.error)})},o.mapArray=function(e,n){if(r(e))return _.map(e,n).join(",");return""},o.isArray=r,o.valueReplacer=function(e,n){moment(n,"YYYY-MM-DDTHH:mm:ssZ",!0).isValid()&&(n=moment(n,"").format("YYYY-MM-DD HH:mm:ss"));return n}}e.$inject=["$state","toasty","api","report","Auth","userProfileSection"],angular.module("app.analytics").controller("ReportController",e)}(),function(){"use strict";function e(e,n,t,a,i,s){var o=this;o.errors=[],o.report=angular.copy(a),o.valueReplacer=function(e,n){moment(n,"YYYY-MM-DDTHH:mm:ssZ",!0).isValid()&&(n=moment(n,"").format("YYYY-MM-DD HH:mm:ss"));return n},o.closeDialog=function(){n.hide()},function(){o.columns=[],o.rows=[],o.error=!1;var e={fields:"field,alias",nolimit:!0};e["analyticCustomReport"===s?"CustomReportId":"DefaultReportId"]=o.report.id,o.promise=i.analyticFieldReport.get(e).$promise.then(function(e){return o.columns=e?e.rows:[],i[s].preview({id:o.report.id}).$promise}).then(function(e){o.rows=e}).catch(function(e){console.log(e),o.error={title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:analyticFieldReport",msg:e.data?e.data.message:e.toString(),sql:e.data&&e.data.parent?e.data.parent.sql:"NO QUERY"},t.error(o.error)})}()}e.$inject=["$location","$mdDialog","toasty","report","api","apiName"],angular.module("app.analytics").controller("PreviewReportDialogController",e)}(),function(){"use strict";function e(e,t,a,i,s,o,n,r,l,d,c,m,u){var p=this;p.currentUser=u.getCurrentUser(),p.reports={count:0,rows:[]},p.userProfile=r,p.userProfileSection=l&&1==l.count?l.rows[0]:null,p.crudPermissions=u.parseCrudPermissions(p.userProfileSection?p.userProfileSection.crudPermissions:null),p.selectedReports=[],p.query={fields:"createdAt,updatedAt,id,name,description,table,parent,conditions,joins",limit:10,page:1,sort:"-updatedAt"},p.apiName=null,p.currentPath="",p.customTree=!0,p.editstate=function(e,n){s.go("app.analytics.reports.edit",{id:e.id,crudPermissions:p.crudPermissions})},p.copydialog=function(e,n){i.show({controller:"CopyReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/copy/dialog.html",parent:angular.element(a.body),targetEvent:n,clickOutsideToClose:!0,locals:{report:e,apiName:p.apiName,treeCustomData:p.treeCustomInstance.jstree(!0).get_json("#")}}).finally(function(){})},p.previewdialog=function(e,n){i.show({controller:"PreviewReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/preview/dialog.html",parent:angular.element(a.body),targetEvent:n,clickOutsideToClose:!0,locals:{report:e,apiName:p.apiName}})},p.rundialog=function(e,n){i.show({controller:"RunReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/run/dialog.html",parent:angular.element(a.body),targetEvent:n,clickOutsideToClose:!0,locals:{report:e,apiName:p.apiName,currentPath:p.currentPath}})},p.downloadfile=function(a,e){var i;d.analyticMetric.get({fields:"id,name,metric,table",nolimit:!0}).$promise.then(function(e){i=_.keyBy(e.rows,"id");var n={fields:"field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0};return n["analyticCustomReport"===p.apiName?"CustomReportId":"DefaultReportId"]=a.id,d.analyticFieldReport.get(n).$promise}).then(function(e){for(var n=0;n"+e.name+" will be deleted.").ariaLabel("delete report").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){b(e)},function(){console.log("CANCEL")})},p.success=h,p.getReports=f,p.createOrEditReport=function(e,n){i.show({controller:"CreateOrEditReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/create/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,locals:{report:n,reports:p.reports.rows,apiName:p.apiName,currentNode:p.currentNode,setting:null,crudPermissions:p.crudPermissions}})},p.importReport=function(e,n,t){if("application/json"===e.file.type){var a=new FileReader;a.onload=function(e){console.log(e.target.result);try{var t=atob(e.target.result.split(",")[1]);t=angular.fromJson(t),d.analyticCustomReport.save({name:t.name,description:t.description,table:t.table,conditions:t.conditions,joins:t.joins,parent:p.currentNode.id}).$promise.then(function(n){p.reports.rows.unshift(n),m.success({title:"Report saved!",msg:n.name?n.name+" has been saved!":""});var e=_.map(t.fields,function(e){return _.extend({},e,{CustomReportId:n.id})});return d.analyticFieldReport.bulkCreate(e).$promise}).then(function(e){m.success({title:"Fields saved!",msg:"Fields has been saved!"})}).catch(function(e){m.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}catch(e){console.error(e),m.error({title:"Decode File Error",msg:e.toString()})}},a.readAsDataURL(e.file)}else m.error({title:"Format Error",msg:"Please use only json files"})},p.deleteReport=b,p.exportSelectedReports=function(){var e=angular.copy(p.selectedReports);return p.selectedReports=[],e},p.deleteSelectedReports=function(e){var n=i.confirm().title("Are you sure want to delete the selected reports?").htmlContent(""+p.selectedReports.length+" selected will be deleted.").ariaLabel("delete Reports").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){p.selectedReports.forEach(function(e){b(e)}),p.selectedReports=[]})},p.deselectReports=function(){p.selectedReports=[]},p.selectAllReports=function(){p.selectedReports=p.reports.rows},p.treeDefaultData=c.rows[0]?angular.fromJson(c.rows[0].tree):[],p.treeCustomData=c.rows[1]?angular.fromJson(c.rows[1].tree):[],p.treeDefaultConfig=S(!1),p.treeCustomConfig=S(!0),p.treeDefaultEvents=T(!1),p.treeCustomEvents=T(!0);var g=!0,v=1;function h(e){p.reports=e||{count:0,rows:[]}}function f(){if(p.query.offset=(p.query.page-1)*p.query.limit,p.apiName)if("admin"===p.currentUser.role||p.userProfileSection.autoAssociation)p.promise=d[p.apiName].get(p.query,h).$promise;else{var a=[];p.promise=d[p.apiName].get(p.query).$promise.then(function(e){return 0<(a=e&&e.rows?e.rows:[]).length?d.userProfileResource.get({sectionId:p.userProfileSection.id,type:"analyticDefaultReport"===p.apiName?"DefaultReports":"CustomReports"}).$promise.then(function(e){var n=e&&e.rows?e.rows:[];if(0"+(t.text?t.text:"Node")+" and its subnode will be deleted.").ariaLabel("delete node").ok("OK").cancel("CANCEL");i.show(e).then(function(){var e,n=p.treeCustomInstance.jstree(!0).get_parent(t);n=p.treeCustomInstance.jstree(!0).get_node(n),p.treeCustomInstance.jstree(!0).delete_node(t),e=[t.id].concat(t.children_d||[]),d.analyticCustomReport.get({parent:e.join(","),fields:"id,name"}).$promise.then(function(e){e&&e.rows&&e.rows.forEach(function(e){b(e)})}).catch(function(e){m.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETEreportsByParents",msg:e.data?JSON.stringify(e.data):e.toString()})}),p.treeCustomInstance.jstree(!0).select_node(n)})}}}),e}}}}function T(e){return e?{create_node:y,rename_node:y,move_node:y,delete_node:y,select_node:A}:{select_node:E}}e.$watch("vm.query.filter",function(e,n){g?t(function(){g=!1}):(n||(v=p.query.page),e!==n&&(p.query.page=1),e||(p.query.page=v),p.getReports())}),e.$watch("vm.search",function(e,n){p.treeDefaultInstance&&p.treeDefaultInstance.jstree(!0).search(e),p.treeCustomInstance&&p.treeCustomInstance.jstree(!0).search(e)})}e.$inject=["$scope","$timeout","$document","$mdDialog","$state","$window","$translate","userProfile","userProfileSection","api","treeReports","toasty","Auth"],angular.module("app.analytics").controller("ReportsController",e)}(),function(){"use strict";function e(e,t,a,n,i,s,o,r){var l=this;function d(){l.export={id:l.report.id,name:l.report.name,startDate:new Date(moment().startOf("day")),endDate:new Date(moment().endOf("day")),output:"xlsx",fullPath:r?r+"/"+l.report.name:l.report.name}}function c(){t.hide()}l.errors=[],l.report=angular.copy(n),l.export={},l.runReport=function(n){l.errors=[],l.exportDate=_.assign({},l.export,{startDate:moment(l.export.startDate).format("YYYY-MM-DD HH:mm:ss"),endDate:moment(l.export.endDate).format("YYYY-MM-DD HH:mm:ss")}),i[s].run(l.exportDate).$promise.then(function(e){"web"===l.export.output?t.show({controller:"WebReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/run/web/dialog.html",parent:angular.element(o.body),targetEvent:n,skipHide:!0,locals:{apiName:s,exportDate:l.exportDate,results:e},resolve:{columns:["apiResolver",function(e){var n={fields:"field,alias",nolimit:!0};return n["analyticCustomReport"===s?"CustomReportId":"DefaultReportId"]=l.report.id,e.resolve("analyticFieldReport@get",n)}]}}):(a.success({title:"Report properly run!",msg:l.report.name?l.report.name+" has been run!":""}),c())}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DESCRIBE",msg:e.data?JSON.stringify(e.data.message):e.toString()})})},l.closeDialog=c,(l.refreshDate=d)()}e.$inject=["$location","$mdDialog","toasty","report","api","apiName","$document","currentPath"],angular.module("app.analytics").controller("RunReportDialogController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o){var r=this;function l(e){r.results=e||{count:0,rows:[]}}r.errors=[],r.columns=a?a.rows:[],r.results=i||{rows:[],count:0},r.query={limit:10,page:1},r.closeDialog=function(){e.hide()},r.getResults=function(){o.offset=(r.query.page-1)*r.query.limit,o.limit=r.query.limit,r.promise=t[s].run(o,l).$promise},r.valueReplacer=function(e,n){moment(n,"YYYY-MM-DDTHH:mm:ssZ",!0).isValid()&&(n=moment(n,"").format("YYYY-MM-DD HH:mm:ss"));return n}}e.$inject=["$mdDialog","toasty","api","columns","results","apiName","exportDate"],angular.module("app.analytics").controller("WebReportDialogController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c,m,u,p){var g=this;function v(e){a.hide(e)}g.currentUser=c.getCurrentUser(),g.errors=[],g.setting=u,g.license=m,g.crudPermissions=p,g.hasModulePermissions={},g.passwordPattern=g.setting&&g.setting.securePassword?/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/:"",g.title="CALLYSQUARE.EDIT_ODBC",g.odbc=angular.copy(l),g.odbcs=r,g.newOdbc=!1,g.odbc||(g.odbc={},g.title="CALLYSQUARE.NEW_ODBC",g.newOdbc=!0),g.addNewOdbc=function(){g.errors=[],d.squareOdbc.save(g.odbc).$promise.then(function(e){g.odbcs.unshift(e.toJSON()),o.success({title:"Odbc properly created",msg:g.odbc.name?g.odbc.name+" has been created!":""}),v(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){g.errors=e.data.errors||[{message:e.toString(),type:"api.squareOdbc.save"}];for(var n=0;n"+(e.name||"odbc")+" will be deleted.").ariaLabel("delete odbc").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.success=E,f.getODBC=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.squareOdbc.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="ODBC",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditOdbc=function(e,n){i.show({controller:"CreateOrEditOdbcDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/odbcs/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{odbc:n,odbcs:f.odbcs.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteOdbc=y,f.exportSelectedODBC=function(){var e=angular.copy(f.selectedODBC);return f.selectedODBC=[],e},f.deleteSelectedODBC=function(e){var n=i.confirm().title("Are you sure want to delete the selected odbcs?").htmlContent(""+f.selectedODBC.length+" selected will be deleted.").ariaLabel("delete Odbcs").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedODBC.forEach(function(e){y(e)}),f.selectedODBC=[]})},f.deselectODBC=function(){f.selectedODBC=[]},f.selectAllODBC=function(){f.selectedODBC=f.odbcs.rows};var b=!0,A=1;function E(e){f.odbcs=e||{count:0,rows:[]}}function y(e){m.squareOdbc.delete({id:e.id}).$promise.then(function(){_.remove(f.odbcs.rows,{id:e.id}),f.odbcs.count-=1,f.odbcs.rows.length||f.getODBC(),p.success({title:_.startCase("Odbc")+" deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){f.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEsquareOdbc"}];for(var n=0;n"+e.name+" will be deleted.").ariaLabel("delete project").targetEvent(n).ok("OK").cancel("CANCEL");l.show(t).then(function(){f(e)},function(){console.log("CANCEL")})},p.success=h,p.getProjects=function(){p.query.offset=(p.query.page-1)*p.query.limit,u.hasRole("admin")?p.promise=o.squareProject.get(p.query,h).$promise:(p.query.id=p.userProfile.id,p.query.section="SquareProjects",p.promise=o.userProfile.getResources(p.query,h).$promise)},p.createOrEditProject=function(e,n){l.show({controller:"CreateOrEditSquareProjectDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/create/dialog.html",parent:angular.element(d.body),targetEvent:e,clickOutsideToClose:!0,locals:{project:n,projects:p.projects.rows,openFromEditor:null,setting:null,crudPermissions:p.crudPermissions}})},p.deleteProject=f,p.exportSelectedProjects=function(){var e=angular.copy(p.selectedProjects);return p.selectedProjects=[],e},p.deleteSelectedProjects=function(e){var n=l.confirm().title("Are you sure want to delete the selected projects?").htmlContent(""+p.selectedProjects.length+" selected will be deleted.").ariaLabel("delete Projects").targetEvent(e).ok("OK").cancel("CANCEL");l.show(n).then(function(){p.selectedProjects.forEach(function(e){f(e)}),p.selectedProjects=[]})},p.deselectProjects=function(){p.selectedProjects=[]},p.selectAllProjects=function(){p.selectedProjects=p.projects.rows};var g=!0,v=1;function h(e){p.projects=e||{count:0,rows:[]}}function f(e){o.squareProject.delete({id:e.id}).$promise.then(function(){_.remove(p.projects.rows,{id:e.id}),p.projects.count-=1,p.projects.rows.length||p.getProjects(),m.success({title:"Project deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.project.delete"}];for(var n=0;n"+(e.name||"squareRecording")+" will be deleted.").ariaLabel("delete squareRecording").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.success=E,f.getSquareRecordings=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.squareRecording.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="SquareRecordings",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditSquareRecording=function(e,n){i.show({controller:"CreateOrEditSquareRecordingDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/squareRecordings/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{squareRecording:n,squareRecordings:f.squareRecordings.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteSquareRecording=y,f.exportSelectedSquareRecordings=function(){var e=angular.copy(f.selectedSquareRecordings);return f.selectedSquareRecordings=[],e},f.deleteSelectedSquareRecordings=function(e){var n=i.confirm().title("Are you sure want to delete the selected squareRecordings?").htmlContent(""+f.selectedSquareRecordings.length+" selected will be deleted.").ariaLabel("delete SquareRecordings").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedSquareRecordings.forEach(function(e){y(e)}),f.selectedSquareRecordings=[]})},f.deselectSquareRecordings=function(){f.selectedSquareRecordings=[]},f.selectAllSquareRecordings=function(){f.selectedSquareRecordings=f.squareRecordings.rows};var b=!0,A=1;function E(e){f.squareRecordings=e||{count:0,rows:[]}}function y(e){m.squareRecording.delete({id:e.id}).$promise.then(function(){_.remove(f.squareRecordings.rows,{id:e.id}),f.squareRecordings.count-=1,f.squareRecordings.rows.length||f.getSquareRecordings(),p.success({title:_.startCase("SquareRecording")+" deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){f.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEsquareRecording"}];for(var n=0;n"+(e.name||"chatQueue")+" will be deleted.").ariaLabel("delete chatQueue").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.gotorealtimegoto=function(e,n){{if(!g.hasRole("admin"))return m.userProfileSection.get({userProfileId:g.getCurrentUser().userProfileId,sectionId:510}).$promise.then(function(e){var n=e&&e.rows?e.rows[0]:null;n&&n.enabled?t.go("app.chat.realtime.queues",{}):p.info({title:r.instant("STAFF.PERMISSIONS_UNAUTHORIZED_REDIRECT_TITLE"),msg:r.instant("STAFF.PERMISSIONS_UNAUTHORIZED_REDIRECT_MESSAGE")})}).catch(function(e){p.error({title:e.status?"API:"+e.status+" - "+e.statusText:"USERPROFILE:GET_SECTION",msg:e.status?JSON.stringify(e.data):e.toString()})});t.go("app.chat.realtime.queues",{})}},f.success=E,f.getChatQueues=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.chatQueue.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="ChatQueues",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditChatQueue=function(e,n){i.show({controller:"CreateOrEditChatQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatQueue:n,chatQueues:f.chatQueues.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteChatQueue=y,f.exportSelectedChatQueues=function(){var e=angular.copy(f.selectedChatQueues);return f.selectedChatQueues=[],e},f.deleteSelectedChatQueues=function(e){var n=i.confirm().title("Are you sure want to delete the selected chatQueues?").htmlContent(""+f.selectedChatQueues.length+" selected will be deleted.").ariaLabel("delete ChatQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedChatQueues.forEach(function(e){y(e)}),f.selectedChatQueues=[]})},f.deselectChatQueues=function(){f.selectedChatQueues=[]},f.selectAllChatQueues=function(){f.selectedChatQueues=f.chatQueues.rows};var b=!0,A=1;function E(e){f.chatQueues=e||{count:0,rows:[]}}function y(e){m.chatQueue.delete({id:e.id}).$promise.then(function(){_.remove(f.chatQueues.rows,{id:e.id}),f.chatQueues.count-=1,f.chatQueues.rows.length||f.getChatQueues(),p.success({title:_.startCase("ChatQueue")+" deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){f.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:DELETEchatQueue"}];for(var n=0;n":"",n}),c.startingSelectedItems=angular.copy(c.selectedItems),c.dualMultiselectOptions.selectedItems=c.selectedItems,c.dualMultiselectOptions.items=_.differenceBy(c.allowedItems,c.dualMultiselectOptions.selectedItems,"id"),t()}).catch(function(e){n(e)})})}c.currentUser=l.getCurrentUser(),c.chatQueue=n,c.crudPermissions=d,c.realtime=o,c.items=[],c.allowedItems=[],c.selectedItems=[],c.startingAllowedItems=[],c.startingSelectedItems=[],c.pendingChanges=!1,c.onInit=function(){return l.hasRole("admin")?m().catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_AGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})}):a(function(t,n){s.userProfileSection.get({userProfileId:c.currentUser.userProfileId,name:"Agents"}).$promise.then(function(e){var n=e&&e.rows?e.rows[0]:null;t(n)}).catch(function(e){n(e)})}).then(function(e){return c.section=e,m()}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_AGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})},c.saveAgents=function(){var e=_.differenceBy(c.startingSelectedItems,c.selectedItems,"id"),n=_.differenceBy(c.selectedItems,c.startingSelectedItems,"id");return(t=e,a(function(e,n){_.isEmpty(t)?e():s.chatQueue.removeAgents({id:c.chatQueue.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})})).then(function(){return t=n,a(function(e,n){_.isEmpty(t)?e():s.chatQueue.addAgents({id:c.chatQueue.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})});var t}).then(function(){c.pendingChanges=!1,c.startingAllowedItems=angular.copy(c.allowedItems),c.startingSelectedItems=angular.copy(c.selectedItems),i.success({title:"SUCCESS",msg:"Agents association has been updated!"})}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:LISTS_ASSOCIATION",msg:e.status?JSON.stringify(e.data):e.toString()})});var t},c.closeDialog=function(){e.hide()},c.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"fullname",line2:["name","internal"],line3:"",labelAll:r.instant("CHAT.ALL_AGENTS"),labelSelected:r.instant("CHAT.SELECTED_AGENTS"),transferCallback:function(e,n){var t=_.xorBy(c.startingSelectedItems,c.selectedItems,"id");c.pendingChanges=!_.isEmpty(t)}}}e.$inject=["$mdDialog","$q","toasty","api","chatQueue","chatQueues","realtime","$translate","Auth","crudPermissions"],angular.module("app.chat").controller("ChatQueueagentaddController",e)}(),function(){"use strict";function e(e,a,i,s,n,t,o,r){var l=this;function d(){return a(function(t,n){return a(function(n,t){return s.team.get({fields:"id,name",nolimit:!0}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})}).then(function(e){return l.items=e.rows?e.rows:[],o.hasRole("admin")?e:l.section?l.section.autoAssociation?e:a(function(n,t){return s.userProfileResource.get({sectionId:l.section.id,nolimit:!0}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})}):null}).then(function(e){var n=e&&e.rows?e.rows:[];return l.allowedItems=_.map(n,function(e){return _.find(l.items,{id:o.hasRole("admin")||l.section.autoAssociation?e.id:e.resourceId})}),l.items.forEach(function(e){var n=_.find(l.allowedItems,{id:e.id});o.hasRole("admin")?e.isValid=!0:e.isValid=void 0!==n}),a(function(n,t){return s.chatQueue.getTeams({id:l.chatQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})})}).then(function(e){var n=e&&e.rows?e.rows:[];l.selectedItems=_.map(n,function(e){var n=_.find(l.items,{id:e.id});return n.penalty=e.TeamVoiceQueue?"penalty "+e.TeamVoiceQueue.penalty:"",n}),l.startingSelectedItems=angular.copy(l.selectedItems),l.dualMultiselectOptions.selectedItems=l.selectedItems,l.dualMultiselectOptions.items=_.differenceBy(l.allowedItems,l.dualMultiselectOptions.selectedItems,"id"),t()}).catch(function(e){n(e)})})}l.currentUser=o.getCurrentUser(),l.chatQueue=n,l.crudPermissions=r,l.items=[],l.allowedItems=[],l.selectedItems=[],l.startingAllowedItems=[],l.startingSelectedItems=[],l.pendingChanges=!1,l.dualMultiselectOptions={allowedItems:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:t.instant("CHAT.ALL_TEAMS"),labelSelected:t.instant("CHAT.SELECTED_TEAMS"),transferCallback:function(e,n){var t=_.xorBy(l.startingSelectedItems,l.selectedItems,"id");l.pendingChanges=!_.isEmpty(t)}},l.onInit=function(){return o.hasRole("admin")?d().catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_TEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})}):a(function(t,n){s.userProfileSection.get({userProfileId:l.currentUser.userProfileId,name:"Teams"}).$promise.then(function(e){var n=e&&e.rows?e.rows[0]:null;t(n)}).catch(function(e){n(e)})}).then(function(e){return l.section=e,d()}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_TEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})},l.saveTeams=function(){var e=_.differenceBy(l.startingSelectedItems,l.selectedItems,"id"),n=_.differenceBy(l.selectedItems,l.startingSelectedItems,"id");return(t=e,a(function(e,n){_.isEmpty(t)?e():s.chatQueue.removeTeams({id:l.chatQueue.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})})).then(function(){return t=n,a(function(e,n){_.isEmpty(t)?e():s.chatQueue.addTeams({id:l.chatQueue.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})});var t}).then(function(){l.pendingChanges=!1,l.startingAllowedItems=angular.copy(l.allowedItems),l.startingSelectedItems=angular.copy(l.selectedItems),i.success({title:"SUCCESS",msg:"Teams association has been updated!"})}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:LISTS_ASSOCIATION",msg:e.status?JSON.stringify(e.data):e.toString()})});var t},l.closeDialog=function(){e.hide()}}e.$inject=["$mdDialog","$q","toasty","api","chatQueue","$translate","Auth","crudPermissions"],angular.module("app.chat").controller("ChatQueueteamaddController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c,m){var u=this;u.currentUser=d.getCurrentUser(),u.license=s,u.setting=o,u.passwordPattern=u.setting.securePassword?/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/:"",u.location=n.protocol()+"://"+n.host(),u.chatQueue=c||e.params.chatQueue||{},u.userProfileSection=m&&1==m.count?m.rows[0]:null,u.crudPermissions=d.parseCrudPermissions(u.userProfileSection?u.userProfileSection.crudPermissions:null),u.hasModulePermissions={},u.selectedTab=e.params.tab||0,u.teamadddialog=function(e,n){t.show({controller:"ChatQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/edit/teamadd/teamadd.html",parent:angular.element(a.body),targetEvent:n,clickOutsideToClose:!0,locals:{chatQueue:e,chatQueues:u.chatQueues?u.chatQueues.rows:[],crudPermissions:u.crudPermissions}})},u.agentadddialog=function(e,n){t.show({controller:"ChatQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/edit/agentadd/agentadd.html",parent:angular.element(a.body),targetEvent:n,clickOutsideToClose:!0,locals:{chatQueue:e,chatQueues:u.chatQueues?u.chatQueues.rows:[],crudPermissions:u.crudPermissions,realtime:!1}})},u.alert=l.info,u.gotoChatQueues=function(){e.go("app.chat.chatQueues",{},{reload:"app.chat.chatQueues"})},u.saveChatQueue=function(){r.chatQueue.update({id:u.chatQueue.id},u.chatQueue).$promise.then(function(){l.success({title:"ChatQueue updated!",msg:u.chatQueue.name?u.chatQueue.name+" has been updated!":""})}).catch(function(e){l.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}}e.$inject=["$state","$location","$mdDialog","$document","$translate","license","setting","api","toasty","Auth","chatQueue","userProfileSection"],angular.module("app.chat").controller("ChatQueueController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c,m,u,p,g,v,h){var f=this;f.license=v,f.setting=h,f.currentUser=g.getCurrentUser(),f.chatWebsites=l||{count:0,rows:[]},f.userProfile=d,f.userProfileSection=c&&1==c.count?c.rows[0]:null,f.crudPermissions=g.parseCrudPermissions(f.userProfileSection?f.userProfileSection.crudPermissions:null),f.table="chatWebsites",f.listOrder="",f.listOrderAsc=null,f.selectedChatWebsites=[],f.query={fields:"createdAt,updatedAt,id,token,agentIdentifier,customerAlias,messageFontSize,name,key,address,remote,ListId,fidelity,timeout,agentAlias,closingQuestion,formSubmitSuccessMessage,formSubmitFailureMessage,color,color_focus,color_button,textColor,textButtonColor,backgroundColor,fontSize,header_shape,showAgentAvatar,showCustomerAvatar,alignment,verticalAlignment,labelText,messagesAlignment,defaultTitle,animation,defaultWhiteLabel,whiteLabel,defaultLogo,conditionAgreement,autoclose,enableUnmanagedNote,unmanagedMessage,skipUnmanaged,sendUnmanaged,enableCustomerWriting,waitingTitle,waitingMessage,closingMessage,noteTitle,placeholderMessage,skipMessageButton,enableRating,ratingType,ratingStarsNumber,enableFeedback,feedbackTitle,forwardTranscript,forwardTranscriptMessage,closingMessageButton,download_transcript,enableCustomerAttachment,enableSendButton,enableCustomerCheckmarks,systemAlias,enquiry_enable,enquiry_forwarding,enquiry_forwarding_address,name_title,username_placeholder,email_title,email_placeholder,header_online,hideWhenOffline,header_offline,start_chat_button,offline_chat_button,offlineMessageSubject,offlineMessageBody,offline_message,message_title,enquiry_message_placeholder,enquiry_button,rating_message,rating_send,rating_skip,onlineForm,offlineForm,mapKey,mapKeyOffline,forwardOffline,MailAccountId,openNewInteraction,forwardOfflineAddress,subjectOffline,IntervalId,timezone,waitForTheAssignedAgent,mandatoryDisposition,mandatoryDispositionPauseId,description,notificationSound,notificationShake,notificationTemplate,queueTransfer,queueTransferTimeout,agentTransfer,agentTransferTimeout,vidaooEscalation,vidaooApiKey,vidaooTopic,vidaooNote,vidaooMetadata",sort:"-updatedAt",limit:10,page:1},f.arrayagentIdentifier=_.keyBy([{option:"WebsiteAlias",value:"'website_alias'"},{option:"AgentAlias",value:"'agent_alias'"},{option:"AgentFullname",value:"'agent_fullname'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.arrayheader_shape=_.keyBy([{option:"Rounded",value:"'rounded'"},{option:"Squared",value:"'squared'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.arrayalignment=_.keyBy([{option:"bottom_right",value:"'bottom_right'"},{option:"right",value:"'right'"},{option:"left",value:"'left'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.arraymessagesAlignment=_.keyBy([{option:"alternate",value:"'alternate'"},{option:"centered",value:"'centered'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.arrayratingType=_.keyBy([{option:"Star",value:"'star'"},{option:"Thumb",value:"'thumb'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),f.editstate=function(e,n){t.go("app.chat.chatWebsites.edit",{id:e.id,chatWebsite:e,crudPermissions:f.crudPermissions})},f.interactionsgoto=function(e,n){t.go("app.chat.chatWebsites.edit",{id:e.id,tab:10})},f.offlinemessagesgoto=function(e,n){t.go("app.chat.chatWebsites.edit",{id:e.id,tab:11})},f.agentadddialog=function(e,n){i.show({controller:"ChatWebsiteagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/agentadd/agentadd.html",parent:angular.element(s.body),targetEvent:n,clickOutsideToClose:!0,locals:{chatWebsite:e,chatWebsites:f.chatWebsites?f.chatWebsites.rows:[],crudPermissions:f.crudPermissions,realtime:!1}})},f.deleteconfirm=function(e,n){var t=i.confirm().title("Are you sure want to delete the "+_.startCase("chatWebsite")+"?").htmlContent(""+(e.name||"chatWebsite")+" will be deleted.").ariaLabel("delete chatWebsite").targetEvent(n).ok("OK").cancel("CANCEL");i.show(t).then(function(){y(e)},function(){console.log("CANCEL")})},f.success=E,f.getChatWebsites=function(){f.query.offset=(f.query.page-1)*f.query.limit,g.hasRole("admin")?f.promise=m.chatWebsite.get(f.query,E).$promise:(f.query.id=f.userProfile.id,f.query.section="ChatWebsites",f.promise=m.userProfile.getResources(f.query,E).$promise)},f.createOrEditChatWebsite=function(e,n){i.show({controller:"CreateOrEditChatWebsiteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/create/dialog.html",parent:angular.element(s.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:n,chatWebsites:f.chatWebsites.rows,license:f.license,setting:f.setting,crudPermissions:f.crudPermissions}})},f.deleteChatWebsite=y,f.exportSelectedChatWebsites=function(){var e=angular.copy(f.selectedChatWebsites);return f.selectedChatWebsites=[],e},f.deleteSelectedChatWebsites=function(e){var n=i.confirm().title("Are you sure want to delete the selected chatWebsites?").htmlContent(""+f.selectedChatWebsites.length+" selected will be deleted.").ariaLabel("delete ChatWebsites").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){f.selectedChatWebsites.forEach(function(e){y(e)}),f.selectedChatWebsites=[]})},f.deselectChatWebsites=function(){f.selectedChatWebsites=[]},f.selectAllChatWebsites=function(){f.selectedChatWebsites=f.chatWebsites.rows},g.hasRole("admin")?m.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){f.lists=e.rows||[]}).catch(function(e){p.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_LISTS",msg:e.data?JSON.stringify(e.data):e.toString()})}):m.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){f.lists=e.rows||[]}).then(function(){return m.userProfileSection.get({userProfileId:f.currentUser.userProfileId,sectionId:301}).$promise}).then(function(e){var n=e&&e.rows?e.rows[0]:null;if(n){if(!n.autoAssociation)return m.userProfileResource.get({sectionId:n.id}).$promise.then(function(e){var n=_.map(e.rows,function(e){return _.find(f.lists,{id:e.resourceId})}),t=null;if(f.chatWebsite&&(t=_.find(f.lists,{id:Number(f.chatWebsite.ListId)})),t&&!_.some(n,["id",t.id])){var a=_.find(f.lists,{id:t.id});a.canSelect=!1,n.push(a)}f.lists=n})}else{var t=[],a=null;f.chatWebsite&&(a=_.find(f.lists,{id:Number(f.chatWebsite.ListId)}));for(var i=0;i"+e.app+" will be deleted.").ariaLabel("delete application").targetEvent(t).ok("OK").cancel("CANCEL");i.show(a).then(function(){r.chatWebsiteApps.rows.splice(n,1),l()},function(){console.log("CANCEL")})},r.getChatWebsiteApps=function(){r.promise=o.chatWebsite.getApplications(r.query,t).$promise},r.editChatWebsiteApp=n,r.editInterval=function(e,n){if(r.chatWebsiteApps.rows.length){var t=r.chatWebsiteApps.rows[n]?r.chatWebsiteApps.rows[n]:r.chatWebsiteApps.rows[0];i.show({controller:"EditChatWebsiteAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/apps/interval/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:{interval:t.interval,IntervalId:t.IntervalId,application:!0},intervals:[],crudPermissions:r.crudPermissions}}).then(function(e){e&&(t.interval=e.interval||"*,*,*,*",t.IntervalId=e.IntervalId||null,l())})}},r.deleteChatWebsiteApp=function(e){_.remove(r.chatWebsiteApps.rows,{id:e.id}),l(),s.success({title:"App deleted!",msg:e.app?e.app+" has been deleted!":""})},r.deleteSelectedChatWebsiteApps=function(e){var n=i.confirm().title("Are you sure want to delete the selected applications?").htmlContent(""+r.selectedChatWebsiteApps.length+" selected will be deleted.").ariaLabel("delete applications").targetEvent(e).ok("OK").cancel("CANCEL");i.show(n).then(function(){r.selectedChatWebsiteApps.forEach(function(e){_.remove(r.chatWebsiteApps.rows,{id:e.id})}),r.selectedChatWebsiteApps=[],l()})},r.rewriteRouting=l,r.getIntervals=function(){return o.interval.get({fields:"id,interval,IntervalId"}).$promise.then(function(e){r.intervals=e}).catch(function(e){console.error(e)})}}e.$inject=["api","$mdDialog","$document","toasty","Auth"],angular.module("app.chat").controller("ChatWebsiteActionsController",e)}(),function(){"use strict";function e(e,a,i,s,n,t,o,r,l,d){var c=this;function m(){return a(function(t,n){return a(function(n,t){return s.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})}).then(function(e){return c.items=e.rows?e.rows:[],l.hasRole("admin")?e:c.section?c.section.autoAssociation?e:a(function(n,t){return s.userProfileResource.get({sectionId:c.section.id,nolimit:!0}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})}):null}).then(function(e){var n=e&&e.rows?e.rows:[];return c.allowedItems=_.map(n,function(e){return _.find(c.items,{id:l.hasRole("admin")||c.section.autoAssociation?e.id:e.resourceId})}),c.startingAllowedItems=angular.copy(c.allowedItems),c.items.forEach(function(e){var n=_.find(c.allowedItems,{id:e.id});l.hasRole("admin")?e.isValid=!0:e.isValid=void 0!==n}),a(function(n,t){return s.chatWebsite.getAgents({id:c.chatWebsite.id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){n(e)}).catch(function(e){t(e)})})}).then(function(e){var n=e&&e.rows?e.rows:[];c.selectedItems=_.map(n,function(e){var n=_.find(c.items,{id:e.id});return n.penalty=e.UserChatWebsite?"penalty "+e.UserChatWebsite.penalty:"",n.internal=e.hasOwnProperty("internal")?"<"+e.internal+">":"",n}),c.startingSelectedItems=angular.copy(c.selectedItems),c.dualMultiselectOptions.selectedItems=c.selectedItems,c.dualMultiselectOptions.items=_.differenceBy(c.allowedItems,c.dualMultiselectOptions.selectedItems,"id"),t()}).catch(function(e){n(e)})})}c.currentUser=l.getCurrentUser(),c.chatWebsite=n,c.crudPermissions=d,c.realtime=o,c.items=[],c.allowedItems=[],c.selectedItems=[],c.startingAllowedItems=[],c.startingSelectedItems=[],c.pendingChanges=!1,c.onInit=function(){return l.hasRole("admin")?m().catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_AGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})}):a(function(t,n){s.userProfileSection.get({userProfileId:c.currentUser.userProfileId,name:"Agents"}).$promise.then(function(e){var n=e&&e.rows?e.rows[0]:null;t(n)}).catch(function(e){n(e)})}).then(function(e){return c.section=e,m()}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GET_AGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})},c.saveAgents=function(){var e=_.differenceBy(c.startingSelectedItems,c.selectedItems,"id"),n=_.differenceBy(c.selectedItems,c.startingSelectedItems,"id");return(t=e,a(function(e,n){_.isEmpty(t)?e():s.chatWebsite.removeAgents({id:c.chatWebsite.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})})).then(function(){return t=n,a(function(e,n){_.isEmpty(t)?e():s.chatWebsite.addAgents({id:c.chatWebsite.id,ids:_.map(t,"id")}).$promise.then(function(){e()}).catch(function(e){n(e)})});var t}).then(function(){c.pendingChanges=!1,c.startingAllowedItems=angular.copy(c.allowedItems),c.startingSelectedItems=angular.copy(c.selectedItems),i.success({title:"SUCCESS",msg:"Agents association has been updated!"})}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:LISTS_ASSOCIATION",msg:e.status?JSON.stringify(e.data):e.toString()})});var t},c.closeDialog=function(){e.hide()},c.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"fullname",line2:["name","internal"],line3:"",labelAll:r.instant("CHAT.ALL_AGENTS"),labelSelected:r.instant("CHAT.SELECTED_AGENTS"),transferCallback:function(e,n){var t=_.xorBy(c.startingSelectedItems,c.selectedItems,"id");c.pendingChanges=!_.isEmpty(t)}}}e.$inject=["$mdDialog","$q","toasty","api","chatWebsite","chatWebsites","realtime","$translate","Auth","crudPermissions"],angular.module("app.chat").controller("ChatWebsiteagentaddController",e)}(),function(){"use strict";function e(e,a){var i=this;i.chatWebsite={},i.crudPermissions,i.ngFlowOptions={singleFile:!0,maxChunkRetries:1,chunkSize:8388608,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3,allowDuplicateUploads:!0},i.ngFlow={flow:{}},i.dropping=!1,i.fileAdded=function(e){var n=["png","jpg"];if(!_.includes(n,e.getExtension()))return a.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported extension: "+n.join()}),!1;if(8388608"+(e.name||e.id&&_.upperFirst("chatCannedAnswer #")+e.id||"chatCannedAnswer")+" will be deleted.").ariaLabel("delete chatCannedAnswer").targetEvent(n).ok("OK").cancel("CANCEL");o.show(t).then(function(){g(e)},function(){console.log("CANCEL")})},m.success=u,m.getChatWebsiteChatCannedAnswers=p,m.createOrEditChatWebsiteChatCannedAnswer=function(e,n){o.show({controller:"CreateOrEditChatCannedAnswerDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/chatCannedAnswers/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:m.chatWebsite,chatCannedAnswer:n,chatCannedAnswers:m.chatWebsiteChatCannedAnswers.rows,license:null,setting:null,crudPermissions:m.crudPermissions}})},m.exportSelectedChatWebsiteChatCannedAnswers=function(){var e=angular.copy(m.selectedChatWebsiteChatCannedAnswers);return m.selectedChatWebsiteChatCannedAnswers=[],e},m.deleteChatWebsiteChatCannedAnswer=g,m.deleteSelectedChatWebsiteChatCannedAnswers=function(e){var n=o.confirm().title("Are you sure want to delete the selected chatCannedAnswers?").htmlContent(""+m.selectedChatWebsiteChatCannedAnswers.length+" selected will be deleted.").ariaLabel("delete chatCannedAnswers").targetEvent(e).ok("OK").cancel("CANCEL");o.show(n).then(function(){m.selectedChatWebsiteChatCannedAnswers.forEach(function(e){g(e)}),m.selectedChatWebsiteChatCannedAnswers=[]})}}e.$inject=["$cookies","$scope","$state","$q","$translate","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteChatCannedAnswersController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c,m,u,p){var g=this;function v(e){a.hide(e)}g.currentUser=c.getCurrentUser(),g.errors=[],g.setting=u,g.license=m,g.crudPermissions=p,g.hasModulePermissions={},g.passwordPattern=g.setting&&g.setting.securePassword?/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/:"",g.title="CHAT.EDIT_CHATCANNEDANSWER",g.chatCannedAnswer=angular.copy(l),g.chatCannedAnswers=r,g.newChatCannedAnswer=!1,g.chatCannedAnswer||(g.chatCannedAnswer={},g.title="CHAT.NEW_CHATCANNEDANSWER",g.newChatCannedAnswer=!0),n.params.id&&(g.chatCannedAnswer.ChatWebsiteId=n.params.id),g.addNewChatCannedAnswer=function(){g.errors=[],d.cannedAnswer.save(g.chatCannedAnswer).$promise.then(function(e){g.chatCannedAnswers.unshift(e.toJSON()),o.success({title:"ChatCannedAnswer properly created",msg:g.chatCannedAnswer.name?g.chatCannedAnswer.name+" has been created!":""}),v(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){g.errors=e.data.errors||[{message:e.toString(),type:"api.cannedAnswer.save"}];for(var n=0;n":i.instant("DASHBOARDS.NOT_ASSIGNED")}m.currentUser=c.getCurrentUser(),m.chatWebsite={},m.chatWebsiteInteractions={count:0,rows:[]},m.selectedChatWebsiteInteractions=[],m.crudPermissions,m.query={read:"null",closed:"null",sort:"-createdAt",includeAll:"true",limit:10,page:1},m.init=function(e,n,t){m.chatWebsite=e,m.crudPermissions=void 0!==n?n:{readOnly:!0,canEdit:!1,canDelete:!1},m.userProfile=t,m.query.ChatWebsiteId=m.chatWebsite.id,m.advancedSearch={fields:[{name:"Id",column:"id",type:"number"},{name:"Contact",column:"Contact",type:"autocomplete",options:{searchFields:["firstName","lastName","email"],route:{model:"cmContact",action:"get",params:{fields:"id,firstName,lastName,email",Contact:"@autocomplete",nolimit:!0}},extraOperators:["$substring"],excludedOperators:["$ne"]}},{name:"Body",column:"body",type:"text",options:{excludedOperators:["$eq","$ne"]}},{name:"Status",column:"closed",type:"select",values:[{id:0,translate:"DASHBOARDS.OPENED"},{id:1,translate:"DASHBOARDS.CLOSED"}],options:{excludedOperators:["$ne"]}},{name:"Customer Ip",column:"customerIp",type:"text",options:{excludedOperators:["$eq","$ne","$startsWith","$endsWith"]}},{name:"Agent",column:"User",type:"autocomplete",options:{table:"i",route:{model:"user",action:"get",params:{role:"agent",fields:"id,name,fullname",nolimit:!0}},searchFields:["fullname","name"],extraOperators:["$substring"],excludedOperators:["$ne"]}},{name:"Tags",column:"Tag",type:"multiselect",options:{route:{model:"tag",action:"get",params:{nolimit:!0}},excludedOperators:["$notIn"]}},{name:"Start Date",column:"createdAt",type:"date",options:{excludedOperators:["$ne"]}},{name:"Read",column:"unreadMessages",type:"select",values:[{id:1,translate:"DASHBOARDS.READ"},{id:0,translate:"DASHBOARDS.UNREAD"}],options:{excludedOperators:["$ne"]}},{name:"Disposition",column:"disposition",type:"multiselect",options:{routes:u("first")}},{name:"Second Disposition",column:"secondDisposition",type:"multiselect",options:{routes:u("second")}},{name:"Third Disposition",column:"thirdDisposition",type:"multiselect",options:{routes:u("third")}}]},d.tag.get({sort:"name"}).$promise.then(function(e){m.tags=e||{count:0,rows:[]}}).then(function(){m.quickFilters=[{name:"Start Date",key:"createdAt",type:"date",label:"DASHBOARDS.SELECT_DATE"},{name:"Messages",key:"read",type:"select",label:"DASHBOARDS.SELECT_READ_UNREAD",customOptions:[{value:0,translate:"DASHBOARDS.UNREAD"},{value:1,translate:"DASHBOARDS.READ"},{value:null,translate:"DASHBOARDS.ALL"}]},{name:"Status",key:"closed",type:"select",label:"DASHBOARDS.SELECT_STATUS",customOptions:[{value:0,translate:"DASHBOARDS.OPENED"},{value:1,translate:"DASHBOARDS.CLOSED"},{value:null,translate:"DASHBOARDS.ALL"}]},{name:"Agent",key:"UserId",type:"select",label:"DASHBOARDS.SELECT_AGENT",customOptions:[{value:"null",translate:"DASHBOARDS.NOT_ASSIGNED"},{value:void 0,translate:"DASHBOARDS.ALL"}]},{name:"Tag",key:"tag",type:"multiselect",label:"DASHBOARDS.SELECT_TAG",options:m.tags.rows,placeholder:"DASHBOARDS.TAGS"}]})},m.deleteConfirm=function(e,n){var t=o.confirm().title("Are you sure want to delete the interaction?").htmlContent(""+(e.name||e.id&&_.upperFirst("interaction #")+e.id||"interaction")+" will be deleted.").ariaLabel("delete interaction").targetEvent(n).ok("OK").cancel("CANCEL");o.show(t).then(function(){v(e)},function(){console.log("CANCEL")})},m.chatInteractionDownload=function(s,e,n){return d.chatInteraction.download({id:s.id,exists:!0,attachments:n}).$promise.then(function(e){var n=[e.buffer],t="interaction"+s.id,a=new Blob(n,{type:e.type});t="chat-interaction"+s.id+".zip";var i=window.document.createElement("a");i.setAttribute("href",URL.createObjectURL(a)),i.setAttribute("download",t),document.body.appendChild(i),i.click()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length)for(var n=0;n"+m.selectedChatWebsiteInteractions.length+" selected will be deleted.").ariaLabel("delete interactions").targetEvent(e).ok("OK").cancel("CANCEL");o.show(n).then(function(){m.selectedChatWebsiteInteractions.forEach(function(e){v(e)}),m.selectedChatWebsiteInteractions=[]})}}e.$inject=["$cookies","$scope","$state","$q","$translate","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteInteractionsController",e)}(),function(){"use strict";function e(e,a){var i=this;i.chatWebsite={},i.crudPermissions,i.ngFlowOptions={singleFile:!0,maxChunkRetries:1,chunkSize:8388608,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3,allowDuplicateUploads:!0},i.ngFlow={flow:{}},i.dropping=!1,i.fileAdded=function(e){var n=["png","jpg"];if(!_.includes(n,e.getExtension()))return a.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported extension: "+n.join()}),!1;if(8388608"+(e.name||e.id&&_.upperFirst("offlineMessage #")+e.id||"offlineMessage")+" will be deleted.").ariaLabel("delete offlineMessage").targetEvent(n).ok("OK").cancel("CANCEL");o.show(t).then(function(){g(e)},function(){console.log("CANCEL")})},m.success=u,m.getChatWebsiteOfflineMessages=p,m.createOrEditChatWebsiteOfflineMessage=function(e,n){o.show({controller:"CreateOrEditOfflineMessageDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/offlineMessages/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:m.chatWebsite,offlineMessage:n,offlineMessages:m.chatWebsiteOfflineMessages.rows,license:null,setting:null,crudPermissions:m.crudPermissions}})},m.showOfflineMessageChatWebsiteOfflineMessage=function(e,t){o.show({controller:"ShowOfflineMessageOfflineMessageDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/offlineMessages/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,resolve:{message:["apiResolver","$stateParams",function(e,n){return e.resolve("chatOfflineMessage@get",{fields:"id,body",id:t.id})}],attachments:["apiResolver","$stateParams",function(e,n){return e.resolve("attachment@get",{fields:"id,name",ChatOfflineMessageId:t.id})}]}})},m.exportSelectedChatWebsiteOfflineMessages=function(){var e=angular.copy(m.selectedChatWebsiteOfflineMessages);return m.selectedChatWebsiteOfflineMessages=[],e},m.deleteChatWebsiteOfflineMessage=g,m.deleteSelectedChatWebsiteOfflineMessages=function(e){var n=o.confirm().title("Are you sure want to delete the selected offlineMessages?").htmlContent(""+m.selectedChatWebsiteOfflineMessages.length+" selected will be deleted.").ariaLabel("delete offlineMessages").targetEvent(e).ok("OK").cancel("CANCEL");o.show(n).then(function(){m.selectedChatWebsiteOfflineMessages.forEach(function(e){g(e)}),m.selectedChatWebsiteOfflineMessages=[]})}}e.$inject=["$cookies","$scope","$state","$q","$translate","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteOfflineMessagesController",e)}(),function(){"use strict";function e(n,e,t,a,i){var s=this;s.title="CHAT.OFFLINE_MESSAGE",s.message=a,s.attachments=i.rows,s.closeDialog=function(e){n.hide(e)},s.download=function(i){return e.attachment.download({id:i.id}).$promise.then(function(e){if(e){var n=new Blob([e.buffer],{type:e.type}),t=document.createElement("a"),a=window.URL.createObjectURL(n);t.href=a,t.target="_self",t.download=i.name,document.body.appendChild(t),t.click(),setTimeout(function(){document.body.removeChild(t),window.URL.revokeObjectURL(a)},100)}}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"ATTACHMENTS:GET",msg:e.data?JSON.stringify(e.data):e.toString()})})},s.isHtml=_.isNil(s.message.body.match(/\s?|(]*>|]*>|]+>)+/i))}e.$inject=["$mdDialog","api","toasty","message","attachments"],angular.module("app.chat").controller("ShowOfflineMessageOfflineMessageDialogController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c){var m=this;function u(e){m.chatWebsiteProactiveActions=e||{count:0,rows:[]}}function p(){m.query.offset=(m.query.page-1)*m.query.limit,m.promise=d.chatWebsite.getProactiveActions(m.query,u).$promise}function g(e){d.chatProactiveAction.delete({id:e.id}).$promise.then(function(){_.remove(m.chatWebsiteProactiveActions.rows,{id:e.id}),m.chatWebsiteProactiveActions.count-=1,m.chatWebsiteProactiveActions.rows.length||p(),l.success({title:"ChatProactiveAction deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){m.errors=e.data.errors||[{message:e.toString(),type:"SYSTEM:GETchatWebsite"}];for(var n=0;n"+(e.name||e.id&&_.upperFirst("chatProactiveAction #")+e.id||"chatProactiveAction")+" will be deleted.").ariaLabel("delete chatProactiveAction").targetEvent(n).ok("OK").cancel("CANCEL");o.show(t).then(function(){g(e)},function(){console.log("CANCEL")})},m.success=u,m.getChatWebsiteProactiveActions=p,m.createOrEditChatWebsiteChatProactiveAction=function(e,n){o.show({controller:"CreateOrEditChatProactiveActionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/proactive/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:m.chatWebsite,chatProactiveAction:n,proactive:m.chatWebsiteProactiveActions.rows,license:null,setting:null,crudPermissions:m.crudPermissions}})},m.exportSelectedChatWebsiteProactiveActions=function(){var e=angular.copy(m.selectedChatWebsiteProactiveActions);return m.selectedChatWebsiteProactiveActions=[],e},m.deleteChatWebsiteChatProactiveAction=g,m.deleteSelectedChatWebsiteProactiveActions=function(e){var n=o.confirm().title("Are you sure want to delete the selected proactive?").htmlContent(""+m.selectedChatWebsiteProactiveActions.length+" selected will be deleted.").ariaLabel("delete proactive").targetEvent(e).ok("OK").cancel("CANCEL");o.show(n).then(function(){m.selectedChatWebsiteProactiveActions.forEach(function(e){g(e)}),m.selectedChatWebsiteProactiveActions=[]})}}e.$inject=["$cookies","$scope","$state","$q","$translate","$timeout","$mdDialog","$document","toasty","api","Auth"],angular.module("app.chat").controller("ChatWebsiteProactiveActionsController",e)}(),function(){"use strict";function e(e,n,t,a,i,s,o,r,l,d,c,m,u,p){var g=this;function v(e){a.hide(e)}g.currentUser=c.getCurrentUser(),g.errors=[],g.setting=u,g.license=m,g.crudPermissions=p,g.hasModulePermissions={},g.passwordPattern=g.setting&&g.setting.securePassword?/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/:"",g.title="CHAT.EDIT_CHATPROACTIVEACTION",g.chatProactiveAction=angular.copy(l),g.proactive=r,g.newChatProactiveAction=!1,g.chatProactiveAction||(g.chatProactiveAction={type:"mouseOver"},g.title="CHAT.NEW_CHATPROACTIVEACTION",g.newChatProactiveAction=!0),n.params.id&&(g.chatProactiveAction.ChatWebsiteId=n.params.id),g.addNewChatProactiveAction=function(){g.errors=[],d.chatProactiveAction.save(g.chatProactiveAction).$promise.then(function(e){g.proactive.unshift(e.toJSON()),o.success({title:"ChatProactiveAction properly created",msg:g.chatProactiveAction.name?g.chatProactiveAction.name+" has been created!":""}),v(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){g.errors=e.data.errors||[{message:e.toString(),type:"api.chatProactiveAction.save"}];for(var n=0;n<\/script>',n.end="\n\x3c!-- START Motion Chat Script --\x3e"},n.info={},e.$watch("vm_ac.chatWebsite.remote",function(e){n.script='\n